PageSourceSearch

https://www.versely.studio/_next/static/chunks/1916.006b6ceba9c2aaac.js

js versely.studio collected 2026-09-24 13:30:22 UTC 21,281 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1916],{71916:(e,r,t)=>{t.r(r),t.d(r,{default:()=>g});var a=t(95155),n=t(12115),o=t(87444),l=t(77716);let s="onnx-community/Kokoro-82M-v1.0-ONNX",i=null,d=null;function c(e){if(null==e?void 0:e.aborted)throw new DOMException("TTS aborted.","AbortError")}function u(){return"undefined"!=typeof navigator&&!!navigator.gpu}async function m(e){let{onProgress:r,signal:a}=null!=e?e:{};if(c(a),i&&d){null==r||r({stage:"ready",fraction:.35,message:"Reusing cached Kokoro model in this browser…"});let e=await i;return c(a),{tts:e,engine:d}}null==r||r({stage:"loading",fraction:.05,message:"Loading Kokoro TTS on this device…"});let n=u(),o=n?"WebGPU":"WASM";d=o,null==r||r({stage:"downloading",fraction:.08,message:"First run may download Kokoro ONNX (~80 to 100 MB q8 class, larger on WebGPU fp32) into this browser cache from Hugging Face…"}),i=(async()=>{let e=await Promise.all([t.e(4803),t.e(4126),t.e(2373),t.e(5376),t.e(3928),t.e(9706)]).then(t.bind(t,19706));c(a);let o=e.KokoroTTS;if(!(null==o?void 0:o.from_pretrained))throw Error("kokoro-js did not export KokoroTTS. Update the package or check transpilePackages.");return await o.from_pretrained(s,{dtype:n?"fp32":"q8",device:n?"webgpu":"wasm",progress_callback:e=>{var t;if(null==a?void 0:a.aborted)return;let n=null!=(t=null==e?void 0:e.status)?t:"";if("progress"===n||"download"===n||"downloading"===n){let t="number"==typeof e.progress?e.progress:0,a=.08+.27*Math.min(1,Math.max(0,t>1?t/100:t));null==r||r({stage:"downloading",fraction:a,message:e.file?"Downloading ".concat(e.file,"…"):"Downloading Kokoro model assets (first run only)…"})}else("done"===n||"ready"===n)&&(null==r||r({stage:"loading",fraction:.36,message:"Model ready in this browser…"}))}})})();try{let e=await i;return c(a),null==r||r({stage:"ready",fraction:.4,message:"Kokoro ready (".concat(o,")…")}),{tts:e,engine:o}}catch(t){if(i=null,d=null,b(t))throw t;let e=t instanceof Error?t.message:String(t);if(n){null==r||r({stage:"loading",fraction:.1,message:"WebGPU load failed; falling back to WASM…"});try{return await f({onProgress:r,signal:a})}catch(r){if(b(r))throw r;let e=r instanceof Error?r.message:String(r);if(/WebAssembly|wasm|SharedArrayBuffer|crossOriginIsolated/i.test(e))throw Error("This browser could not start the on-device TTS runtime (WASM / SharedArrayBuffer). Try Chrome or Edge on desktop, or check that the page is not blocking required headers.");throw Error(e||"Could not load Kokoro TTS in this browser. Try a recent Chrome, Edge, or Firefox.")}}if(/WebAssembly|wasm|SharedArrayBuffer|crossOriginIsolated/i.test(e))throw Error("This browser could not start the on-device TTS runtime (WASM / SharedArrayBuffer). Try Chrome or Edge on desktop, or check that the page is not blocking required headers.");throw Error(e||"Could not load Kokoro TTS in this browser. Try a recent Chrome, Edge, or Firefox.")}}async function f(e){let{onProgress:r,signal:a}=e;c(a),d="WASM",i=(async()=>{let e=await Promise.all([t.e(4803),t.e(4126),t.e(2373),t.e(5376),t.e(3928),t.e(9706)]).then(t.bind(t,19706));c(a);let n=e.KokoroTTS;return await n.from_pretrained(s,{dtype:"q8",device:"wasm",progress_callback:e=>{var t;if(null==a?void 0:a.aborted)return;let n=null!=(t=null==e?void 0:e.status)?t:"";if("progress"===n||"download"===n||"downloading"===n){let t="number"==typeof e.progress?e.progress:0;null==r||r({stage:"downloading",fraction:.1+.25*Math.min(1,Math.max(0,t>1?t/100:t)),message:e.file?"Downloading ".concat(e.file,"…"):"Downloading Kokoro WASM assets…"})}}})})();try{let e=await i;return c(a),{tts:e,engine:"WASM"}}catch(e){throw i=null,d=null,e}}async function h(e,r,t){var a,n,o,l,s,i;let m,f,{voice:h,speed:p,signal:g,onProgress:x}=t,v=null!=(n=null!=(a=t.engine)?a:d)?n:u()?"WebGPU":"WASM";c(g);let y=r.trim();if(!y)throw Error("Enter some hook text to speak.");if(y.length>500)throw Error("Hook text is capped at ".concat(500," characters for this free tool. Shorten it and try again."));null==x||x({stage:"synthesizing",fraction:.45,message:"Synthesizing speech on your device…"});try{m=await e.generate(y,{voice:h,speed:(s=p,Number.isFinite(s)?Math.min(1.3,Math.max(.8,s)):1)})}catch(e){if(b(e))throw e;throw Error((e instanceof Error?e.message:String(e))||"Speech synthesis failed in this browser.")}c(g),null==x||x({stage:"encoding",fraction:.85,message:"Encoding WAV…"});let w=null!=(l=null!=(o=m.sampling_rate)?o:m.sample_rate)?l:24e3,k=(i=m).audio instanceof Float32Array?i.audio:i.data instanceof Float32Array?i.data:null,j=k&&w>0?k.length/w:0;if("function"==typeof m.toBlob)f=m.toBlob();else if("function"==typeof m.toWav)f=new Blob([m.toWav()],{type:"audio/wav"});else if(k)f=function(e,r){let t=2*e.length,a=new ArrayBuffer(44+t),n=new DataView(a),o=(e,r)=>{for(let t=0;t<r.length;t++)n.setUint8(e+t,r.charCodeAt(t))};o(0,"RIFF"),n.setUint32(4,36+t,!0),o(8,"WAVE"),o(12,"fmt "),n.setUint32(16,16,!0),n.setUint16(20,1,!0),n.setUint16(22,1,!0),n.setUint32(24,r,!0),n.setUint32(28,2*r,!0),n.setUint16(32,2,!0),n.setUint16(34,16,!0),o(36,"data"),n.setUint32(40,t,!0);let l=44;for(let r=0;r<e.length;r++){let t=Math.max(-32768,Math.min(32767,Math.round(32767*Math.max(-1,Math.min(1,e[r])))));n.setInt16(l,t,!0),l+=2}return new Blob([a],{type:"audio/wav"})}(k,w);else throw Error("Kokoro returned audio without samples and without a WAV encoder.");return c(g),null==x||x({stage:"encoding",fraction:1,message:"Done."}),{blob:f,sampleRate:w,durationSec:j>0?j:function(e,r){let t=Math.max(0,e.size-44);return r>0?t/(2*r):0}(f,w),engine:v}}function b(e){return e instanceof DOMException&&"AbortError"===e.name||e instanceof Error&&"AbortError"===e.name}let p=[{value:"af_heart",label:"US female \xb7 Heart"},{value:"af_bella",label:"US female \xb7 Bella"},{value:"af_nicole",label:"US female \xb7 Nicole"},{value:"af_sarah",label:"US female \xb7 Sarah"},{value:"af_nova",label:"US female \xb7 Nova"},{value:"am_michael",label:"US male \xb7 Michael"},{value:"am_fenrir",label:"US male \xb7 Fenrir"},{value:"am_puck",label:"US male \xb7 Puck"},{value:"bf_emma",label:"UK female \xb7 Emma"},{value:"bf_isabella",label:"UK female \xb7 Isabella"},{value:"bm_george",label:"UK male \xb7 George"},{value:"bm_fable",label:"UK male \xb7 Fable"}];
1function g(){let e=(0,n.useId)(),[r,t]=(0,n.useState)(""),[s,i]=(0,n.useState)("af_heart"),[d,c]=(0,n.useState)(1),[f,g]=(0,n.useState)(!1),[x,v]=(0,n.useState)(null),[y,w]=(0,n.useState)("Working on your device…"),[k,j]=(0,n.useState)(null),[N,S]=(0,n.useState)(null),[_,M]=(0,n.useState)(null),[U]=(0,n.useState)(()=>"undefined"!=typeof navigator&&u()),[T,A]=(0,n.useState)(null),[E,W]=(0,n.useState)(0),[C,P]=(0,n.useState)(0),F=(0,n.useRef)(null),K=(0,n.useRef)(null),R=(0,n.useRef)(null);function G(e){v(e.fraction),e.message&&w(e.message)}function I(){R.current&&(URL.revokeObjectURL(R.current),R.current=null),A(null),K.current=null,W(0),P(0)}async function O(){var e;let t=r.trim();if(!t)return void j("Paste a short hook first.");if(t.length>400)return void j("Hook text is limited to ".concat(400," characters. Shorten it for a snappy social hook."));null==(e=F.current)||e.abort();let a=new AbortController;F.current=a,g(!0),j(null),I(),v(.02),w("Starting on-device TTS…");try{let{tts:e,engine:r}=await m({onProgress:G,signal:a.signal});M(r);let n=await h(e,t,{voice:s,speed:d,signal:a.signal,onProgress:G,engine:r});if(a.signal.aborted)return;K.current=n.blob;let o=URL.createObjectURL(n.blob);R.current=o,A(o),W(n.durationSec),P(n.sampleRate),M(n.engine),v(1),w("Speech ready.")}catch(e){if(b(e))return void w("Cancelled.");j(e instanceof Error?e.message:"TTS failed."),I()}finally{F.current===a&&(F.current=null),g(!1),setTimeout(()=>v(null),500)}}(0,n.useEffect)(()=>{U||S("This browser will use the WASM path for Kokoro (WebGPU not available). First synthesize may be slower.")},[U]),(0,n.useEffect)(()=>()=>{var e;null==(e=F.current)||e.abort(),R.current&&URL.revokeObjectURL(R.current)},[]);let L=r.length,B=L>400,z=r.trim().length>0&&!B&&!f;return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsx)("p",{className:"rounded-lg border border-border bg-muted/30 p-3 text-sm text-muted-foreground",children:"Free on-device TTS for short social hooks. First run downloads the Kokoro ONNX model into this browser cache from Hugging Face (about 80 to 100 MB for the q8 WASM path; WebGPU fp32 is larger). Your text never leaves this device to Versely. Stock generic voices only. This is not a voice clone tool and not the paid Versely TTS credit path."}),(0,a.jsx)(o.xP,{children:(0,a.jsxs)("div",{className:"space-y-5",children:[(0,a.jsxs)(l.Nk,{label:"Hook text",hint:"".concat(L," / ").concat(400),children:[(0,a.jsx)("textarea",{id:e,value:r,maxLength:440,disabled:f,rows:4,placeholder:"Paste a scroll-stopping hook… Keep it short for Reels and Shorts.",onChange:e=>t(e.target.value),className:"w-full resize-y rounded-xl border border-border/80 bg-background/60 px-3 py-2.5 text-sm leading-relaxed text-foreground shadow-[inset_0_1px_0_rgba(255,255,255,0.04)] outline-none ring-primary/30 placeholder:text-muted-foreground/70 focus:border-primary/40 focus:ring-2 disabled:opacity-60"}),B?(0,a.jsxs)("p",{className:"text-xs text-destructive",children:["Soft limit is ",400," characters. Trim for a punchy hook."]}):(0,a.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Aimed at short hooks. Soft max ",400," characters."]})]}),(0,a.jsx)(l.Nk,{label:"Stock voice",hint:"Generic locale + gender labels. Not celebrity clones.",children:(0,a.jsx)("fieldset",{disabled:f,className:"min-w-0 border-0 p-0",children:(0,a.jsx)(l.JA,{"aria-label":"Stock voice",value:s,onChange:e=>i(e),options:p})})}),(0,a.jsx)(l.Nk,{label:"Speed",hint:"0.8 to 1.3",children:(0,a.jsx)("div",{className:f?"pointer-events-none opacity-60":void 0,children:(0,a.jsx)(l.k1,{label:"Speaking speed",value:d,min:.8,max:1.3,step:.05,onChange:c,format:e=>"".concat(e.toFixed(2),"x")})})}),(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsx)(l.r_,{disabled:!z,onClick:O,children:f?"Generating…":"Generate speech"}),f?(0,a.jsx)("button",{type:"button",onClick:function(){var e;null==(e=F.current)||e.abort(),F.current=null,g(!1),v(null),w("Cancelled.")},className:"rounded-xl border border-border px-4 py-2.5 text-sm font-semibold text-muted-foreground transition hover:border-foreground
1/40 hover:text-foreground",children:"Cancel"}):null,_?(0,a.jsx)("span",{className:"inline-flex items-center rounded-full border border-primary/25 bg-primary/10 px-2.5 py-1 text-[11px] font-semibold uppercase tracking-wide text-primary",children:_}):(0,a.jsx)("span",{className:"inline-flex items-center rounded-full border border-border/70 bg-muted/40 px-2.5 py-1 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:U?"WebGPU preferred":"WASM fallback"})]})]})}),f&&(0,a.jsx)(o.uM,{value:x,label:y||"Working on your device…"}),k&&(0,a.jsx)("p",{className:"rounded-lg border border-destructive/40 bg-destructive/5 p-3 text-sm",children:k}),N&&!k&&(0,a.jsx)("p",{className:"rounded-lg bg-muted/50 p-3 text-sm text-muted-foreground",children:N}),(0,a.jsx)(o.I8,{show:!!T,children:(0,a.jsxs)("div",{className:"rounded-2xl border border-primary/15 bg-gradient-to-br from-muted/20 via-background/40 to-muted/10 p-4 shadow-[inset_0_1px_0_rgba(255,255,255,0.04)]",children:[(0,a.jsxs)("div",{className:"mb-3 flex flex-wrap items-center justify-between gap-3",children:[(0,a.jsxs)("p",{className:"text-sm",children:["Preview \xb7 ",function(e){if(!Number.isFinite(e)||e<=0)return"0:00";let r=Math.floor(e/60),t=Math.floor(e%60);return"".concat(r,":").concat(String(t).padStart(2,"0"))}(E),C?" \xb7 ".concat(C," Hz"):"",_?" \xb7 ".concat(_):""," \xb7 WAV"]}),(0,a.jsx)("button",{type:"button",onClick:function(){let e=K.current;if(!e)return;let r=new Date().toISOString().slice(0,19).replace(/[:T]/g,"-");var t="versely-hook-tts-".concat(s,"-").concat(r,".wav");let a=URL.createObjectURL(e),n=document.createElement("a");n.href=a,n.download=t,n.rel="noopener",document.body.appendChild(n),n.click(),n.remove(),setTimeout(()=>URL.revokeObjectURL(a),2e3)},className:"rounded-md border border-border px-3 py-1.5 text-xs font-semibold hover:border-foreground
1/40",children:"Download WAV"})]}),(0,a.jsx)("audio",{src:null!=T?T:void 0,controls:!0,className:"w-full",preload:"metadata"}),(0,a.jsx)("p",{className:"mt-2 text-xs text-muted-foreground",children:"16-bit PCM WAV encoded in this browser. Re-run after changing voice or speed."})]})})]})}},77716:(e,r,t)=>{t.d(r,{qM:()=>h,iq:()=>b,Nk:()=>c,JA:()=>m,Iz:()=>u,k1:()=>f,r_:()=>p});var a=t(95155),n=t(12115),o=t(57249),l=t(80891),s=t(64269);let i=n.forwardRef((e,r)=>{let{className:t,...n}=e;return(0,a.jsxs)(l.bL,{ref:r,className:(0,s.cn)("relative flex w-full touch-none select-none items-center",t),...n,children:[(0,a.jsx)(l.CC,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:(0,a.jsx)(l.Q6,{className:"absolute h-full bg-primary"})}),(0,a.jsx)(l.zi,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]})});i.displayName=l.bL.displayName;var d=t(4874);function c(e){let{label:r,hint:t,children:n,className:o}=e;return(0,a.jsxs)("div",{className:(0,s.cn)("space-y-2.5",o),children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-baseline justify-between gap-2",children:[(0,a.jsx)("span",{className:"text-sm font-semibold tracking-tight text-foreground",children:r}),t?(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t}):null]}),n]})}function u(e){let{value:r,onChange:t,options:n,"aria-label":l,className:i,size:c="md"}=e,u=(0,d.b)(),m=Math.max(0,n.findIndex(e=>e.value===r)),f=Math.max(1,n.length),h="sm"===c?"h-8 px-2.5 text-[11px]":"h-9 px-3 text-xs sm:px-3.5 sm:text-[13px]";return(0,a.jsxs)("div",{role:"group","aria-label":l,className:(0,s.cn)("relative inline-flex max-w-full flex-wrap gap-1 rounded-full border border-border/70 bg-muted/30 shadow-[inset_0_1px_0_rgba(255,255,255,0.04)] backdrop-blur-sm","sm"===c?"p-0.5":"p-1",i),children:[n.length<=6&&(0,a.jsx)(o.P.span,{"aria-hidden":!0,className:"pointer-events-none absolute inset-y-1 left-1 hidden rounded-full gradient-primary shadow-md shadow-primary/25 sm:block",style:{width:"calc((100% - 0.5rem) / ".concat(f,")")},animate:{x:"calc(".concat(m," * 100%)")},transition:{duration:.28*!!u,ease:d.GA}}),n.map(e=>{let n=e.value===r;return(0,a.jsxs)("button",{type:"button","aria-pressed":n,onClick:()=>t(e.value),className:(0,s.cn)("relative z-10 inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-full font-semibold transition-colors duration-200 motion-reduce:transition-none",h,n?"bg-foreground text-background sm:bg-transparent sm:text-primary-foreground":"text-muted-foreground hover:text-foreground"),children:[e.swatch?(0,a.jsx)("span",{className:"h-2.5 w-2.5 shrink-0 rounded-full ring-1 ring-black/10 dark:ring-white/15",style:{background:e.swatch}}):null,e.label]},e.value)})]})}function m(e){let{value:r,onChange:t,options:n,"aria-label":l,className:i}=e,c=(0,d.b)();return(0,a.jsx)("div",{role:"group","aria-label":l,className:(0,s.cn)("flex flex-wrap gap-2",i),children:n.map(e=>{let n=e.value===r;return(0,a.jsxs)(o.P.button,{type:"button","aria-pressed":n,onClick:()=>t(e.value),whileTap:c?{scale:.97}:void 0,className:(0,s.cn)("inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-xs font-semibold transition-all duration-200",n?"border-transparent bg-gradient-to-br from-primary to-[hsl(230_75%_58%)] text-primary-foreground shadow-md shadow-primary/25":"border-border/80 bg-background/60 text-muted-foreground hover:border-primary/35 hover:text-foreground"),children:[e.swatch?(0,a.jsx)("span",{className:"h-2.5 w-2.5 shrink-0 rounded-full ring-1 ring-black/10 dark:ring-white/20",style:{background:e.swatch}}):null,e.label]},e.value)})})}function f(e){let{id:r,label:t,value:o,min:l,max:d,step:c=1,onChange:u,format:m,className:f}=e,h=(0,n.useId)(),b=null!=r?r:h,p=m?m(o):String(o);return(0,a.jsxs)("div",{className:(0,s.cn)("space-y-2",f),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{htmlFor:b,className:"text-sm font-medium text-foreground",children:t}),(0,a.jsx)("span",{className:"rounded-full border border-primary/20 bg-primary/10 px-2.5 py-0.5 text-[11px] font-semibold tabular-nums text-primary shadow-[inset_0_1px_0_rgba(255,255,255,0.06)]",children:p})]}),(0,a.jsx)(i,{id:b,min:l,max:d,step:c,value:[o],onValueChange:e=>{let r=e[0];"number"==typeof r&&u(r)},className:"py-1 [&_[role=slider]]:h-4 [&_[role=slider]]:w-4 [&_[role=slider]]:border-primary/80 [&_[role=slider]]:sha
1dow-md [&_[role=slider]]:shadow-primary/20 [&_span.absolute]:gradient-primary"})]})}function h(e){let{id:r,label:t,value:o,onChange:l,className:i}=e,d=(0,n.useId)(),c=null!=r?r:d;return(0,a.jsxs)("div",{className:(0,s.cn)("inline-flex flex-col gap-1.5",i),children:[t?(0,a.jsx)("label",{htmlFor:c,className:"text-sm font-medium text-foreground",children:t}):null,(0,a.jsxs)("label",{htmlFor:c,className:"group relative inline-flex h-10 w-14 cursor-pointer items-center justify-center overflow-hidden rounded-xl border border-border/70 bg-muted/30 shadow-[inset_0_1px_0_rgba(255,255,255,0.05)] transition hover:border-primary/40",children:[(0,a.jsx)("span",{"aria-hidden":!0,className:"absolute inset-1 rounded-lg ring-1 ring-black/10 dark:ring-white/10",style:{background:o}}),(0,a.jsx)("input",{id:c,type:"color",value:o,onChange:e=>l(e.target.value),className:"absolute inset-0 cursor-pointer opacity-0"})]}),(0,a.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:o})]})}function b(e){let{items:r,className:t}=e;return(0,a.jsx)("div",{className:(0,s.cn)("flex flex-wrap items-end gap-4",t),children:r.map(e=>{var r;return(0,a.jsx)(h,{...e},e.label+(null!=(r=e.id)?r:""))})})}function p(e){let{children:r,className:t,...n}=e;return(0,a.jsx)("button",{type:"button",className:(0,s.cn)("inline-flex items-center justify-center rounded-xl bg-gradient-to-br from-primary to-[hsl(230_75%_58%)] px-4 py-2.5 text-sm font-semibold text-primary-foreground shadow-md shadow-primary/25 transition hover:opacity-95 disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:r})}},87444:(e,r,t)=>{t.d(r,{I8:()=>i,uM:()=>s,xP:()=>d});var a=t(95155),n=t(57249),o=t(26497),l=t(4874);function s(e){let{value:r,label:t}=e,o=(0,l.b)(),s=null==r?null:Math.max(0,Math.min(1,r));return(0,a.jsxs)("div",{className:"space-y-2.5",role:"status","aria-live":"polite",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[t?(0,a.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:t}):(0,a.jsx)("span",{}),null!=s&&(0,a.jsxs)("span",{className:"tabular-nums text-xs font-semibold text-primary",children:[Math.round(100*s),"%"]})]}),(0,a.jsxs)("div",{className:"relative h-2.5 overflow-hidden rounded-full bg-muted/80 ring-1 ring-border/60",children:[(0,a.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 bg-gradient-to-r from-transparent via-primary/5 to-transparent"}),null==s?(0,a.jsx)(n.P.div,{className:"absolute inset-y-0 w-2/5 rounded-full gradient-primary shadow-[0_0_16px_hsl(262_80%_55%/0.45)]",animate:o?{x:["-40%","280%"]}:void 0,transition:o?{duration:1.25,repeat:1/0,ease:"easeInOut"}:void 0}):(0,a.jsx)(n.P.div,{className:"relative h-full rounded-full gradient-primary shadow-[0_0_14px_hsl(262_80%_55%/0.35)]",initial:!1,animate:{width:"".concat(100*s,"%")},transition:{duration:.4*!!o,ease:l.GA},children:o&&(0,a.jsx)(n.P.span,{"aria-hidden":!0,className:"absolute inset-y-0 right-0 w-8 bg-gradient-to-r from-transparent to-white/35",animate:{opacity:[.2,.65,.2]},transition:{duration:1.6,repeat:1/0,ease:"easeInOut"}})})]})]})}function i(e){let{show:r,children:t,className:s}=e,i=(0,l.b)();return(0,a.jsx)(o.N,{mode:"wait",children:r&&(0,a.jsxs)(n.P.div,{initial:!!i&&{opacity:0,y:14,scale:.975},animate:{opacity:1,y:0,scale:1},exit:i?{opacity:0,y:8,scale:.99}:void 0,transition:{duration:.45,ease:l.GA},className:"relative ".concat(null!=s?s:""),children:[(0,a.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute -inset-2 -z-10 rounded-[1.35rem] bg-gradient-to-br from-primary/20 via-violet-500/10 to-transparent opacity-80 blur-xl"}),t]},"tool-result")})}function d(e){let{children:r,className:t}=e,o=(0,l.b)();return(0,a.jsxs)(n.P.div,{initial:!!o&&{opacity:0,y:12},animate:{opacity:1,y:0},transition:{duration:.4,ease:l.GA},className:"relative overflow-hidden rounded-2xl border border-border/60 bg-gradient-to-br from-muted/40 via-background/80 to-muted/20 p-4 shadow-[inset_0_1px_0_rgba(255,255,255,0.04)] backdrop-blur-sm md:p-5 ".concat(null!=t?t:""),children:[(0,a.jsx)("div",{"aria-hidden":!0,
1className:"pointer-events-none absolute inset-x-0 top-0 h-px bg-gradient-to-r from-transparent via-primary/35 to-transparent"}),(0,a.jsx)("div",{className:"relative",children:r})]})}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.