1import{_ as xt,r as bt}from"./Iy78L7lK.js";import{d as we,c as C,D as pe,w as F,T as Y,o as n,e as r,x as c,f as e,H as ie,t as a,j as Fe,u as qe,y as st,m as h,s as Oe,v as at,h as D,F as Te,r as Be,i as o,a as wt,k as kt,R as Pt,I as $t,J as St,b as Ct,g as R,N as At,_ as Mt,P as Rt,Q as Ut,O as Tt,S as Bt,K as je,L as tt}from"./CcgJ1jke.js";import{f as Ft,_ as Lt,D as zt,v as Dt}from"./CQczjq0n.js";import{u as Et,_ as jt,a as It}from"./iKI5ydBD.js";import{_ as Ot}from"./tQFLlQJ_.js";import{u as qt}from"./BFkR6Dt3.js";import{u as Nt}from"./HhhRRjeO.js";import{u as Vt}from"./Cfu9vvhm.js";const Wt={class:"alert-content"},Gt={class:"alert-message"},Ht=we({__name:"AlertBox",props:{message:{},type:{default:"error"}},emits:["close"],setup(i,{emit:d}){const p=i,y=d,A=C(()=>{switch(p.type){case"error":return"bg-red-100 border-red-400 text-red-700";case"warning":return"bg-yellow-100 border-yellow-400 text-yellow-700";case"info":return"bg-blue-100 border-blue-400 text-blue-700";default:return"bg-red-100 border-red-400 text-red-700"}}),P=C(()=>{switch(p.type){case"error":return"text-red-500";case"warning":return"text-yellow-500";case"info":return"text-blue-500";default:return"text-red-500"}});return(_,s)=>(n(),pe(Y,{name:"alert"},{default:F(()=>[i.message?(n(),r("div",{key:0,class:ie(["alert-box",A.value]),role:"alert"},[e("div",Wt,[(n(),r("svg",{class:ie(["alert-icon",P.value]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[...s[1]||(s[1]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])],2)),e("span",Gt,a(i.message),1)]),e("button",{onClick:s[0]||(s[0]=u=>y("close")),class:ie(["alert-close",P.value]),"aria-label":"Close"},[...s[2]||(s[2]=[e("svg",{fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])],2)],2)):c("",!0)]),_:1}))}}),Qt=Object.assign(Fe(Ht,[["__scopeId","data-v-7c5cc686"]]),{__name:"AlertBox"}),Kt={class:"progress-container"},Jt={class:"status-icon","aria-hidden":"true"},Xt={key:0,viewBox:"0 0 24 24",fill:"none"},Yt={key:1,viewBox:"0 0 24 24",fill:"none"},Zt={key:2,viewBox:"0 0 24 24",fill:"none"},es={class:"progress-title"},ts={key:0,class:"progress-subtitle"},ss={key:1,class:"progress-track"},as=we({__name:"UploadProgress",props:{progress:{},status:{}},setup(i){const d=i,{t:p}=qe(),y=C(()=>{switch(d.status){case"pending":return"";case"uploading":return p("uploadPage.status.uploadingTitle",{progress:d.progress});case"processing":return p("uploadPage.status.processingTitle");case"success":return p("uploadPage.status.successTitle");case"error":return p("uploadPage.status.errorTitle");default:return""}}),A=C(()=>{switch(d.status){case"uploading":return p("uploadPage.status.uploadingDesc");case"processing":return p("uploadPage.status.processingDesc");case"success":return p("uploadPage.status.successDesc");case"error":return p("uploadPage.status.errorDesc");default:return""}}),P=C(()=>{switch(d.status){case"success":return"success";case"error":return"error";default:return"neutral"}});return(_,s)=>(n(),r("div",{class:ie(["progress-wrapper",`theme-${P.value}`])},[e("div",Kt,[e("div",Jt,[P.value==="success"?(n(),r("svg",Xt,[...s[0]||(s[0]=[e("circle",{cx:"12",cy:"12",r:"10",class:"icon-stroke"},null,-1),e("path",{d:"M7.5 12.5L10.5 15.5L16.5 9.5",class:"icon-stroke"},null,-1)])])):P.value==="error"?(n(),r("svg",Yt,[...s[1]||(s[1]=[e("circle",{cx:"12",cy:"12",r:"10",class:"icon-stroke"},null,-1),e("path",{d:"M9 9L15 15M15 9L9 15",class:"icon-stroke"},null,-1)])])):(n(),r("svg",Zt,[...s[2]||(s[2]=[e("circle",{cx:"12",cy:"12",r:"10",class:"icon-stroke"},null,-1),e("path",{d:"M12 7V12L15 14",class:"icon-stroke"},null,-1)])]))]),e("p",es,a(y.value),1),A.value?(n(),r("p",ts,a(A.value),1)):c("",!0),P.value==="neutral"?(n(),r("div",ss,[e("div",{class:"progress-fill",style:st({width:`${Math.max(8,d.progress)}%`})},null,4)])):c("",!0)])],2))}}),os=Object.assign(Fe(as,[["__scopeId","data-v-3101e9d3"]]),{__name:"UploadProgress"}),ls={class:"upload-result-display"},ns={key:0,class:"no-result-card"},rs={class:"no-result-title"},is={class:"no-result-desc"},us={key:1,class:"quick-result-card"},ds={class:"quick-result-inner"},cs={class:"song-info"},ps={class:"song-title"},vs={class:"song-artist"},fs={key:0,class:"song-album"},ms={class:"song-links"},gs=["href"],_s={key:1,class:"history-badge"}
1,hs={key:2,class:"full-scan-results"},ys={class:"full-scan-header"},xs={class:"full-scan-count"},bs={key:0,class:"history-badge"},ws={class:"song-list"},ks={class:"song-row-index"},Ps={class:"song-row-info"},$s={class:"song-row-title"},Ss={class:"song-row-artist"},Cs={key:0,class:"song-row-time"},As={class:"song-row-actions"},Ms=["href"],Rs=we({__name:"UploadResultDisplay",props:{mode:{},results:{},historySaved:{type:Boolean}},setup(i){const d=i,p=h([]),y=C(()=>p.value[0]??null);function A(u){const x=Math.floor(u/1e3),v=Math.floor(x/3600),w=Math.floor(x%3600/60),M=x%60;return v>0?`${v}:${String(w).padStart(2,"0")}:${String(M).padStart(2,"0")}`:`${w}:${String(M).padStart(2,"0")}`}function P(u,x,v){if(!u)return"";const w=new URLSearchParams({utm_source:"dashboard",utm_medium:"web",title:x,artist:v});return`https://aha-music.com/${u}?${w.toString()}`}function _(u){return u?(u.music||u.cover_songs||[]).map(v=>{const w=v.result&&typeof v.result=="object",M=w?v.result:v,B=w?Number(v.offset)*1e3||0:Number(v.play_offset_ms)||0,L=Number(v.played_duration)||0,E=B+L*1e3;let Z="";(B>0||L>0)&&(Z=A(B),E>B&&(Z+=" - "+A(E)));const H=M.title||"",ee=(M.artists||[]).map(Le=>Le.name).join(", "),Q=M.acrid||"";return{title:H,artistNames:ee,album:M.album?.name||(typeof M.album=="string"?M.album:""),acrid:Q,ahaUrl:P(Q,H,ee),timestamp:Z}}):[]}function s(u){p.value=_(u)}return Oe(()=>d.results,s,{deep:!0}),at(()=>s(d.results)),(u,x)=>(n(),r("div",ls,[p.value.length===0?(n(),r("div",ns,[x[0]||(x[0]=e("div",{class:"no-result-icon"},"ðµ",-1)),e("p",rs,a(u.$t("uploadResult.noMatch")),1),e("p",is,a(u.$t("uploadResult.noMatchDesc")),1)])):i.mode==="quick"&&y.value?(n(),r("div",us,[e("div",ds,[e("div",cs,[e("p",ps,a(y.value.title),1),e("p",vs,a(y.value.artistNames),1),y.value.album?(n(),r("p",fs,a(y.value.album),1)):c("",!0),e("div",ms,[y.value.ahaUrl?(n(),r("a",{key:0,href:y.value.ahaUrl,target:"_blank",rel:"noopener",class:"aha-btn"},[x[1]||(x[1]=e("svg",{class:"aha-btn-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("path",{d:"M9 19V6l12-3v13M9 19c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zm12-3c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zM9 10l12-3"})],-1)),D(" "+a(u.$t("uploadResult.viewOnAha")),1)],8,gs)):c("",!0)]),i.historySaved?(n(),r("div",_s,[x[2]||(x[2]=e("span",null,"â",-1)),D(" "+a(u.$t("uploadResult.savedToHistory")),1)])):c("",!0)])])])):i.mode==="full"?(n(),r("div",hs,[e("div",ys,[e("span",xs,a(u.$t("uploadResult.songsFound",{n:p.value.length})),1),i.historySaved?(n(),r("div",bs,[x[3]||(x[3]=e("span",null,"â",-1)),D(" "+a(u.$t("uploadResult.savedToHistory")),1)])):c("",!0)]),e("div",ws,[(n(!0),r(Te,null,Be(p.value,(v,w)=>(n(),r("div",{key:w,class:"song-row"},[e("div",ks,a(w+1),1),e("div",Ps,[e("p",$s,a(v.title),1),e("p",Ss,a(v.artistNames),1)]),v.timestamp?(n(),r("div",Cs,a(v.timestamp),1)):c("",!0),e("div",As,[v.ahaUrl?(n(),r("a",{key:0,href:v.ahaUrl,target:"_blank",rel:"noopener",class:"song-row-link"}," AHA Music â ",8,Ms)):c("",!0)])]))),128))])])):c("",!0)]))}}),Us=Object.assign(Fe(Rs,[["__scopeId","data-v-953906a2"]]),{__name:"UploadResultDisplay"}),Ts={class:"flex items-center gap-4 p-4 bg-white rounded-lg shadow-sm"},Bs={class:"flex-1 min-w-0"},Fs={class:"flex items-center gap-2"},Ls={class:"text-sm font-medium text-gray-900 truncate"},zs={key:0,class:"inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-green-100 text-green-800"},Ds={key:1,class:"inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-red-100 text-red-800"},Es={class:"text-sm text-gray-500"},js={key:0,class:"mt-2"},Is={class:"w-full bg-gray-200 rounded-full h-2"},Os={class:"text-xs text-gray-500 mt-1"},qs={key:1,class:"text-sm text-red-600 mt-1"},Ns=we({__name:"UploadFileItem",props:{uploadFile:{}},setup(i){const{t:d}=qe();return(p,y)=>(n(),r("div",Ts,[y[1]||(y[1]=e("div",{class:"flex-shrink-0"},[e("div",{class:"w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center"},[e("svg",{class:"w-6 h-6 text-blue-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 19V6l12-3v13M9 19c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zm12-3c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zM9 10l12-3"})])])],-1)),e("div",Bs,[e("div",Fs,[e("p",Ls,a(i.uploadFile.file.name),1),i.uploadFile.status==="success"?(n(),r("span",zs,a(o(d)("uploadPage.fileItem.success")),1)):i.uploadFile.status==="error"?(n(),r("span",Ds,a(o(d)("uploadPage.fileItem.error")),1)):c("",!0)]),e("p",Es,a(o(Ft)(i.uploadFile.file.size)),1),i.uploadFile.status==="uploading"?(n(),r("div",js,[e("div",Is,[e("div",{class:"bg-blue-600 h-2 rounded-full transition-all duration-300",style:st({width:`${i.uploadFile.progress}%`})},null,4)]),e("p",Os,a(i.uploadFile.progress)+"%",1)])):c("",!0),i.uploadFile.error?(n(),r("p",qs,a(i.uploadFile.error),1)):c("",!0)]),i.uploadFile.status==="error"?(n(),r("button",{key:0,onClick:y[0]||(y[0]=A=>p.$emit("retry")),class:"flex-shrink-0 px-3 py-1.5 text-sm font-medium text-blue-600 hover:text-blue-700"},a(o(d)("uploadPage.fileItem.retry")),1)):c("",!0)]))}}),Vs=Object.assign(Ns,{__name:"UploadFileItem"});function Ws(i){const d=i.numberOfChannels,p=i.sampleRate,y=i.length,A=44+y*d*2,P=new ArrayBuffer(A),_=new DataView(P);function s(x,v){for(let w=0;w<v.length;w++)_.setUint8(x+w,v.charCodeAt(w))}s(0,"RIFF"),_.setUint32(4,A-8,!0),s(8,"WAVE"),s(12,"fmt "),_.setUint32(16,16,!0),_.setUint16(20,1,!0),_.setUint16(22,d,!0),_.setUint32(24,p,!0),_.setUint32(28,p*d*2,!0),_.setUint16(32,d*2,!0),_.setUint16(34,16,!0),s(36,"data"),_.setUint32(40,y*d*2,!0);let u=44;for(let x=0;x<y;x++)for(let v=0;v<d;v++){const w=Math.max(-1,Math.min(1,i.getChannelData(v)[x]));_.setInt16(u,w<0?w*32768:w*32767,!0),u+=2}return new Blob([P],{type:"audio/wav"})}const Gs=20*1024*1024;async function Hs(i,d,p=30){if(i.size>Gs)return Qs(i,d,p);const y=await i.arrayBuffer(),A=new AudioContext;let P;try{P=await A.decodeAudioData(y)}finally{A.close()}const _=P.sampleRate,s=P.numberOfChannels,u=Math.floor(d*_),x=P.length,v=Math.min(u+Math.floor(p*_),x),w=Math.max(1,v-u),M=new OfflineAudioContext(s,w,_),B=M.createBufferSource();B.buffer=P,B.connect(M.destination),B.start(0,d,p);const L=await M.startRendering();return Ws(L)}function Qs(i,d,p){return new Promise((y,A)=>{const P=URL.createObjectURL(i),_=new Audio;_.preload="auto",_.src=P;const s=new AudioContext;let u=null,x=null,v=!1;const w=()=>{x&&clearTimeout(x);try{_.pause()}catch{}try{s.close()}catch{}URL.revokeObjectURL(P)},M=L=>{v||(v=!0,w(),A(L))};_.addEventListener("error",()=>M(new Error("Cannot play this file")),{once:!0});const B=setTimeout(()=>M(new Error("Timed out loading file")),2e4);_.addEventListener("loadedmetadata",()=>{clearTimeout(B);try{const L=s.createMediaElementSource(_),E=s.createMediaStreamDestination();L.connect(E);
1const Z=MediaRecorder.isTypeSupported("audio/webm;codecs=opus")?"audio/webm;codecs=opus":"";u=new MediaRecorder(E.stream,Z?{mimeType:Z}:void 0);const H=[];u.ondataavailable=Q=>{Q.data.size&&H.push(Q.data)},u.onstop=()=>{if(!v){if(v=!0,w(),!H.length){A(new Error("Recording produced no data"));return}y(new Blob(H,{type:u.mimeType||"audio/webm"}))}};const ee=()=>{try{u&&u.state!=="inactive"&&u.stop()}catch{}};_.addEventListener("ended",ee,{once:!0}),_.currentTime=Math.min(d,Math.max(0,(_.duration||0)-1)),s.resume().then(()=>_.play()).then(()=>{u.start(),x=setTimeout(ee,p*1e3)}).catch(()=>M(new Error("Playback failed")))}catch(L){M(L instanceof Error?L:new Error("Capture setup failed"))}},{once:!0})})}function Ue(i){if(!isFinite(i)||i<0)return"0:00";const d=Math.floor(i/3600),p=Math.floor(i%3600/60),y=Math.floor(i%60);return d>0?`${d}:${String(p).padStart(2,"0")}:${String(y).padStart(2,"0")}`:`${p}:${String(y).padStart(2,"0")}`}const Ks={class:"upload-page min-h-screen pb-16"},Js={class:"hero !pb-0"},Xs={class:"container"},Ys={class:"hero-badge"},Zs={class:"gradient-text"},ea={class:"hero-description"},ta={class:"py-8 px-4 sm:px-6 lg:px-8 text-center"},sa={class:"max-w-4xl mx-auto"},aa={class:"mb-4 text-left"},oa={class:"upload-area"},la={key:1,class:"verification-gate"},na={class:"gate-subtitle"},ra={key:0,class:"turnstile-error-text"},ia={key:2,class:"verification-success"},ua={class:"flex justify-center items-center h-64"},da={class:"text-xl font-bold text-gray-400 animate-pulse"},ca={key:0,class:"file-info-panel mt-4"},pa={class:"file-meta"},va={class:"file-meta-name"},fa={key:0,class:"file-meta-duration"},ma={key:1,class:"file-meta-duration loading"},ga={class:"mode-tabs"},_a={key:0,class:"position-selector"},ha={class:"position-label"},ya=["max"],xa={class:"position-slider-labels"},ba={key:0,class:"full-scan-info"},wa={key:0,class:"fsa-panel mt-3"},ka={class:"fsa-header"},Pa={class:"fsa-title"},$a={class:"fsa-desc"},Sa={key:0,class:"fsa-badge"},Ca={class:"fsa-progress-row"},Aa={class:"flex items-center justify-between mb-2"},Ma={class:"text-sm font-medium text-gray-600"},Ra={class:"text-xs text-gray-400"},Ua={class:"flex flex-wrap gap-2"},Ta={key:0,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},Ba={key:1},Fa={key:0,class:"fsa-error fsa-error-amber"},La={class:"font-semibold mb-1"},za={class:"text-sm mb-2"},Da=["disabled"],Ea={key:1,class:"fsa-error fsa-error-red"},ja={class:"font-semibold mb-1"},Ia={class:"text-sm mb-2"},Oa=["disabled"],qa={class:"mt-4 flex justify-center"},Na=["disabled"],Va={key:0,class:"btn-icon animate-spin",viewBox:"0 0 24 24",fill:"none"},Wa={key:1,class:"btn-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Ga=["disabled"],Ha={key:0,class:"btn-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Qa={key:1,class:"btn-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Ka={class:"flex-1 min-w-0"},Ja={class:"text-sm font-semibold leading-tight text-purple-900"},Xa={class:"font-normal text-purple-700"},Ya={class:"mt-0.5 text-xs leading-snug text-purple-600/80"},Za={key:0,class:"countdown-section mt-6"},eo={key:0,class:"countdown-ring mx-auto"},to={viewBox:"0 0 120 120",class:"countdown-ring__svg"},so=["stroke-dashoffset"],ao={class:"countdown-ring__num"},oo={key:1,class:"mx-auto flex items-center justify-center w-[120px] h-[120px]"},lo={class:"text-center text-gray-500 text-sm mt-2"},no={key:2,class:"countdown-ad-wrap mt-4"},ro=["title"],io={key:0,class:"polling-indicator mt-4"},uo={key:0,class:"mt-6"},co={key:0,class:"mt-6 flex justify-center"},po={class:"countdown-ad-wrap"},vo=["title"],fo={class:"mt-4 flex flex-wrap gap-3 justify-center"},mo={key:0,class:"mt-6"},go={class:"no-music-card"},_o={class:"font-semibold text-gray-700"},ho={class:"text-sm text-gray-500 mt-1"},yo={class:"mt-4 flex justify-center"},xo={key:0,class:"mt-6 text-left"},bo={key:1,class:"mt-4 flex flex-wrap gap-3 justify-center"},wo={key:2,class:"verification-recheck mt-4"},ko={class:"gate-subtitle"},Po={key:0,class:"turnstile-error-text"},$o={class:"py-16 px-4 sm:px-6 lg:px-8 max-w-5xl mx-auto"},So={class:"text-3xl font-bold text-gray-900 text-center mb-2"},Co={class:"text-gray-500 text-center mb-12"},Ao={class:"grid grid-cols-1 md:grid-cols-3 gap-8"},Mo={class:"text-center"},Ro={class:"font-bold text-lg text-gray-900 mb-2"},Uo={class:"text-gray-500 text-sm"},To={class:"text-center"},Bo={class:"font-bold text-lg text-gray-900 mb-2"},Fo={class:"text-gray-500 text-sm"},Lo={class:"text-center"},zo={class:"font-bold text-lg text-gray-900 mb-2"},Do={class:"text-gray-500 text-sm"},Eo={class:"py-16 px-4 sm:px-6 lg:px-8"},jo={class:"max-w-5xl mx-auto"},Io={class:"text-3xl font-bold text-gray-900 text-center mb-2"},Oo={class:"text-gray-500 text-center mb-12"},qo={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"},No={class:"text-2xl mb-3"},Vo={class:"font-bold text-gray-900 mb-2"},Wo={class:"text-gray-500 text-sm leading-relaxed"},Go={class:"seo-section",id:"faq"},Ho={class:"container"},Qo={class:"seo-section-title"},Ko={class:"seo-section-subtitle"},Jo={class:"seo-faq"},Xo=" ",be=13,Ie=52,Yo=we({__name:"upload",setup(i){const{token:d,error:p,renderWidget:y,resetWidget:A,getFreshToken:P}=qt(),_=wt(),{t:s}=qe(),{isLoggedIn:u,authReady:x}=kt(),{isPro:v,tier:w,fetchTier:M}=Pt(),{shouldShowAds:B}=$t(),L=C(()=>u.value?w.value!==null:x.value),E=C(()=>z.value==="full"&&L.value&&!v.value),{trackRecordStart:Z,trackRecognitionSuccess:H,trackRecognitionFailure:ee}
1=Nt(),{showQuotaModal:Q,handleApiError:Le}=Et(),N=h(!1),K=h(!1),ke=h(0),$=h("pending"),Ne=h(!1),U=h(null),j=h("error"),S=h(null),Ve=h(""),J=h(null),T=h(null),ve=h(!1),ue=h(0),z=h("quick"),Pe=h(!1),te=h(null),fe=h(!1),$e=h("quick"),me=h(!1);let Se=null,ge=0,oe=0;const se=h(be),ae=h(!1),X=h(!1),V=h(null);let le=null;const We=2*Math.PI*Ie,ot=C(()=>We*(1-se.value/be)),lt=C(()=>B.value&&ae.value&&te.value===null),nt=C(()=>B.value&&!ae.value&&te.value!==null),Ce=h(!1),W=h(0),I=h(!1),_e=h(null),Ae=h(0),he=C(()=>!T.value||T.value<=0?1:Math.ceil(T.value/60)||1),ye=C(()=>W.value>=he.value);Oe(ye,l=>{l&&E.value&&J.value&&$.value==="pending"&&P("#turnstile-upload").catch(()=>{})});function Ge(){Ae.value++,W.value=0,I.value=!1,_e.value=null}async function rt(){if(I.value)return;I.value=!0;const l=Ae.value;if(_e.value=null,typeof window>"u"){I.value=!1;return}try{const{granted:t,blockReason:f}=await bt(`full_scan_ad_${W.value+1}`);if(l!==Ae.value)return;if(f){_e.value=f;return}t&&(W.value=Math.min(W.value+1,he.value))}finally{l===Ae.value&&(I.value=!1)}}async function ze(){try{await rt()}catch{}}const He=h({...zt}),it=["â¡","ð¯","ð","ð","ð","ð"],ut=C(()=>!d.value&&($.value==="pending"||$.value==="error"));function dt(l){return new Promise(t=>{const f=new Audio,g=URL.createObjectURL(l),m=()=>URL.revokeObjectURL(g);f.addEventListener("loadedmetadata",()=>{m(),t(f.duration||0)},{once:!0}),f.addEventListener("error",()=>{m(),t(0)},{once:!0});const b=setTimeout(()=>{m(),t(0)},5e3);f.addEventListener("loadedmetadata",()=>clearTimeout(b),{once:!0}),f.src=g})}async function ct(l){const t=Dt(l,He.value);if(!t.valid){U.value=t.error||null,j.value="error";return}U.value=null,J.value=l,T.value=null,ue.value=0,te.value=null,fe.value=!1,me.value=!1,Ge(),ve.value=!0;try{T.value=await dt(l)}finally{ve.value=!1}}function pt(l){Ne.value=l}function vt(l){U.value=l,j.value="error"}function Qe(){if(typeof window>"u")return;const l=window;try{l.ezstandalone?.cmd&&l.ezstandalone.cmd.push(()=>{try{l.ezstandalone.showAds(115)}catch{}})}catch{}}function De(){if(ne(),V.value=null,se.value=be,!B.value){X.value=!0,ae.value=!1;return}X.value=!1,ae.value=!0,je(()=>Qe()),le=tt(()=>{se.value--,se.value<=0&&(ae.value=!1,le&&(clearInterval(le),le=null),X.value=!0,V.value!==null&&(Ke(V.value.result,V.value.noMusic),V.value=null))},1e3)}function ne(){le&&(clearInterval(le),le=null),ae.value=!1}function Me(l,t){X.value?Ke(l,t):V.value={result:l,noMusic:t}}function Ke(l,t){te.value=t?null:l,t&&(fe.value=!0),$.value="success",je(()=>{X.value&&Qe()})}function de(){Se&&(clearInterval(Se),Se=null),ge=0,Pe.value=!1}async function ft(l,t,f){if(f!==oe)return!0;try{const g=await $fetch(`/api/upload/full-scan-result?id=${l}`);if(f!==oe)return!0;if(g.status==="completed"){const m=(g.result?.music?.length??0)>0,b=g.result?.music?.[0];return H({method:"upload",song_title:b?.title,artist:b?.artists?.[0]?.name}),await Je(g.result,"upload",t),Me(g.result||{},!m),!0}if(g.status==="error")return ee({method:"upload",reason:"server_error"}),ne(),X.value=!0,V.value=null,$.value="error",U.value=g.error||s("uploadPage.errors.uploadFailedRetry"),j.value="error",!0}catch{}return!1}function mt(l,t,f,g){de(),ge=0,Pe.value=!0,$e.value=t;const m=60;De(),Se=tt(async()=>{if(g!==oe){de();return}ge++;const b=await ft(l,f,g);(b||ge>=m)&&(de(),!b&&ge>=m&&(ne(),X.value=!0,V.value=null,$.value="error",U.value=s("uploadPage.errors.timeout"),j.value="warning"))},5e3)}async function Je(l,t,f){if(!u.value||!l)return;const g=l.music||l.cover_songs||[];if(!g.length)return;const m=g[0],b=m.result??m,G=b.title,re=(b.artists||[]).map(O=>O.name).join(", "),xe=b.acrid||"",ce=b.external_metadata||b.external_ids||m.external_metadata||{};try{const O=ce.youtube?.[0]?.vid??null,q=b.album?.cover_art_url??null,Ee={...ce,youtubeId:O,coverUrl:q};await $fetch("/api/history/record",{method:"POST",body:{title:G,artist:re,source:t,acr_id:xe,metadata:JSON.stringify(Ee),filename:f||null}}),me.value=!0}catch{}}function gt(l,t){return new Promise((f,g)=>{const m=new XMLHttpRequest;m.open("POST",l),m.responseType="json",m.upload.onprogress=b=>{if(!b.lengthComputable)return;const G=Math.min(95,Math.round(b.loaded/b.total*100));ke.value=G,S.value&&(S.value.progress=G)},m.onload=()=>{const b=m.response&&typeof m.response=="object"?m.response:{};if(m.status>=200&&m.status<300){f(b);return}g({response:{status:m.status,_data:b}}
1)},m.onerror=()=>g(new Error("Network error")),m.send(t)})}async function _t(){if(!J.value)return;if(!d.value){U.value=s("uploadPage.errors.completeVerificationBeforeUpload"),j.value="warning";return}if(z.value==="full"&&!v.value&&(u.value&&w.value==null?await M(!0):u.value||await Bt(),E.value&&!ye.value))return;let l=d.value;if(z.value==="full"&&(l=await P("#turnstile-upload"),!l)){U.value=s("uploadPage.errors.verificationExpired"),j.value="warning";return}const t=J.value,f=++oe;de(),ne(),Ve.value="",X.value=!1,V.value=null,se.value=be,N.value=!0,ke.value=0,$.value="uploading",te.value=null,fe.value=!1,me.value=!1,$e.value=z.value,S.value={file:t,id:Date.now().toString(),progress:0,status:"uploading"},Z("upload");try{if(z.value==="quick"){let g;K.value=!0;try{g=await Hs(t,ue.value||0,15)}catch{if(t.size<=8*1024*1024)g=t;else{K.value=!1,N.value=!1,$.value="pending",S.value=null,U.value=s("uploadPage.errors.trimFailed"),j.value="warning";return}}finally{K.value=!1}S.value&&(S.value.progress=100,S.value.status="success"),N.value=!1,$.value="processing",$e.value="quick",De();const m=await g.arrayBuffer(),b=new Uint8Array(m);let G="";const re=8192;for(let q=0;q<b.length;q+=re)G+=String.fromCharCode(...b.subarray(q,q+re));const xe=btoa(G+Xo),ce=await $fetch("/identify",{method:"POST",body:{audio:xe,mimeType:g.type||"audio/wav"}});if(f!==oe)return;const O=ce?.data;if(O&&O.title){const q={music:[O]};await Je(q,"upload",t.name),H({method:"upload",song_title:O.title,artist:O.artists?.[0]?.name}),Me(q,!1)}else ee({method:"upload",reason:"no_music"}),Me({},!0)}else{const g=new FormData;g.append("file",t,t.name),g.append("cf-turnstile-response",l??""),g.append("fileDuration",String(Math.max(0,Math.round(T.value??0))));const m=await gt("/api/upload/full-scan",g);if(S.value&&(S.value.progress=100,S.value.status="success"),N.value=!1,$.value="processing",m?.fileId)mt(m.fileId,"full",t.name,f);else{if(f!==oe)return;De(),Me({},!0)}}J.value=null,S.value=null}catch(g){if(ne(),Le(g)){N.value=!1,K.value=!1,$.value="pending",S.value=null;return}const m=ht(g),b=g?.response?.status;U.value=m,j.value=b===418||b===429?"warning":"error",S.value&&(S.value.status="error",S.value.error=m),m.toLowerCase().includes("verification")&&A(),N.value=!1,K.value=!1,$.value="error"}}function ht(l){const t=l?.response?.status,f=l?.response?._data?.message||l?.response?._data?.error||l?.message;return t===418||t===429?typeof f=="string"&&/monthly|credit/i.test(f)?s("uploadPage.errors.monthlyLimitCredits"):s("uploadPage.errors.dailyLimit"):t===401?s("uploadPage.errors.signInRequired"):typeof f=="string"&&f.trim()?f.toLowerCase().includes("bot verification failed")?s("uploadPage.errors.verificationExpired"):f:s("uploadPage.errors.uploadFailedRetry")}
1function Xe(){if(S.value?.file){if(!d.value){U.value=s("uploadPage.errors.completeVerificationBeforeRetry"),j.value="warning";return}$.value="pending",U.value=null,J.value=S.value.file,S.value=null;return}Re()}function Re(){oe++,de(),ne(),$.value="pending",N.value=!1,K.value=!1,Pe.value=!1,ke.value=0,S.value=null,J.value=null,T.value=null,ue.value=0,Ve.value="",U.value=null,j.value="error",te.value=null,fe.value=!1,me.value=!1,se.value=be,X.value=!1,V.value=null,Ge(),A()}function Ye(l){l.preventDefault()}at(()=>{const l=window;l.ezstandalone=l.ezstandalone||{},l.ezstandalone.cmd=l.ezstandalone.cmd||[],l.ezstandalone.cmd.push(function(){typeof l.ezstandalone.initRewardedAds=="function"&&l.ezstandalone.initRewardedAds(),typeof l.ezstandalone.showAds=="function"&&l.ezstandalone.showAds(101,102,109,110,103)}),l.ezRewardedAds=l.ezRewardedAds||{},l.ezRewardedAds.cmd=l.ezRewardedAds.cmd||[],["dragenter","dragover","dragleave","drop"].forEach(f=>document.body.addEventListener(f,Ye)),typeof window.googletag<"u"||(window.googletag=window.googletag||{cmd:[]}),Ze()}),Oe(ut,async l=>{l&&(await je(),y("#turnstile-upload"))},{immediate:!0});function Ze(){const l=window.googletag;l&&(l.cmd.push(function(){try{l.defineSlot("/22253468549,22385360682/bandsintown/aha-music.com_1x1",[1,1],"video_ad_aha_music_scan_file")?.addService(l.pubads()),l.pubads().enableSingleRequest(),l.enableServices()}catch(t){console.log("AdSense error:",t)}}),l.cmd.push(function(){try{l.display("video_ad_aha_music_scan_file")}catch(t){console.log("Ad display error:",t)}}))}St(()=>{de(),ne(),["dragenter","dragover","dragleave","drop"].forEach(t=>document.body.removeEventListener(t,Ye))});const{alternateLinks:yt,canonicalUrl:et}=Vt("/upload");return Ct({title:C(()=>s("uploadPage.h1")+" | "+s("site.title")),meta:[{name:"description",content:C(()=>s("uploadPage.meta_desc"))},{name:"keywords",content:C(()=>s("uploadPage.meta_keywords"))},{name:"twitter:title",content:C(()=>s("uploadPage.h1")+" | "+s("site.title"))},{name:"twitter:description",content:C(()=>s("uploadPage.meta_desc"))},{property:"og:title",content:C(()=>s("uploadPage.h1")+" | "+s("site.title"))},{property:"og:description",content:C(()=>s("uploadPage.meta_desc"))},{property:"og:url",content:C(()=>et.value)}],link:C(()=>[{rel:"canonical",href:et.value},...yt.value]),script:[{src:"https://securepubads.g.doubleclick.net/tag/js/gpt.js",defer:!0,async:!0,id:"tyche","data-cfasync":"false"},{src:"https://platform.twitter.com/widgets.js",async:!0}]}),(l,t)=>{const f=xt,g=Qt,m=Lt,b=os,G=At,re=Mt,xe=Us,ce=jt,O=Vs,q=Ot,Ee=It;return n(),r("div",Ks,[e("section",Js,[e("div",Xs,[e("div",Ys,[t[8]||(t[8]=e("span",{class:"hero-badge-dot"},null,-1)),D(" "+a(o(s)("site.title")),1)]),e("h1",null,[e("span",Zs,a(o(s)("uploadPage.h1")),1)]),e("p",ea,a(o(s)("uploadPage.subtitle")),1)])]),e("div",ta,[R(f,{type:"rectangle",position:"section-top","min-height":250,"placeholder-id":"ezoic-pub-ad-placeholder-101"}),e("div",sa,[e("div",aa,[U.value?(n(),pe(g,{key:0,message:U.value,type:j.value,onClose:t[0]||(t[0]=k=>U.value=null)},null,8,["message","type"])):c("",!0)]),e("div",oa,[!N.value&&!K.value&&$.value==="pending"?(n(),pe(m,{key:0,config:He.value,"is-dragging":Ne.value,disabled:N.value||K.value,onFileSelected:ct,onDragOver:pt,onError:vt},null,8,["config","is-dragging","disabled"])):c("",!0),$.value==="pending"&&!S.value&&!o(d)?(n(),r("div",la,[e("p",na,a(o(s)("uploadPage.verification.subtitle")),1),t[9]||(t[9]=e("div",{id:"turnstile-upload",class:"mt-2 flex justify-center"},null,-1)),o(p)?(n(),r("p",ra,a(o(p)),1)):c("",!0)])):$.value==="pending"&&o(d)&&!S.value?(n(),r("div",ia,[t[10]||(t[10]=e("span",{class:"verification-dot"},null,-1)),D(" "+a(o(s)("uploadPage.verification.done")),1)])):c("",!0),R(G,null,{fallback:F(()=>[e("div",ua,[e("div",da,a(o(s)("uploadPage.loading")),1)])]),default:F(()=>[N.value||K.value||$.value!=="pending"&&$.value!=="success"&&$.value!=="error"?(n(),pe(b,{key:0,progress:ke.value,status:$.value},null,8,["progress","status"])):c("",!0)]),_:1})]),R(Y,{name:"fade"},{default:F(()=>[J.value&&$.value==="pending"?(n(),r("div",ca,[e("div",pa,[t[11]||(t[11]=e("svg",{class:"file-meta-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("path",{d:"M9 19V6l12-3v13M9 19c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zm12-3c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zM9 10l12-3"})],-1)),e("span",va,a(J.value.name),1),T.value!==null?(n(),r("span",fa,[D(a(o(s)("uploadPage.duration"))+": ",1),e("strong",null,a(o(Ue)(T.value)),1)])):ve.value?(n(),r("span",ma,a(o(s)("uploadPage.durationLoading")),1)):c("",!0)]),e("div",ga,[e("button",{type:"button",class:ie(["mode-tab",z.value==="quick"&&"mode-tab-active"]),onClick:t[1]||(t[1]=k=>z.value="quick")},[t[12]||(t[12]=e("svg",{class:"mode-tab-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("polygon",{points:"13,2 3,14 12,14 11,22 21,10 12,10"})],-1)),D(" "+a(o(s)("uploadPage.modeQuick")),1)],2),o(u)?(n(),r("button",{key:0,t
1ype:"button",class:ie(["mode-tab",z.value==="full"&&"mode-tab-active"]),onClick:t[2]||(t[2]=k=>z.value="full")},[t[13]||(t[13]=e("svg",{class:"mode-tab-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("circle",{cx:"11",cy:"11",r:"8"}),e("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})],-1)),D(" "+a(o(s)("uploadPage.modeFull")),1)],2)):(n(),pe(re,{key:1,to:o(_)("/login"),class:"mode-tab mode-tab-locked"},{default:F(()=>[t[14]||(t[14]=e("svg",{class:"mode-tab-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("rect",{x:"3",y:"11",width:"18",height:"11",rx:"2",ry:"2"}),e("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})],-1)),D(" "+a(o(s)("uploadPage.modeFullLocked")),1)]),_:1},8,["to"]))]),R(Y,{name:"fade"},{default:F(()=>[z.value==="quick"&&T.value!==null&&T.value>30?(n(),r("div",_a,[e("label",ha,[D(a(o(s)("uploadPage.identifyFrom"))+": ",1),e("strong",null,a(o(Ue)(ue.value)),1)]),Rt(e("input",{"onUpdate:modelValue":t[3]||(t[3]=k=>ue.value=k),type:"range",min:0,max:Math.max(0,T.value-10),step:"1",class:"position-slider"},null,8,ya),[[Ut,ue.value,void 0,{number:!0}]]),e("div",xa,[t[15]||(t[15]=e("span",null,"0:00",-1)),e("span",null,a(o(Ue)(T.value)),1)])])):c("",!0)]),_:1}),R(Y,{name:"fade"},{default:F(()=>[z.value==="full"?(n(),r("div",ba,[t[16]||(t[16]=e("svg",{class:"full-scan-info-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e("circle",{cx:"12",cy:"12",r:"10"}),e("line",{x1:"12",y1:"8",x2:"12",y2:"12"}),e("line",{x1:"12",y1:"16",x2:"12.01",y2:"16"})],-1)),e("p",null,a(o(s)("uploadPage.fullScanInfo")),1)])):c("",!0)]),_:1}),R(Y,{name:"fade"},{default:F(()=>[E.value?(n(),r("div",wa,[e("div",ka,[e("div",null,[e("p",Pa,a(o(s)("uploadPage.fullScanAdsTitle")),1),e("p",$a,a(o(s)("uploadPage.fullScanAdsDesc")),1)]),T.value?(n(),r("span",Sa,a(o(Ue)(T.value)),1)):c("",!0)]),e("div",Ca,[e("div",Aa,[e("span",Ma,a(o(s)("uploadPage.fullScanAdsProgress",{watched:W.value,total:he.value})),1),e("span",Ra,a(ye.value?o(s)("uploadPage.fullScanAdsDone"):`${he.value-W.value} ${o(s)("uploadPage.fullScanAdsRemaining")}`),1)]),e("div",Ua,[(n(!0),r(Te,null,Be(he.value,k=>(n(),r("div",{key:k,class:ie(["fsa-dot",k<=W.value?"fsa-dot-done":k===W.value+1&&I.value?"fsa-dot-active":"fsa-dot-pending"])},[k<=W.value?(n(),r("svg",Ta,[...t[17]||(t[17]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"3",d:"M5 13l4 4L19 7"},null,-1)])])):(n(),r("span",Ba,a(k),1))],2))),128))])]),_e.value==="blocker"?(n(),r("div",Fa,[e("p",La,a(o(s)("uploadPage.fullScanAdsBlockerTitle")),1),e("p",za,a(o(s)("uploadPage.fullScanAdsBlockerDesc")),1),e("button",{class:"fsa-retry",disabled:I.value,onClick:ze},a(o(s)("uploadPage.fullScanAdsRetry")),9,Da)])):_e.value==="consent"?(n(),r("div",Ea,[e("p",ja,a(o(s)("uploadPage.fullScanAdsConsentTitle")),1),e("p",Ia,a(o(s)("uploadPage.fullScanAdsConsentDesc")),1),e("button",{class:"fsa-retry fsa-retry-red",disabled:I.value,onClick:ze},a(o(s)("uploadPage.fullScanAdsRetry")),9,Oa)])):c("",!0)])):c("",!0)]),_:1}),e("div",qa,[E.value&&!ye.value?(n(),r("button",{key:0,type:"button",class:"identify-btn",disabled:I.value||ve.value,onClick:ze},[I.value?(n(),r("svg",Va,[...t[18]||(t[18]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"},null,-1)])])):(n(),r("svg",Wa,[...t[19]||(t[19]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"},null,-1),e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])])),D(" "+a(I.value?o(s)("uploadPage.fullScanWatching"):o(s)("uploadPage.fullScanWatchBtn")),1)],8,Na)):(n(),r("button",{key:1,type:"button",class:"identify-btn",disabled:ve.value,onClick:_t},[z.value==="quick"?(n(),r("svg",Ha,[...t[20]||(t[20]=[e("polygon",{points:"13,2 3,14 12,14 11,22 21,10 12,10"},null,-1)])])):(n(),r("svg",Qa,[...t[21]||(t[21]=[e("circle",{cx:"11",cy:"11",r:"8"},null,-1),e("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"}
1,null,-1)])])),D(" "+a(z.value==="quick"?o(s)("uploadPage.identifyBtn"):o(s)("uploadPage.fullScanBtn")),1)],8,Ga))]),E.value&&!ye.value?(n(),pe(re,{key:0,to:o(_)("/pricing"),class:"mt-3 flex items-center gap-3 rounded-xl border border-purple-100 bg-gradient-to-r from-violet-50 to-indigo-50 px-4 py-3 no-underline transition-opacity hover:opacity-90"},{default:F(()=>[t[22]||(t[22]=e("div",{class:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-purple-500"},[e("svg",{class:"h-4 w-4 text-white",fill:"currentColor",viewBox:"0 0 20 20","aria-hidden":"true"},[e("path",{d:"M11.3 1.046A1 1 0 0112 2v5h4a1 1 0 01.82 1.573l-7 10A1 1 0 018 18v-5H4a1 1 0 01-.82-1.573l7-10a1 1 0 011.12-.38z"})])],-1)),e("div",Ka,[e("p",Ja,[D(a(o(s)("proUpgradeBanner.cta"))+" ",1),e("span",Xa,"â "+a(o(s)("pricing.pro_f5")),1)]),e("p",Ya,a(o(s)("proUpgradeBanner.no_ads")),1)]),t[23]||(t[23]=e("svg",{class:"h-4 w-4 shrink-0 text-purple-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","aria-hidden":"true"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1))]),_:1},8,["to"])):c("",!0)])):c("",!0)]),_:1}),R(Y,{name:"fade"},{default:F(()=>[ae.value?(n(),r("div",Za,[se.value>0?(n(),r("div",eo,[(n(),r("svg",to,[t[24]||(t[24]=e("defs",null,[e("linearGradient",{id:"uploadCountdownGrad",x1:"0%",y1:"0%",x2:"100%",y2:"0%"},[e("stop",{offset:"0%","stop-color":"#2f6fe4"}),e("stop",{offset:"100%","stop-color":"#7c3aed"})])],-1)),e("circle",{cx:"60",cy:"60",r:Ie,class:"countdown-ring__track"}),e("circle",{cx:"60",cy:"60",r:Ie,class:"countdown-ring__progress","stroke-dasharray":We,"stroke-dashoffset":ot.value},null,8,so)])),e("span",ao,a(se.value),1)])):(n(),r("div",oo,[...t[25]||(t[25]=[e("div",{class:"polling-spinner w-12 h-12"},null,-1)])])),e("p",lo,a(o(s)("uploadPage.analyzing")),1),lt.value?(n(),r("div",no,[e("button",{class:"ad-close-btn",title:o(s)("adUpgradeModal.closeAdTip"),onClick:t[4]||(t[4]=k=>Ce.value=!0)},"â",8,ro),t[26]||(t[26]=e("div",{id:"ezoic-pub-ad-placeholder-115"},null,-1))])):c("",!0)])):c("",!0)]),_:1}),R(Y,{name:"fade"},{default:F(()=>[Pe.value&&!ae.value?(n(),r("div",io,[t[27]||(t[27]=e("div",{class:"polling-spinner"},null,-1)),e("p",null,a(o(s)("uploadPage.analyzing")),1)])):c("",!0)]),_:1}),R(Y,{name:"slide-up"},{default:F(()=>[te.value!==null?(n(),r("div",uo,[R(xe,{mode:$e.value,results:te.value,"history-saved":me.value},null,8,["mode","results","history-saved"]),R(ce),nt.value?(n(),r("div",co,[e("div",po,[e("button",{class:"ad-close-btn",title:o(s)("adUpgradeModal.closeAdTip"),onClick:t[5]||(t[5]=k=>Ce.value=!0)},"â",8,vo),t[28]||(t[28]=e("div",{id:"ezoic-pub-ad-placeholder-115"},null,-1))])])):c("",!0),e("div",fo,[e("button",{type:"button",class:"action-btn action-btn-secondary",onClick:Re},a(o(s)("uploadPage.actions.identifyAnother")),1)])])):c("",!0)]),_:1}),R(Y,{name:"fade"},{default:F(()=>[fe.value?(n(),r("div",mo,[e("div",go,[e("p",_o,a(o(s)("uploadPage.noMusicTitle")),1),e("p",ho,a(o(s)("uploadPage.noMusicDesc")),1)]),e("div",yo,[e("button",{type:"button",class:"action-btn action-btn-secondary",onClick:Re},a(o(s)("uploadPage.actions.tryAnother")),1)])])):c("",!0)]),_:1}),S.value?(n(),r("div",xo,[R(O,{"upload-file":S.value,onRetry:Xe},null,8,["upload-file"])])):c("",!0),$.value==="error"?(n(),r("div",bo,[e("button",{type:"button",class:"action-btn action-btn-primary",onClick:Xe},a(o(s)("uploadPage.actions.retryUpload")),1),e("button",{type:"button",class:"action-btn action-btn-secondary",onClick:Re},a(o(s)("uploadPage.actions.chooseAnother")),1)])):c("",!0),$.value==="error"&&!o(d)?(n(),r("div",wo,[e("p",ko,a(o(s)("uploadPage.recheck.subtitle")),1),t[29]||(t[29]=e("div",{id:"turnstile-upload",class:"mt-3 flex justify-center"},null,-1)),o(p)?(n(),r("p",Po,a(o(p)),1)):c("",!0)])):c("",!0),t[30]||(t[30]=e("div",{id:"video_ad_aha_music_scan_file",class:"mt-8"},null,-1))])]),R(f,{type:"rectangle",position:"section-mid","min-height":250,"placeholder-id":"ezoic-pub-ad-placeholder-102"}),e("section",$o,[e("h2",So,a(o(s)("uploadPage.how_title")),1),e("p",Co,a(o(s)("uploadPage.how_subtitle")),1),e("div",Ao,[e("div",Mo,[t[31]||(t[31]=e("div",{class:"w-14 h-14 bg-blue-100 rounded-full flex items-center justify-center mx-auto mb-4"},[e("span",{class:"text-2xl"},"ð")],-1)),e("h3",Ro,a(o(s)("uploadPage.how_step1_title")),1),e("p",Uo,a(o(s)("uploadPage.how_step1_desc")),1
1)]),e("div",To,[t[32]||(t[32]=e("div",{class:"w-14 h-14 bg-purple-100 rounded-full flex items-center justify-center mx-auto mb-4"},[e("span",{class:"text-2xl"},"â¡")],-1)),e("h3",Bo,a(o(s)("uploadPage.how_step2_title")),1),e("p",Fo,a(o(s)("uploadPage.how_step2_desc")),1)]),e("div",Lo,[t[33]||(t[33]=e("div",{class:"w-14 h-14 bg-emerald-100 rounded-full flex items-center justify-center mx-auto mb-4"},[e("span",{class:"text-2xl"},"ð")],-1)),e("h3",zo,a(o(s)("uploadPage.how_step3_title")),1),e("p",Do,a(o(s)("uploadPage.how_step3_desc")),1)])])]),R(f,{type:"leaderboard",position:"section-mid2","min-height":90,"placeholder-id":"ezoic-pub-ad-placeholder-109"}),e("section",Eo,[e("div",jo,[e("h2",Io,a(o(s)("uploadPage.features_title")),1),e("p",Oo,a(o(s)("uploadPage.features_subtitle")),1),e("div",qo,[(n(),r(Te,null,Be(6,k=>e("div",{key:k,class:"border border-gray-100 rounded-xl p-6 hover:shadow-md transition-shadow"},[e("div",No,a(it[k-1]),1),e("h3",Vo,a(o(s)(`uploadPage.feature${k}_title`)),1),e("p",Wo,a(o(s)(`uploadPage.feature${k}_desc`)),1)])),64))])])]),R(f,{type:"rectangle",position:"section-mid3","min-height":250,"placeholder-id":"ezoic-pub-ad-placeholder-110"}),e("section",Go,[e("div",Ho,[e("h2",Qo,a(o(s)("uploadPage.faq_title")),1),e("p",Ko,a(o(s)("uploadPage.faq_subtitle")),1),e("div",Jo,[(n(),r(Te,null,Be(10,k=>e("details",{key:k,class:"seo-faq-item"},[e("summary",null,a(o(s)(`uploadPage.faqs.q${k}`)),1),e("p",null,a(o(s)(`uploadPage.faqs.a${k}`)),1)])),64))])])]),R(f,{type:"rectangle",position:"section-bottom","min-height":250,"placeholder-id":"ezoic-pub-ad-placeholder-103"}),R(G,null,{default:F(()=>[R(q,{modelValue:Ce.value,"onUpdate:modelValue":t[6]||(t[6]=k=>Ce.value=k)},null,8,["modelValue"]),R(Ee,{modelValue:o(Q),"onUpdate:modelValue":t[7]||(t[7]=k=>Tt(Q)?Q.value=k:null)},null,8,["modelValue"])]),_:1})])}}}),rl=Fe(Yo,[["__scopeId","data-v-1f79282b"]]);export{rl as default};
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.