1import{Y as ae,u as se,G as te,t as i,c as m,aQ as ce,aR as re,aS as le,j as e,h as oe,aK as H,C as o,l as g,m as h,S as w,d as n,I as L,w as z,x as B,y as Q,z as $,A as u,B as C,$ as ne,q as P,V as D,ae as ie,T as E,ap as de,s as me}from"./index-JdcCQ3sc.js";import{S as R}from"./save-BhS9pJGd.js";function he(){const{t:pe}=ae();se();const{user:p}=te(),k=i.useUtils(),[j,I]=m.useState(""),[t,N]=m.useState([]),[S,v]=m.useState(""),[T,y]=m.useState(!1),[U,V]=m.useState("day"),[d,A]=m.useState(!1),{data:b}=i.pokemon.search.useQuery({query:j,limit:10},{enabled:j.length>0}),{data:x,refetch:M}=i.comparison.getPresets.useQuery(void 0,{enabled:!!p}),q=i.comparison.savePreset.useMutation({onSuccess:()=>{M(),y(!1),v(""),alert("Preset saved successfully!")}}),G=i.comparison.track.useMutation({onSuccess:a=>{if(a?.boltsEarned&&a.boltsEarned>0&&ce({amount:a.boltsEarned,label:"Memetic comparison"}),a?.leveledUp&&a.level){const s=re(a.level);s&&le({badgeName:s.name,badgeImageUrl:s.imageUrl,level:a.level,title:s.title})}}}),Y=i.comparison.deletePreset.useMutation({onSuccess:()=>{M()}}),{data:F}=i.comparison.getHistoricalScores.useQuery({pokemonIds:t.map(a=>a.id),period:U},{enabled:d&&t.length>0}),K=async a=>{if(t.length>=5){alert("You can compare up to 5 Pokémon");return}if(t.find(s=>s.id===a.id)){alert("This Pokémon is already selected");return}try{const s=await k.pokemon.getById.fetch({id:a.id});if(s.pokemon){const c=[...t,{id:s.pokemon.id,name:s.pokemon.name,spriteUrl:s.pokemon.spriteUrl,overallScore:a.overallScore||0,memeScore:a.memeScore||0,tradingScore:a.tradingScore||0,culturalScore:a.culturalScore||0}];N(c),p&&c.length>=2&&G.mutate({pokemonIds:c.map(l=>l.id)})}}catch(s){console.error("Failed to fetch Pokemon:",s)}I("")},O=a=>{N(t.filter(s=>s.id!==a))},W=()=>{if(!p){alert("Please log in to save presets");return}if(!S.trim()){alert("Please enter a preset name");return}if(t.length<2){alert("Select at least 2 Pokémon to save a preset");return}q.mutate({name:S,pokemonIds:t.map(a=>a.id)})},X=async a=>{const s=x?.find(c=>c.id===a);if(s)try{const c=[];for(const l of s.pokemonIds){const r=await k.pokemon.getById.fetch({id:l});r.pokemon&&r.score&&c.push({id:r.pokemon.id,name:r.pokemon.name,spriteUrl:r.pokemon.spriteUrl,overallScore:r.score.overallScore||0,memeScore:r.score.memePopularity||0,tradingScore:r.score.tradingValue||0,culturalScore:r.score.culturalSpread||0})}N(c)}catch(c){console.error("Failed to load preset:",c),alert("Failed to load preset")}},J=a=>{confirm("Are you sure you want to delete this preset?")&&Y.mutate({presetId:a})},Z=a=>{if(!F)return null;const s=F.find(ee=>ee.pokemonId===a);if(!s||s.history.length<2)return null;const c=s.history[s.history.length-1],l=s.history[0],r=c.overallScore-l.overallScore,_=(r/l.overallScore*100).toFixed(1);return{change:r,percentChange:_}},f=(a,s)=>{const c=Math.max(...s),l=Math.min(...s);return a===c&&s.length>1?"bg-green-500/20 font-bold text-green-400":a===l&&s.length>1?"bg-red-500/20 text-red-400":""};return e.jsxs(e.Fragment,{children:[e.jsx(oe,{"data-loc":"client/src/pages/Compare.tsx:210"}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:211",className:"container mx-auto py-8 space-y-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:213",className:"space-y-2",children:[e.jsxs("h1",{"data-loc":"client/src/pages/Compare.tsx:214",className:"text-4xl font-bold flex items-center gap-3",children:[e.jsx(H,{"data-loc":"client/src/pages/Compare.tsx:215",className:"h-10 w-10 text-yellow-500"}),"Pokémon Comparison"]}),e.jsx("p",{"data-loc":"client/src/pages/Compare.tsx:218",className:"text-muted-foreground text-lg",children:"Compare up to 5 Pokémon side-by-side to analyze their memetic scores and trends"})]}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:223",className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:225",className:"space-y-4",children:[e.jsxs(o,{"data-loc":"client/src/pages/Compare.tsx:227",children:[e.jsx(g,{"data-loc":"client/src/pages/Compare.tsx:228",children:e.jsxs(h,{"data-loc":"client/src/pages/Compare.tsx:229",className:"flex items-center gap-2",children:[e.jsx(w,{"data-loc":"client/src/pages/Compare.tsx:230",className:"h-5 w-5"}),"Search Pokémon"]})}),e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:234",className:"space-y-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:235",className:"relative",children:[e.jsx(w,{"data-loc":"client/src/pages/Compare.tsx:236",className:"absolute left-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(L,{"data-loc":"client/src/pages/Compare.tsx:237",placeholder:"Search by name or ID...",value:j,onChange:a=>I(a.target.value),className:"pl-10"})]}),j&&b&&b.length>0&&e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:247",className:"space-y-1 max-h-64 overflow-y-auto",children:b.map(a=>e.jsxs("button",{"data-loc":"client/src/pages/Compare.tsx:249",onClick:()=>K(a),className:"w-full text-left px-3 py-2 rounded hover:bg-accent transition-colors flex items-center justify-between",children:[e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:254",children:[e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:255",className:"font-medium capitalize",children:a.name}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:256",className:"text-sm text-muted-foreground",children:["Score: ",a.overallScore?.toFixed(1)||"N/A"]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:260",className:"text-xs text-muted-foreground",children:["#",a.id]})]},a.id))})]})]}),p&&x&&x.length>0&&e.jsxs(o,{"data-loc":"client/src/pages/Compare.tsx:270",children:[e.jsx(g,{"data-loc":"client/src/pages/Compare.tsx:271",children:e.jsxs(h,{"data-loc":"client/src/pages/Compare.tsx:272",className:"flex items-center gap-2",children:[e.jsx(R,{"data-loc":"client/src/pages/Compare.tsx:273",className:"h-5 w-5"}),"Saved Presets"]}
1)}),e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:277",className:"space-y-3",children:[e.jsxs(z,{"data-loc":"client/src/pages/Compare.tsx:278",onValueChange:a=>X(Number(a)),children:[e.jsx(B,{"data-loc":"client/src/pages/Compare.tsx:279",children:e.jsx(Q,{"data-loc":"client/src/pages/Compare.tsx:280",placeholder:"Load a preset..."})}),e.jsx($,{"data-loc":"client/src/pages/Compare.tsx:282",children:x.map(a=>e.jsxs(u,{"data-loc":"client/src/pages/Compare.tsx:284",value:String(a.id),children:[a.name," (",a.pokemonIds.length," Pokémon)"]},a.id))})]}),e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:290",className:"space-y-1",children:x.map(a=>e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:292",className:"flex items-center justify-between text-sm p-2 rounded hover:bg-accent",children:[e.jsx("span",{"data-loc":"client/src/pages/Compare.tsx:293",children:a.name}),e.jsx(C,{"data-loc":"client/src/pages/Compare.tsx:294",variant:"ghost",size:"sm",onClick:()=>J(a.id),className:"h-6 px-2",children:e.jsx(ne,{"data-loc":"client/src/pages/Compare.tsx:300",className:"h-3 w-3"})})]},a.id))})]})]}),t.length>=2&&e.jsxs(o,{"data-loc":"client/src/pages/Compare.tsx:311",children:[e.jsx(g,{"data-loc":"client/src/pages/Compare.tsx:312",children:e.jsxs(h,{"data-loc":"client/src/pages/Compare.tsx:313",className:"flex items-center gap-2",children:[e.jsx(P,{"data-loc":"client/src/pages/Compare.tsx:314",className:"h-5 w-5"}),"Historical Trends"]})}),e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:318",className:"space-y-3",children:[e.jsxs(C,{"data-loc":"client/src/pages/Compare.tsx:319",variant:d?"default":"outline",onClick:()=>A(!d),className:"w-full",children:[d?"Hide":"Show"," Trends"]}),d&&e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:327",className:"space-y-2",children:[e.jsx(D,{"data-loc":"client/src/pages/Compare.tsx:328",className:"text-xs",children:"Time Period"}),e.jsxs(z,{"data-loc":"client/src/pages/Compare.tsx:329",value:U,onValueChange:a=>V(a),children:[e.jsx(B,{"data-loc":"client/src/pages/Compare.tsx:333",children:e.jsx(Q,{"data-loc":"client/src/pages/Compare.tsx:334"})}),e.jsxs($,{"data-loc":"client/src/pages/Compare.tsx:336",children:[e.jsx(u,{"data-loc":"client/src/pages/Compare.tsx:337",value:"hour",children:"Last Hour"}),e.jsx(u,{"data-loc":"client/src/pages/Compare.tsx:338",value:"day",children:"Last 24 Hours"}),e.jsx(u,{"data-loc":"client/src/pages/Compare.tsx:339",value:"week",children:"Last Week"}),e.jsx(u,{"data-loc":"client/src/pages/Compare.tsx:340",value:"month",children:"Last Month"})]})]})]})]})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:351",className:"lg:col-span-2 space-y-4",children:[t.length>0&&e.jsxs(o,{"data-loc":"client/src/pages/Compare.tsx:354",children:[e.jsx(g,{"data-loc":"client/src/pages/Compare.tsx:355",children:e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:356",className:"flex items-center justify-between",children:[e.jsxs(h,{"data-loc":"client/src/pages/Compare.tsx:357",children:["Selected Pokémon (",t.length,"/5)"]}),p&&t.length>=2&&e.jsxs(C,{"data-loc":"client/src/pages/Compare.tsx:361",variant:"outline",size:"sm",onClick:()=>y(!T),className:"gap-2",children:[e.jsx(R,{"data-loc":"client/src/pages/Compare.tsx:367",className:"h-3 w-3"}),"Save Preset"]})]})}),e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:373",className:"space-y-4",children:[T&&e.jsx(o,{"data-loc":"client/src/pages/Compare.tsx:376",className:"border-2 border-primary",children:e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:377",className:"p-4 space-y-3",children:[e.jsx(D,{"data-loc":"client/src/pages/Compare.tsx:378",children:"Preset Name"}),e.jsx(L,{"data-loc":"client/src/pages/Compare.tsx:379",placeholder:"e.g., Gen 1 Starters",value:S,onChange:a=>v(a.target.value)}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:384",className:"flex gap-2",children:[e.jsx(C,{"data-loc":"client/src/pages/Compare.tsx:385",onClick:W,className:"flex-1",children:"Save"}),e.jsx(C,{"data-loc":"client/src/pages/Compare.tsx:388",variant:"outline",onClick:()=>{y(!1),v("")},children:"Cancel"})]})]})}),e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:403",className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 ga
1p-3",children:t.map(a=>e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:405",className:"relative bg-accent rounded-lg p-3 text-center",children:[e.jsx("button",{"data-loc":"client/src/pages/Compare.tsx:409",onClick:()=>O(a.id),className:"absolute top-1 right-1 hover:bg-destructive/20 rounded-full p-1",children:e.jsx(ie,{"data-loc":"client/src/pages/Compare.tsx:413",className:"h-3 w-3"})}),a.spriteUrl&&e.jsx("img",{"data-loc":"client/src/pages/Compare.tsx:416",src:a.spriteUrl,alt:a.name,className:"w-20 h-20 mx-auto"}),e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:422",className:"font-medium capitalize text-sm mt-1",children:a.name}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:425",className:"text-xs text-muted-foreground",children:["#",a.id]})]},a.id))})]})]}),t.length>=2?e.jsxs(o,{"data-loc":"client/src/pages/Compare.tsx:437",children:[e.jsx(g,{"data-loc":"client/src/pages/Compare.tsx:438",children:e.jsxs(h,{"data-loc":"client/src/pages/Compare.tsx:439",className:"flex items-center gap-2",children:[e.jsx(E,{"data-loc":"client/src/pages/Compare.tsx:440",className:"h-5 w-5 text-yellow-500"}),"Score Comparison"]})}),e.jsx(n,{"data-loc":"client/src/pages/Compare.tsx:444",children:e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:445",className:"overflow-x-auto",children:e.jsxs("table",{"data-loc":"client/src/pages/Compare.tsx:446",className:"w-full border-collapse",children:[e.jsx("thead",{"data-loc":"client/src/pages/Compare.tsx:447",children:e.jsxs("tr",{"data-loc":"client/src/pages/Compare.tsx:448",className:"border-b",children:[e.jsx("th",{"data-loc":"client/src/pages/Compare.tsx:449",className:"text-left p-3 font-medium",children:"Metric"}),t.map(a=>e.jsxs("th",{"data-loc":"client/src/pages/Compare.tsx:451",className:"text-center p-3",children:[a.spriteUrl&&e.jsx("img",{"data-loc":"client/src/pages/Compare.tsx:453",src:a.spriteUrl,alt:a.name,className:"w-16 h-16 mx-auto mb-1"}),e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:459",className:"font-medium capitalize",children:a.name}),e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:460",className:"text-xs text-muted-foreground",children:["#",a.id]})]},a.id))]})}),e.jsxs("tbody",{"data-loc":"client/src/pages/Compare.tsx:465",children:[e.jsxs("tr",{"data-loc":"client/src/pages/Compare.tsx:466",className:"border-b",children:[e.jsxs("td",{"data-loc":"client/src/pages/Compare.tsx:467",className:"p-3 font-medium flex items-center gap-2",children:[e.jsx(E,{"data-loc":"client/src/pages/Compare.tsx:468",className:"h-4 w-4 text-yellow-500"}),"Overall Score"]}),t.map(a=>{const s=d?Z(a.id):null;return e.jsxs("td",{"data-loc":"client/src/pages/Compare.tsx:474",className:`text-center p-3 ${f(a.overallScore,t.map(c=>c.overallScore))}`,children:[e.jsx("div",{"data-loc":"client/src/pages/Compare.tsx:481",className:"text-lg font-bold",children:a.overallScore.toFixed(1)}),s&&e.jsxs("div",{"data-loc":"client/src/pages/Compare.tsx:483",className:`text-xs mt-1 flex items-center justify-center gap-1 ${s.change>=0?"text-green-500":"text-red-500"}`,children:[s.change>=0?e.jsx(P,{"data-loc":"client/src/pages/Compare.tsx:484",className:"h-3 w-3"}):e.jsx(de,{"data-loc":"client/src/pages/Compare.tsx:484",className:"h-3 w-3"}),Math.abs(Number(s.percentChange)),"%"]})]},a.id)})]}),e.jsxs("tr",{"data-loc":"client/src/pages/Compare.tsx:492",className:"border-b",children:[e.jsxs("td",{"data-loc":"client/src/pages/Compare.tsx:493",className:"p-3 font-medium flex items-center gap-2",children:[e.jsx(me,{"data-loc":"client/src/pages/Compare.tsx:494",className:"h-4 w-4 text-red-500"}),"Meme Score"]}),t.map(a=>e.jsx("td",{"data-loc":"client/src/pages/Compare.tsx:498",className:`text-center p-3 ${f(a.memeScore,t.map(s=>s.memeScore))}`,children:a.memeScore.toFixed(1)},a.id))]}),e.jsxs("tr",{"data-loc":"client/src/pages/Compare.tsx:509",className:"border-b",children:[e.jsxs("td",{"data-loc":"client/src/pages/Compare.tsx:510",className:"p-3 font-medium flex items-center gap-2",children:[e.jsx(H,{"data-loc":"client/src/pages/Compare.tsx:511",className:"h-4 w-4 text-green-500"}),"Trading Score"]}),t.map(a=>e.jsx("td",{"data-loc":"client/src/pages/Compare.tsx:515",className:`text-center p-3 ${f(a.tradingScore,t.map(s=>s.tradingScore))}`,children:a.tradingScore.toFixed(1)},a.id))]}),e.jsxs("tr",{"data-loc":"client/src/pages/Compare.tsx:526",children:[e.jsxs("td",{"data-loc":"client/src/pages/Compare.tsx:527",className:"p-3 font-medium flex items-center gap-2",children:[e.jsx(P,{"data-loc":"client/src/pages/Compare.tsx:528",className:"h-4 w-4 text-blue-500"}),"Cultural Score"]}),t.map(a=>e.jsx("td",{"data-loc":"client/src/pages/Compare.tsx:532",className:`text-center p-3 ${f(a.culturalScore,t.map(s=>s.culturalScore))}`,children:a.culturalScore.toFixed(1)},a.id))]})]})]})})})]}):t.length===1?e.jsx(o,{"data-loc":"client/src/pages/Compare.tsx:549",children:e.jsx(n,{"data-loc":"client/src/pages/Compare.tsx:550",className:"text-center py-16",children:e.jsx("p",{"data-loc":"client/src/pages/Compare.tsx:551",className:"text-muted-foreground",children:"Select at least one more Pokémon to start comparing"})})}):e.jsx(o,{"data-loc":"client/src/pages/Compare.tsx:557",children:e.jsxs(n,{"data-loc":"client/src/pages/Compare.tsx:558",className:"text-center py-16",children:[e.jsx(w,{"data-loc":"client/src/pages/Compare.tsx:559",className:"h-16 w-16 mx-auto mb-4 text-muted-foreground"}),e.jsx("p",{"data-loc":"client/src/pages/Compare.tsx:560",className:"text-muted-foreground text-lg",children:"Search and select Pokémon to start comparing"})]})})]})]})]})]})}export{he 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.