1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2385],{57086:(e,t,s)=>{s.d(t,{A:()=>i});var r=s(79040);let i=(0,s(59372).memo)(({children:e,variant:t="primary",size:s="md",className:i="",isLoading:a,noFlex:l=!1,type:o="button",...n})=>{let c=`group relative font-medium transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-orange-500 focus-visible:ring-offset-2 focus-visible:ring-offset-[#0a0a0a] disabled:opacity-50 disabled:cursor-not-allowed interactable overflow-hidden ${l?"inline-block":"inline-flex items-center justify-center"}`,d="disabled:opacity-60 disabled:cursor-not-allowed disabled:pointer-events-none disabled:transform-none",x={primary:`rounded-full bg-white text-black hover:bg-gray-200 shadow-[0_0_15px_rgba(255,255,255,0.1)] hover:scale-105 active:scale-95 ${d}`,secondary:`rounded-full bg-white/5 text-white hover:bg-white/10 border border-white/10 hover:border-white/20 hover:scale-105 active:scale-95 ${d}`,outline:`rounded-full border border-white/10 text-white hover:border-white/20 hover:bg-white/5 hover:scale-105 active:scale-95 ${d}`,ghost:`rounded-full text-gray-400 hover:text-white hover:bg-white/5 ${d}`,link:`text-gradient hover:opacity-80 hover:underline ${d}`,icon:`rounded-lg bg-white/5 text-slate-400 hover:text-white hover:bg-white/10 border border-white/10 ${d}`,danger:`rounded-full bg-rose-500/10 text-rose-400 hover:bg-rose-500/20 border border-rose-500/20 hover:border-rose-500/30 ${d}`};return(0,r.jsxs)("button",{type:o,className:`${c} ${x[t]} ${"link"===t?"text-sm font-medium":({xs:"px-2 py-1 text-[10px]",sm:"px-3 py-1 text-xs",md:"px-4 py-2 text-xs font-semibold",lg:"px-6 py-2.5 text-sm font-semibold",icon:"p-2"})[s]} ${i}`,disabled:a||n.disabled,"aria-busy":a||void 0,...n,children:["link"!==t&&"ghost"!==t&&(0,r.jsx)("div",{className:"absolute inset-0 bg-linear-to-r from-transparent via-white/20 to-transparent -translate-x-full group-hover:translate-x-full transition-transform duration-1000"}),a?(0,r.jsxs)("span",{className:"relative flex items-center gap-2",children:[(0,r.jsx)("div",{className:"w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}),"Processing..."]}):e]})})},82385:(e,t,s)=>{s.d(t,{A:()=>k});var r=s(79040),i=s(59372),a=s(97198),l=s(76759),o=s(59335),n=s(70722),c=s(81667),d=s(70287),x=s.n(d),p=s(7597),u=s(94307),m=s(53810),h=s(57086),b=s(62677);let g=(0,i.memo)(({product:e,productHref:t,handleClick:s,imageError:i,setImageError:a,isCompact:l,isHovered:o,handleAction:n,handleWishlistToggle:c,isWishlisted:d,isPopular:g})=>(0,r.jsxs)("div",{className:`w-full relative overflow-hidden rounded-xl bg-white/[0.03] shrink-0 ${l?"mb-2.5 aspect-[16/9]":"mb-3 aspect-[16/10]"}`,children:[i?(0,r.jsxs)(x(),{href:t,onClick:s,className:"absolute inset-0 z-0 flex flex-col items-center justify-center bg-slate-800/50 text-slate-500 focus:outline-none focus-visible:ring-2 focus-visible:ring-orange-400","aria-label":`View ${e.title}`,children:[(0,r.jsx)("svg",{className:"w-8 h-8 mb-1",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z"})}),(0,r.jsx)("span",{className:"text-xs text-slate-300",children:"Image unavailable"})]}):(0,r.jsx)(x(),{href:t,onClick:s,className:"absolute inset-0 z-0 block focus:outline-none focus-visible:ring-2 focus-visible:ring-orange-400","aria-label":`View ${e.title}`,children:(0,r.jsx)(b.Ay,{src:e.image,alt:e.title,aspectRatio:"auto",rounded:"none",containerClassName:"absolute inset-0 w-full h-full",className:"transform group-hover:scale-[1.04] transition-transform duration-700 ease-out object-cover w-full h-full",onError:()=>a(!0)})}),(0,r.jsx)("div",{className:`absolute inset-0 z-20 bg-gradient-to-t from-black/80 via-black/30 to-transparent flex items-end justify-between transition-opacity duration-300 ${l?"p-2.5":"p-3"} ${o?"opacity-100 pointer-events-auto":"opacity-0 pointer-events-none"}`,children:(0,r.jsx)("div",{className:"flex gap-2",children:(0,r.jsxs)("button",{onClick:n,className:`flex items-center gap-1.5 rounded-full bg-white/95 text-black shadow-xl transition-all hover:scale-105 hover:bg-white active:scale-95 btn-elastic ${l?"px-2.5 py-1.5 text-xs":"px-3 py-1.5 text-xs"}`,children:[(0,r.jsx)(p.A,{size:12,strokeWidth:3}),e.isFree?"Get Free":"Get This"]})})}),(0,r.jsx)("div",{className:"absolute top-2 left-2 z-30",children:(0,r.jsx)(h.A,{variant:"icon",size:"icon",onClick:c,"aria-label":d?"Remove from wishlist":"Add to wishlist","aria-pressed":d,className:`w-[44px] h-[44px] rounded-full backdrop-blur-md shadow-lg flex items-center justify-center focus:outline-none focus-visible:ring-2 focus-visible:ring-orange-400 transition-all duration-300 ${d?"bg-rose-500 text-white ring-2 ring-rose-400/50 scale-110":"bg-black/40 text-white/80 hover:bg-black/60 hover:text-white hover:scale-110"}`,children:(0,r.jsx)(u.A,{size:13,className:d?"fill-current":""})})}),(0,r.jsxs)("div",{className:"absolute top-2 right-2 z-30 flex flex-col gap-1.5 items-end",children:[e.isFree&&(0,r.jsx)("div",{className:"bg-gradient-to-r from-emerald-500 to-emerald-600 text-white px-2.5 py-0.5 rounded-full text-[9px] font-extrabold shadow-lg shadow-emerald-500/30 tracking-wider up
1percase",children:"Free"}),g&&!e.isFree&&(0,r.jsxs)("div",{className:"badge-popular inline-flex items-center gap-1",children:[(0,r.jsx)(m.A,{size:9}),"Popular"]})]})]}));var f=s(67869),v=s(38533),w=s(25455);let j=(0,i.memo)(({text:e,query:t})=>{if(!t||!t.trim())return(0,r.jsx)(r.Fragment,{children:e});let s=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=e.split(RegExp(`(${s})`,"gi"));return(0,r.jsx)(r.Fragment,{children:i.map((e,s)=>e.toLowerCase()===t.toLowerCase()?(0,r.jsx)("span",{className:"bg-yellow-600/50 text-yellow-100 rounded px-0.5",children:e},s):e)})});j.displayName="HighlightedText";let N=(0,i.memo)(({product:e,productHref:t,handleClick:s,highlightQuery:i,isCompact:a,publicDownloadLabel:l,hasRealReviews:o,downloadStats:n,formatPrice:c})=>(0,r.jsxs)("div",{className:`flex-1 flex flex-col ${a?"px-0.5 pb-0.5":"px-1.5 pb-1"}`,children:[(0,r.jsxs)("div",{className:`flex items-center justify-between ${a?"mb-1":"mb-1.5"}`,children:[(0,r.jsx)("p",{className:`truncate pr-2 font-semibold uppercase tracking-[0.12em] text-orange-200 ${a?"text-[9px]":"text-xs"}`,children:e.category}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsxs)("span",{className:`inline-flex items-center gap-1 text-slate-400 ${a?"text-[9px]":"text-xs"}`,children:[(0,r.jsx)(f.A,{size:10,className:"text-slate-500"}),l]}),o?(0,r.jsxs)("div",{className:"flex items-center gap-1 shrink-0 text-xs",children:[(0,r.jsx)(v.A,{size:a?10:11,fill:"currentColor",className:"text-amber-400"}),(0,r.jsx)("span",{className:"font-bold text-white",children:Number(e.rating).toFixed(1).replace(/\.0$/,"")})]}):(0,r.jsx)("span",{className:"text-[9px] text-emerald-400/80 font-bold uppercase tracking-wider bg-emerald-500/10 px-1.5 py-0.5 rounded-sm",title:"No reviews yet",children:"New"})]})]}),(0,r.jsx)("h3",{className:`font-bold leading-snug text-white transition-colors group-hover:text-orange-50 ${a?"mb-1.5 text-[14px] line-clamp-2 min-h-[2.7rem]":"mb-2 text-[15px] line-clamp-1"}`,title:e.title,children:(0,r.jsx)(x(),{href:t,onClick:s,className:"rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-orange-400 focus-visible:ring-offset-2 focus-visible:ring-offset-[#0a0a0c]",children:(0,r.jsx)(j,{text:e.title,query:i})})}),i&&(0,r.jsx)("p",{className:`text-slate-300 line-clamp-2 leading-relaxed ${a?"mb-1.5 text-xs":"mb-2 text-xs"}`,children:(0,r.jsx)(j,{text:e.description,query:i})}),(0,r.jsxs)("div",{className:`mt-auto flex flex-wrap gap-1.5 ${a?"mb-2.5":"mb-3"}`,children:[e.frameworks?.slice(0,a?2:3).map(e=>(0,r.jsx)("span",{className:`whitespace-nowrap rounded-md border border-white/[0.06] bg-white/[0.04] font-medium text-slate-200 ${a?"px-2 py-0.5 text-[9px]":"px-2 py-0.5 text-xs"}`,children:(0,r.jsx)(j,{text:e,query:i})},e)),e.frameworks&&e.frameworks.length>(a?2:3)&&(0,r.jsxs)("span",{className:`rounded-md bg-white/[0.04] font-medium text-slate-200 ${a?"px-2 py-0.5 text-[9px]":"px-2 py-0.5 text-xs"}`,children:["+",e.frameworks.length-(a?2:3)]})]}),n&&n.downloadCount>0&&(0,r.jsx)("div",{className:"flex items-center gap-3 mb-2",children:(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)(f.A,{size:10,className:"text-slate-500"}),(0,r.jsx)("span",{className:"text-xs text-slate-500",children:n.downloadCount.toLocaleString()})]})}),(0,r.jsxs)("div",{className:`mt-auto flex items-center justify-between border-t border-white/[0.06] ${a?"pt-2":"pt-2.5"}`,children:[(0,r.jsx)("div",{className:"flex items-baseline gap-1.5",children:(0,r.jsx)("span",{className:`font-extrabold tracking-tight ${e.isFree?"text-emerald-400":"text-white"} ${a?"text-[17px]":"text-lg"}`,children:e.isFree?"Free":c(e.price)})}),(0,r.jsxs)(x(),{href:t,onClick:s,className:"group/view flex items-center gap-1 font-semibold text-orange-200 transition-colors hover:text-orange-100 min-h-[48px] min-w-[48px] p-2 -m-2 justify-end text-xs",children:["Details",(0,r.jsx)(w.A,{size:12,className:"group-hover/view:translate-x-0.5 group-hover/view:-translate-y-0.5 transition-transform"})]})]})]})),y=new Intl.NumberFormat("en",{notation:"compact",maximumFractionDigits:1}),k=(0,i.memo)(({product:e,onClick:t,onProductClick:s,highlightQuery:d,variant:x="default",downloadStats:p})=>{let u=(0,i.useMemo)(()=>(0,n.X4)(e),[e]),m=(0,i.useCallback)(()=>{(0,c.x)("template_click",{productId:e.id,productName:e.title,category:e.category,price:e.price,isFree:!!e.isFree}),t&&t(),s&&s(e)},[t,s,e]),{addToCart:h,wishlist:b,toggleWishlist:f,addNotification:v}=(0,o.qu)(),[w,j]=(0,i.useState)(!1),[k,$]=(0,i.useState)(!1),{user:C}=(0,a.A)(),{formatPrice:F}=(0,l.H2)(),z=b.includes(e.id),A="compact"===x,_=e.downloadCount||0,L=y.format(_),P=(e.reviewCount||0)>0&&Number(e.rating||0)>0,E=_>=100,M=(0,i.useCallback)(t=>{t.stopPropagation(),(0,c.x)("cart_add",{productId:e.id,productName:e.title,category:e.category,price:e.price,source:"product_card"}),h(e)},[h,e]),H=(0,i.useCallback)(t=>{t.stopPropagation(),C?.id?f(e.id,C.id):(f(e.id),v("Login to sync your wishlist across devices","info"))},[f,e.id,C?.id,v]),R=(0,i.useCallback)(e=>{let t=e.currentTarget.getBoundingClientRect(),s=(e.clientX-t.left)/t.width*100,r=(e.clientY-t.top)/t.height*100;e.currentTarget.style.setProperty("--ripple-x",`${s}%`),e.currentTarget.style.setProperty("--ripple-y",`${r}%`)},[]);return(0,r.jsxs)("div",{role:"article",className:`group relative overflow-hidden rounded-2xl transition-all duration-500 ease-out h-full flex flex-col card-ripple ${A?"rounded-[22px]":""}`,onMouseEnter:()=>$(!0),onMouseLeave:()=>$(!1),onMouseMove:R,"aria-label":`View ${e.title} - ${e.isFree?"Free":F(e.price)}`,children:[(0,r.jsx)("div",{className:"absolute -inset-px rounded-2xl bg-gradient-to-b from-orange-500/20 via-orange-500/5 to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-500 pointer-events-none"}),(0,r.jsxs)("div",{className:`relative rounded-2xl border border-white/[0.06] bg-[#0a0a0c]/85 backdrop-blur-md transition-all duration-500 h-full flex flex-col group-hover:-translate-y-1 group-hover:border-white/[0.12] group-hover:shadow-[0_20px_60px_-15px_rgba(0,0,0,0.7)] ${A?"p-2.5":"p-2"}`,children:[(0,r.jsx)("div",{className:"border-shine"}),(0,r.jsx)(g,{product:e,productHref:u,handleClick:m,imageError:w,setImageError:j,isCompact:A,isHovered:k,handleAction:M,handleWishlistToggle:H,isWishlisted:z,isPopular:E}),(0,r.jsx)(N,{product:e,productHref:u,handleClick:m,highlightQuery:d,isCompact:A,publicDownloadLabel:L,hasRealReviews:P,downloadStats:p,formatPrice:F})]})]})})}}]);
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.