PageSourceSearch

https://tg10x.com/_assets/resources-Dcke1WyM.js

js tg10x.com collected 2026-10-02 00:35:10 UTC 20,883 bytes, 1 lines download raw bytes

1import{bZ as ye,dX as Se,bG as ce,d8 as ke,aQ as Te,d7 as Ie,d6 as de,r as g,s as y,j as e,X as G,dV as me,o as q,K as Be,k as X,d9 as Ce,da as Pe,c3 as Ae,e as De,m as Fe,c5 as K,bs as Q,di as Re,aA as Ue,L as J,aD as Le,dU as We,G as Me,t as Ve}from"./vendor-DCKdIk_f.js";import{u as Oe,a as Ee}from"./useResourceLikes-C9f-GVQS.js";import{u as ue}from"./useDebounce-CmYCTunm.js";import{w as ee,x as ae,y as se,z as te,E as re,C as ne,$ as he,n as M,B as u,T as $e,Z as Ge,a as He,u as Ye,af as Ze,ag as qe,ah as Xe,aH as Ke,aI as $,c as D,A as Qe,d as Je,e as ea,P as aa,f as sa,g as W,h as ta,i as ra,j as na,S as F}from"./index-BDzfgULb.js";import{a as la,c as ia}from"./useResources-D74equfI.js";import{T as oa,a as ca,b as le}from"./Tabs-jEhTBoKH.js";import{u as da,C as ie}from"./index.esm-BuCsGRCd.js";import{s as ma}from"./zod-vnqmtOMR.js";import{u as ua}from"./useLinkPreview-mbARpMd3.js";import{u as ha}from"./useUploadImage-BvOKQMbA.js";import{u as pa}from"./useImageDrop-DHzfrFgZ.js";import{S as oe}from"./Spinner-CwCuwTV8.js";import"./index-LnDYIs4y.js";import"./compressImage-BHJhYvWG.js";import"./useCallbackRef-6aZLL_rv.js";const V=[{value:"book",label:"Books",icon:ye},{value:"video",label:"Videos",icon:Se},{value:"article",label:"Articles",icon:ce},{value:"podcast",label:"Podcasts",icon:ke},{value:"course",label:"Courses",icon:Te},{value:"tool",label:"Tools",icon:Ie},{value:"other",label:"Other",icon:de}],pe={completed:"Completed",currently_engaging:"Currently Engaging",recommended:"Recommended"};function _e(b){if(!b)return null;const j=/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|&v=)([^#&?]*).*/,h=b.match(j);return h&&h[2].length===11?`https://img.youtube.com/vi/${h[2]}/hqdefault.jpg`:null}const _a="_formContainer_60g8z_1",ga="_isDragging_60g8z_14",xa="_dragOverlay_60g8z_19",fa="_formTitle_60g8z_52",ba="_formRow_60g8z_59",ja="_formGroup_60g8z_71",va="_label_60g8z_77",wa="_errorText_60g8z_83",Na="_urlLabelWrapper_60g8z_89",za="_thumbnailPreviewWrapper_60g8z_95",ya="_thumbnailPreview_60g8z_95",Sa="_thumbnailRemoveBtn_60g8z_113",ka="_fileUploadWrapper_60g8z_125",Ta="_fileList_60g8z_132",Ia="_uploadBtn_60g8z_139",Ba="_filePreview_60g8z_143",Ca="_fileName_60g8z_153",Pa="_removeFileBtn_60g8z_162",Aa="_formActions_60g8z_170",r={formContainer:_a,isDragging:ga,dragOverlay:xa,formTitle:fa,formRow:ba,formGroup:ja,label:va,errorText:wa,urlLabelWrapper:Na,thumbnailPreviewWrapper:za,thumbnailPreview:ya,thumbnailRemoveBtn:Sa,fileUploadWrapper:ka,fileList:Ta,uploadBtn:Ia,filePreview:Ba,fileName:Ca,removeFileBtn:Pa,formActions:Aa},Da=q({type:X(Ge,{errorMap:()=>({message:"Please select a resource type"})}),title:y().min(1,"Title is required").max(255,"Title is too long"),author:y().max(255).optional(),url:Ce([Pe(""),y().url("Must be a valid URL")]).optional(),thumbnailUrl:y().optional().nullable(),description:y().max(2e3,"Description is too long").optional(),status:X(he,{errorMap:()=>({message:"Please select a status"})}),files:Be(q({fileUrl:y(),fileName:y()})).max(10,"Maximum 10 files allowed").optional()}),Fa=({onSuccess:b,onCancel:j})=>{const h=la(),{mutateAsync:S,isPending:o}=ha(),x=g.useRef(null),t=da({resolver:ma(Da),defaultValues:{type:"book",title:"",author:"",url:"",thumbnailUrl:"",description:"",status:"recommended",files:[]}}),w=t.watch("url"),c=t.watch("thumbnailUrl"),f=ue(w,500),T=!!(f&&y().url().safeParse(f).success),{data:p,isFetching:R}=ua(T?f:null),I=g.useRef(null),i=async n=>{try{const l=t.getValues("files")||[];if(l.length>=10)return;const z=await S({file:n,folder:"resources"});t.setValue("files",[...l,{fileUrl:z.url,fileName:n.name}]),n.type.startsWith("image/")&&!t.getValues("thumbnailUrl")&&t.setValue("thumbnailUrl",z.url)}catch{}},{isDragging:k,dropProps:v}=pa({onFiles:n=>{n.length>0&&i(n[0])},accept:["image/jpeg","image/png","image/gif","image/webp"],maxFiles:1,disabled:o,containerRef:I});g.useEffect(()=>{if(T&&f&&(f.includes("youtube.com")||f.includes("youtu.be"))){t.setValue("type","video");const l=_e(f);l&&!t.getValues("thumbnailUrl")&&t.setValue("thumbnailUrl",l)}},[f,T,t]),g.useEffect(()=>{p&&(!t.getValues("title")&&p.title&&t.setValue("title",p.title,{shouldValidate:!0}),!t.getValues("description")&&p.description&&t.setValue("description",p.description,{shouldValidate:!0}),!t.getValues("thumbnailUrl")&&p.imageUrl&&t.setValue("thumbnailUrl",p.imageUrl))},[p,t]);const O=async n=>{const l=n.target.files?.[0];l&&(await i(l),x.current&&(x.current.value=""))},N=n=>{h.mutate({type:n.type,title:n.title,author:n.author||null,url:n.url||null,thumbnailUrl:n.thumbnailUrl||null,description:n.description||null,status:n.status,files:n.files?.length?n.files:void 0},{onSuccess:()=>{t.reset(),b()}})};return e.jsxs("form",{ref:I,onSubmit:t.handleSubmit(N),className:`${r.formContainer} ${k?r.isDragging:""}`,...v,children:[k&&e.jsx("div",{className:r.dragOverlay,children:"Drop image here..."}),e.jsx("h4",{className:r.formTitle,children:"Add a Resource"}),e.jsxs("div",{className:r.formRow,children:[e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"Resource Type"}
1),e.jsx(ie,{control:t.control,name:"type",render:({field:n})=>e.jsxs(ee,{value:n.value,onValueChange:n.onChange,children:[e.jsx(ae,{children:e.jsx(se,{placeholder:"Select type"})}),e.jsx(te,{children:e.jsx(re,{children:V.map(l=>e.jsx(ne,{value:l.value,children:l.label},l.value))})})]})}),t.formState.errors.type&&e.jsx("span",{className:r.errorText,children:t.formState.errors.type.message})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"Status"}),e.jsx(ie,{control:t.control,name:"status",render:({field:n})=>e.jsxs(ee,{value:n.value,onValueChange:n.onChange,children:[e.jsx(ae,{children:e.jsx(se,{placeholder:"Select status"})}),e.jsx(te,{children:e.jsx(re,{children:he.map(l=>e.jsx(ne,{value:l,children:pe[l]||l},l))})})]})}),t.formState.errors.status&&e.jsx("span",{className:r.errorText,children:t.formState.errors.status.message})]})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsxs("div",{className:r.urlLabelWrapper,children:[e.jsx("label",{className:r.label,children:"URL"}),R&&e.jsx(oe,{size:"sm"})]}),e.jsx(M,{...t.register("url"),placeholder:"https://...",type:"url"}),t.formState.errors.url&&e.jsx("span",{className:r.errorText,children:t.formState.errors.url.message}),c&&e.jsxs("div",{className:r.thumbnailPreviewWrapper,children:[e.jsx("img",{src:c,alt:"Thumbnail preview",className:r.thumbnailPreview}),e.jsx(u,{type:"button",variant:"destructive",size:"icon-sm",className:r.thumbnailRemoveBtn,onClick:()=>t.setValue("thumbnailUrl",""),children:e.jsx(G,{size:14})})]})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"File Attachments (Optional, max 10)"}),e.jsxs("div",{className:r.fileUploadWrapper,children:[e.jsx("div",{className:r.fileList,children:t.watch("files")?.map((n,l)=>e.jsxs("div",{className:r.filePreview,children:[e.jsx("span",{className:r.fileName,children:n.fileName}),e.jsx(u,{type:"button",variant:"ghost",size:"icon-sm",onClick:()=>{const z=t.getValues("files")||[];t.setValue("files",z.filter((P,U)=>U!==l))},className:r.removeFileBtn,children:e.jsx(G,{size:14})})]},l))}),(!t.watch("files")||t.watch("files").length<10)&&e.jsxs(e.Fragment,{children:[e.jsx("input",{type:"file",ref:x,style:{display:"none"},accept:"image/jpeg,image/png,image/gif,image/webp,application/pdf",onChange:O}),e.jsxs(u,{type:"button",variant:"outline",size:"sm",onClick:()=>x.current?.click(),disabled:o,className:r.uploadBtn,children:[o?e.jsx(oe,{size:"sm"}):e.jsx(me,{size:16}),o?"Uploading...":"Attach File"]})]})]}),t.formState.errors.files&&e.jsx("span",{className:r.errorText,children:t.formState.errors.files.message})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"Title"}),e.jsx(M,{...t.register("title"),placeholder:"E.g. Zero to One"}),t.formState.errors.title&&e.jsx("span",{className:r.errorText,children:t.formState.errors.title.message})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"Author / Creator (Optional)"}),e.jsx(M,{...t.register("author"),placeholder:"E.g. Peter Thiel"}),t.formState.errors.author&&e.jsx("span",{className:r.errorText,children:t.formState.errors.author.message})]}),e.jsxs("div",{className:r.formGroup,children:[e.jsx("label",{className:r.label,children:"Why recommend this? (Optional)"}),e.jsx($e,{...t.register("description"),placeholder:"Share what makes this resource valuable...",rows:3}),t.formState.errors.description&&e.jsx("span",{className:r.errorText,children:t.formState.errors.description.message})]}),e.jsxs("div",{className:r.formActions,children:[e.jsx(u,{type:"button",variant:"ghost",onClick:j,disabled:h.isPending||o,children:"Cancel"}),e.jsx(u,{type:"submit",disabled:h.isPending||o,children:h.isPending?"Adding...":"Add Resource"})]})]})},Ra="_container_1awz0_1",Ua="_header_1awz0_18",La="_headerTop_1awz0_24",Wa="_mobileAddFab_1awz0_37",Ma="_headerTextWrapper_1awz0_42",Va="_desktopAddBtn_1awz0_46",Oa="_title_1awz0_63",Ea="_subtitle_1awz0_72",$a="_controls_1awz0_88",Ga="_tabsWrapper_1awz0_106",Ha="_tabsList_1awz0_118",Ya="_tabTrigger_1awz0_123",Za="_tabIcon_1awz0_130",qa="_controlsRight_1awz0_134",Xa="_collapsibleSearch_1awz0_150",Ka="_searchOpen_1awz0_157",Qa="_expandedSearchWra
1pper_1awz0_168",Ja="_expandedSearchIcon_1awz0_187",es="_expandedSearchInput_1awz0_195",as="_clearSearchBtn_1awz0_202",ss="_sortBtn_1awz0_209",ts="_activeFilterDot_1awz0_213",rs="_content_1awz0_224",ns="_resultsHeader_1awz0_230",ls="_resultsCount_1awz0_236",is="_updatingText_1awz0_241",os="_grid_1awz0_253",cs="_card_1awz0_271",ds="_thumbnailWrapper_1awz0_287",ms="_thumbnail_1awz0_287",us="_thumbnailOverlay_1awz0_306",hs="_thumbnailFallback_1awz0_313",ps="_fallbackIcon_1awz0_323",_s="_overlayBadge_1awz0_327",gs="_badgeIcon_1awz0_348",xs="_cardBody_1awz0_352",fs="_cardHeader_1awz0_360",bs="_headerBadges_1awz0_366",js="_statusBadge_1awz0_373",vs="_pdfBadge_1awz0_382",ws="_cardTitle_1awz0_391",Ns="_cardAuthor_1awz0_403",zs="_cardDesc_1awz0_409",ys="_cardMainLink_1awz0_421",Ss="_cardFooter_1awz0_429",ks="_userInfo_1awz0_438",Ts="_userLink_1awz0_444",Is="_userName_1awz0_452",Bs="_avatar_1awz0_457",Cs="_userDetails_1awz0_462",Ps="_sharedDate_1awz0_478",As="_cardActionsContainer_1awz0_488",Ds="_likeBtn_1awz0_494",Fs="_liked_1awz0_505",Rs="_likeIcon_1awz0_513",Us="_cardActions_1awz0_488",Ls="_editBtn_1awz0_528",Ws="_editIcon_1awz0_540",Ms="_deleteBtn_1awz0_544",Vs="_deleteIcon_1awz0_556",Os="_cardSkeleton_1awz0_560",Es="_skeletonImage_1awz0_567",$s="_skeletonContent_1awz0_573",Gs="_emptyState_1awz0_577",Hs="_emptyIcon_1awz0_589",Ys="_emptyTitle_1awz0_595",Zs="_emptyDesc_1awz0_603",qs="_paginationWrapper_1awz0_608",Xs="_ellipsis_1awz0_614",Ks="_disabledPagination_1awz0_619",a={container:Ra,header:Ua,headerTop:La,mobileAddFab:Wa,headerTextWrapper:Ma,desktopAddBtn:Va,title:Oa,subtitle:Ea,controls:$a,tabsWrapper:Ga,tabsList:Ha,tabTrigger:Ya,tabIcon:Za,controlsRight:qa,collapsibleSearch:Xa,searchOpen:Ka,expandedSearchWrapper:Qa,expandedSearchIcon:Ja,expandedSearchInput:es,clearSearchBtn:as,sortBtn:ss,activeFilterDot:ts,content:rs,resultsHeader:ns,resultsCount:ls,updatingText:is,grid:os,card:cs,thumbnailWrapper:ds,thumbnail:ms,thumbnailOverlay:us,thumbnailFallback:hs,fallbackIcon:ps,overlayBadge:_s,badgeIcon:gs,cardBody:xs,cardHeader:fs,headerBadges:bs,statusBadge:js,pdfBadge:vs,cardTitle:ws,cardAuthor:Ns,cardDesc:zs,cardMainLink:ys,cardFooter:Ss,userInfo:ks,userLink:Ts,userName:Is,avatar:Bs,userDetails:Cs,sharedDate:Ps,cardActionsContainer:As,likeBtn:Ds,liked:Fs,likeIcon:Rs,cardActions:Us,editBtn:Ls,editIcon:Ws,deleteBtn:Ms,deleteIcon:Vs,cardSkeleton:Os,skeletonImage:Es,skeletonContent:$s,emptyState:Gs,emptyIcon:Hs,emptyTitle:Ys,emptyDesc:Zs,paginationWrapper:qs,ellipsis:Xs,disabledPagination:Ks};function Qs(b){const h=new Date(b).getTime()-Date.now(),S=Math.round(h/1e3),o=new Intl.RelativeTimeFormat("en",{numeric:"auto"});if(Math.abs(S)<60)return o.format(S,"second");const x=Math.round(S/60);if(Math.abs(x)<60)return o.format(x,"minute");const t=Math.round(x/60);if(Math.abs(t)<24)return o.format(t,"hour");const w=Math.round(t/24);if(Math.abs(w)<30)return o.format(w,"day");const c=Math.round(w/30);return Math.abs(c)<12?o.format(c,"month"):o.format(Math.round(w/365),"year")}function pt(){const b=He(),[j,h]=Ae(),S=De(),o=j.get("type")||"all",x=j.get("search")||"",t=parseInt(j.get("page")||"1",10),w=j.get("sort")||"newest",[c,f]=g.useState(o),[T,p]=g.useState(x),[R,I]=g.useState(!!x),[i,k]=g.useState(t),[v,O]=g.useState(w),N=ue(T,500),n=12,{authState:l}=Ye(),[z,P]=g.useState(!1),U=ia(),E=Oe(),ge=l.type==="authenticated"&&l.user.role==="admin",xe=(s,_)=>{if(s.preventDefault(),s.stopPropagation(),l.type!=="authenticated"){Ve.error("Please log in to like resources");return}E.mutate({resourceId:_})},fe=(s,_)=>{s.preventDefault(),s.stopPropagation(),window.confirm("Are you sure you want to delete this resource?")&&U.mutate({id:_})},H=()=>{P(!0)};g.useEffect(()=>{const s=new URLSearchParams;c!=="all"&&s.set("type",c),N&&s.set("search",N),i>1&&s.set("page",i.toString()),v!=="newest"&&s.set("sort",v),h(s,{replace:!0})},[c,N,i,v,h]),g.useEffect(()=>{k(1)},[N,c,v]);const{data:A,isLoading:L,isFetching:be}=Ee({page:i,limit:n,search:N||void 0,type:c==="all"?void 0:c,sortBy:v}),B=A?Math.ceil(A.totalCount/n):0,je=s=>{f(s)},ve=()=>e.jsx("div",{className:a.grid,children:[1,2,3,4,5,6].map(s=>e.jsxs("div",{className:a.cardSkeleton,children:[e.jsx(F,{className:a.skeletonImage}),e.jsxs("div",{className:a.skeletonContent,children:[e.jsx(F,{style:{width:"40%",height:"1.25rem",marginBottom:"0.5rem"}}),e.jsx(F,{style:{width:"80%",height:"1.5rem",marginBottom:"0.5rem"}}),e.jsx(F,{style:{width:"60%",height:"1rem",marginBottom:"1rem"}}),e.jsx(F,{style:{width:"100%",height:"3rem"}})]})]},s))});return e.jsxs("div",{className:a.container,children:[e.jsxs(Fe,{children:[e.jsxs("title",{children:["Resources & Recommendations | ",b.name]}),e.jsx("meta",{name:"description",content:`Discover books, videos, podcasts, and other resources shared by the ${b.name} community.`})]}),e.jsx("header",{className:a.header,children:e.jsxs("div",{className:a.headerTop,children:[e.jsxs("div",{className:a.headerTextWrapper,children:[e.jsx("h1",{className:a.title,children:"Resources & Recommendations"}),e.jsx("p",{className:a.subtitle,children:"Books, videos, podcasts and more shared by the community"})]}),l.type==="authenticated"&&!z&&e.jsxs(u,{onClick:H,className:a.desktopAddBtn,children:[e.jsx(K,{size:16})," Add Resource"]})]})}),z&&e.jsx(Fa,{onCancel:()=>P(!1),onSuccess:()=>P(!1)}),e.jsxs("div",{className:a.controls,children:[e.jsx("div",{className:a.tabsWrapper,children:e.jsx(oa,{value:c,onValueChange:je,children:e.jsxs(ca,{className:a.tabsList,children:[e.jsx(le,{value:"all",children:"All"}),V.map(s=>e.jsxs(le,{value:s.value,className:a.tabTrigger,children:[e.jsx(s.icon,{size:16,className:a.tabIcon}),e.jsx("span",{children:s.label})]},s.value))]})})}),e.jsxs("div",{className:a.controlsRight,children:[e.jsx("div",{className:`${a.collapsibleSearch} ${R?a.searchOpen:""}
1`,children:R?e.jsxs("div",{className:a.expandedSearchWrapper,children:[e.jsx(Q,{size:18,className:a.expandedSearchIcon}),e.jsx(M,{autoFocus:!0,placeholder:"Search resources...",className:a.expandedSearchInput,value:T,onChange:s=>p(s.target.value)}),e.jsx(u,{variant:"ghost",size:"icon-sm",className:a.clearSearchBtn,onClick:()=>{p(""),I(!1)},"aria-label":"Close search",children:e.jsx(G,{size:16})})]}):e.jsx(u,{variant:"ghost",size:"icon-md",onClick:()=>I(!0),"aria-label":"Open search",children:e.jsx(Q,{size:18})})}),e.jsxs(Ze,{children:[e.jsx(qe,{asChild:!0,children:e.jsxs(u,{variant:"ghost",size:"icon-md",className:a.sortBtn,"aria-label":"Sort resources",children:[e.jsx(Re,{size:18}),v!=="newest"&&e.jsx("span",{className:a.activeFilterDot})]})}),e.jsx(Xe,{align:"end",children:e.jsxs(Ke,{value:v,onValueChange:O,children:[e.jsx($,{value:"newest",children:"Newest Added"}),e.jsx($,{value:"most_loved",children:"Most Loved"}),e.jsx($,{value:"oldest",children:"Oldest Added"})]})})]})]})]}),e.jsxs("div",{className:a.content,children:[e.jsx("div",{className:a.resultsHeader,children:e.jsxs("span",{className:a.resultsCount,children:[L?"Loading resources...":`${A?.totalCount||0} resources found`,be&&!L&&e.jsx("span",{className:a.updatingText,children:" (Updating...)"})]})}),L?ve():A?.resources.length===0?e.jsxs("div",{className:a.emptyState,children:[e.jsx(Ue,{size:48,className:a.emptyIcon}),e.jsx("h3",{className:a.emptyTitle,children:"No resources found"}),e.jsx("p",{className:a.emptyDesc,children:"Try adjusting your search or selecting a different category."}),(N||c!=="all")&&e.jsx(u,{variant:"outline",onClick:()=>{p(""),I(!1),f("all")},children:"Clear Filters"})]}):e.jsx("div",{className:a.grid,children:A?.resources.map(s=>{const _=V.find(m=>m.value===s.type)?.icon||de,d=V.find(m=>m.value===s.type)?.label||"Other",C=s.files?.length>0?s.files:s.fileUrl?[{fileUrl:s.fileUrl,fileName:s.fileName}]:[],Y=C.find(m=>m.fileUrl.match(/\.(jpeg|jpg|gif|png|webp)(\?.*)?$/i)),we=C.some(m=>m.fileUrl.match(/\.pdf(\?.*)?$/i)),Z=Y?Y.fileUrl:s.thumbnailUrl||_e(s.url),Ne=l.type==="authenticated"&&l.user.id===s.userId,ze=ge||Ne;return e.jsxs("div",{className:a.card,children:[e.jsxs(J,{to:`/resources/${s.id}`,className:a.cardMainLink,children:[Z?e.jsxs("div",{className:a.thumbnailWrapper,children:[e.jsx("img",{src:Z,alt:s.title,className:a.thumbnail,loading:"lazy"}),e.jsx("div",{className:a.thumbnailOverlay,children:e.jsxs(D,{variant:"secondary",className:a.overlayBadge,children:[e.jsx(_,{size:12,className:a.badgeIcon})," ",d]})})]}):e.jsxs("div",{className:a.thumbnailFallback,children:[e.jsx(_,{size:48,className:a.fallbackIcon}),e.jsx(D,{variant:"secondary",className:a.overlayBadge,children:d})]}),e.jsxs("div",{className:a.cardBody,children:[e.jsx("div",{className:a.cardHeader,children:e.jsxs("div",{className:a.headerBadges,children:[e.jsx(D,{variant:s.status==="completed"?"success":s.status==="recommended"?"primary":"outline",className:a.statusBadge,children:pe[s.status]||s.status}),we&&e.jsxs(D,{variant:"outline",className:a.pdfBadge,children:[e.jsx(ce,{size:12,className:a.badgeIcon})," PDF"]}),C.length>1&&e.jsxs(D,{variant:"outline",className:a.pdfBadge,children:[e.jsx(me,{size:12,className:a.badgeIcon})," ",C.length," files"]})]})}),e.jsx("h3",{className:a.cardTitle,children:s.title}),s.author&&e.jsxs("p",{className:a.cardAuthor,children:["by ",s.author]}),s.description&&e.jsx("p",{className:a.cardDesc,children:s.description})]})]}),e.jsxs("div",{className:a.cardFooter,children:[e.jsx("div",{className:a.userInfo,children:e.jsxs(J,{to:`/u/${s.user.slug||s.userId}`,className:a.userLink,children:[e.jsxs(Qe,{className:a.avatar,children:[e.jsx(Je,{src:s.user.avatarUrl||void 0}),e.jsx(ea,{children:s.user.displayName.charAt(0)})]}),e.jsxs("div",{className:a.userDetails,children:[e.jsx("span",{className:a.userName,children:s.user.displayName}),e.jsxs("span",{className:a.sharedDate,children:["Shared ",Qs(s.createdAt)]})]})]})}),e.jsxs("div",{className:a.cardActionsContainer,children:[e.jsxs(u,{variant:"ghost",size:"sm",className:`${a.likeBtn} ${s.isLiked?a.liked:""}`,onClick:m=>xe(m,s.id),"aria-label":s.isLiked?"Unlike resource":"Like resource",disabled:E.isPending&&E.variables?.resourceId===s.id,children:[e.jsx(Le,{size:16,className:a.likeIcon,fill:s.isLiked?"currentColor":"none"}),e.jsx("span",{children:s.likesCount||0})]}),ze&&e.jsxs("div",{className:a.cardActions,children:[e.jsx(u,{variant:"ghost",size:"icon-sm",className:a.editBtn,onClick:m=>{m.preventDefault(),m.stopPropagation(),S(`/resources/${s.id}?edit=true`)},"aria-label":"Edit resource",children:e.jsx(We,{size:16,className:a.editIcon})}),e.jsx(u,{variant:"ghost",size:"icon-sm",className:a.deleteBtn,onClick:m=>fe(m,s.id),disabled:U.isPending,"aria-label":"Delete resource",children:e.jsx(Me,{size:16,className:a.deleteIcon})})]})]})]})]},s.id)})}),!L&&B>1&&e.jsx("div",{className:a.paginationWrapper,children:e.jsx(aa,{children:e.jsxs(sa,{children:[e.jsx(W,{children:e.jsx(ta,{href:"#",onClick:s=>{s.preventDefault(),k(_=>Math.max(1,_-1))},"aria-disabled":i===1,className:i===1?a.disabledPagination:""})}),Array.from({length:B}).map((s,_)=>{const d=_+1;return d===1||d===B||d>=i-1&&d<=i+1?e.jsx(W,{children:e.jsx(ra,{href:"#",isActive:i===d,onClick:C=>{C.preventDefault(),k(d)},children:d})},d):d===i-2||d===i+2?e.jsx(W,{children:e.jsx("span",{className:a.ellipsis,children:"..."})},d):null}),e.jsx(W,{children:e.jsx(na,{href:"#",onClick:s=>{s.preventDefault(),k(_=>
1Math.min(B,_+1))},"aria-disabled":i===B,className:i===B?a.disabledPagination:""})})]})})})]}),l.type==="authenticated"&&!z&&e.jsx(u,{className:a.mobileAddFab,onClick:H,"aria-label":"Add Resource",children:e.jsx(K,{size:24})})]})}export{pt 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.