1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1880],{31060:(e,t,l)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/recommendations",function(){return l(45297)}])},45297:(e,t,l)=>{"use strict";l.r(t),l.d(t,{default:()=>y});var n=l(37876),a=l(57994),r=l(18480),o=l(14232),s=l(67768),i=l(88798),c=l(16495),d=l(5641),u=l(19596),m=l(89099),j=l(34321);let x={recommendations:()=>["recommendations","projects"],scrollPosition:()=>["recommendations","scroll-position"]};var h=l(48187);let g=()=>(0,n.jsx)("div",{className:"space-y-4",children:Array.from("12345").map((e,t)=>(0,n.jsx)(h.A.ProjectCard,{},"skeleton-".concat(2*t)))});var p=l(34217),v=l(93988);let P=()=>{let e=(0,o.useRef)(),t=(0,s.jE)(),{recommendationsFeed:l,getFeedData:a}=(()=>{let e=(0,m.useRouter)(),{profileHandle:t}=e.query||{},l=(0,u.q)({queryKey:x.recommendations(),enabled:e.isReady,getNextPageParam:e=>{if(null==e?void 0:e.nextPage)return{page:e.nextPage}},queryFn:async l=>{var n,a,r,o,s;let{pageParam:i}=l;t=t||(null==(n=e.query)?void 0:n.profileHandle);let c=(null==i?void 0:i.page)||1,d=await j.HX.getProjectRecommendations({limit:20,page:c,profileHandle:t}),u=(null==d||null==(r=d.data)||null==(a=r.data)?void 0:a.projects)||[],m=null==d||null==(s=d.data)||null==(o=s.data)?void 0:o.nextPage;return{projects:u,isEmpty:!(null==u?void 0:u.length),nextPage:m}}});return{recommendationsFeed:l,getFeedData:()=>{var e,t;return null==l||null==(t=l.data)||null==(e=t.pages)?void 0:e.flatMap(e=>null==e?void 0:e.projects)}}})(),r=t.getQueryData(x.scrollPosition()),h=()=>{var l;null==e||null==(l=e.current)||l.getState(e=>{t.setQueryData(x.scrollPosition(),e)})},P=a();return(0,n.jsxs)("div",{children:[(null==P?void 0:P.length)>0?(0,n.jsx)(i.aY,{ref:e,useWindowScroll:!0,data:P,totalCount:null==P?void 0:P.length,itemContent:(e,t)=>(0,n.jsx)("div",{role:"none",onClick:h,children:(0,n.jsx)(d.A.ProjectCard,{project:t,withBorder:!1,prefetch:!1})}),endReached:()=>{(null==l?void 0:l.hasNextPage)&&l.fetchNextPage()},restoreStateFrom:r}):null,(null==l?void 0:l.isFetching)?(0,n.jsx)(g,{}):null,(null==l?void 0:l.isFetching)||(null==P?void 0:P.length)?null:(0,n.jsx)(p.A.EmptyState,{title:"No project recommendations available.",description:"We will show you personalized project recommendations here.",icon:(0,n.jsx)(v.A,{src:c.CDNImage.emptyInboxSearchResult,className:"size-20"})})]})},f=()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(r.A,{title:"Project Recommendations | Peerlist"}),(0,n.jsxs)(a.A.Center,{children:[(0,n.jsx)(a.A.CenterTop,{internalPage:!0,children:(0,n.jsx)("div",{className:"flex justify-between items-center w-full",children:(0,n.jsxs)("div",{className:"flex items-center gap-1",children:[(0,n.jsx)(a.A.BackButton,{}),(0,n.jsx)(a.A.PageHeading,{children:"Project Recommendations"})]})})}),(0,n.jsx)(P,{})]})]}),y=()=>(0,n.jsx)(f,{})}},e=>{e.O(0,[8798,636,6593,8792],()=>e(e.s=31060)),_N_E=e.O()}]);
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.