PageSourceSearch

https://etoile-du-sahel.com/assets/equipes-DQaIg_1a.js

js etoile-du-sahel.com collected 2026-09-24 23:56:59 UTC 4,836 bytes, 1 lines download raw bytes

1import{j as e}from"./index-CilPTjPQ.js";import{c,u as x,p as u}from"./safeRedirect-dPyefGdf.js";import{S as m}from"./SiteLayout-B48bqjXK.js";import{E as i,p as l}from"./page-empty-states-ClJnTPdo.js";import{M as p}from"./MediaImage-klgu6QL0.js";import{p as f,a as h,P as g}from"./player-card-bg-BWAN3_AH.js";import{T as b,a as j,b as y,c as N}from"./tabs-DkPgRY9p.js";const v=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],w=c("shield",v);const k=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],d=c("users",k);function o(s){return`${s.firstName} ${s.lastName}`.trim()}function n({member:s,variant:t}){const a=t==="player";return e.jsxs("article",{className:"overflow-hidden rounded-xl border border-border bg-white shadow-sm",children:[e.jsxs("div",{className:`relative aspect-[3/4] ${a?h:"bg-gradient-to-br from-ess-red to-ess-red-dark"}`,style:a?f:void 0,children:[e.jsx(p,{src:s.photoUrl,alt:o(s),label:t==="player"?s.number??"—":s.role??"STAFF",className:"absolute inset-0 h-full w-full object-cover object-top"}),a&&s.number?e.jsx("p",{className:"absolute top-4 left-4 z-10 font-display text-4xl font-bold text-white drop-shadow",children:s.number}):null,a?e.jsx(g,{firstName:s.firstName,lastName:s.lastName,size:"compact"}):null]}),a?null:e.jsxs("div",{className:"p-4",children:[e.jsx("p",{className:"font-display text-lg font-bold leading-tight",children:o(s)}),s.role?e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:s.role}):null]})]})}function q({team:s}){return e.jsxs("div",{children:[e.jsxs("div",{className:"mb-8 flex items-center gap-4 border-b border-border pb-6",children:[s.logoUrl?e.jsx(p,{src:s.logoUrl,label:s.name,className:"h-14 w-14 rounded-full"}):null,e.jsxs("div",{children:[e.jsx("h2",{className:"font-display text-2xl font-bold",children:s.name}),e.jsxs("p",{className:"mt-1 text-sm text-muted-foreground",children:[s.players.length," joueur",s.players.length!==1?"s":""," ·"," ",s.staff.length," staff"]})]})]}),s.players.length>0?e.jsxs("div",{className:"mb-10",children:[e.jsx("h3",{className:"mb-4 text-xs font-bold uppercase tracking-wider text-ess-red",children:"Joueurs"}),e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 gap-4",children:s.players.map(t=>e.jsx(n,{member:t,variant:"player"},t.id))})]}):e.jsx(i,{compact:!0,title:l.equipesPlayers.title,description:l.equipesPlayers.description,icon:d,className:"mb-10"}),s.staff.length>0?e.jsxs("div",{children:[e.jsx("h3",{className:"mb-4 text-xs font-bold uppercase tracking-wider text-ess-red",children:"Staff"}),e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 gap-4",children:s.staff.map(t=>e.jsx(n,{member:t,variant:"staff"},t.id))})]}):e.jsx(i,{compact:!0,title:l.equipesStaff.title,description:l.equipesStaff.description,icon:d})]})}function U(){const{data:s=[],isLoading:t}=x({queryKey:["public-equipes"],queryFn:u.equipes}),a=s[0]?.id??"";return e.jsxs(m,{children:[e.jsxs("section",{className:"relative bg-ess-red text-white overflow-hidden",children:[e.jsx("div",{className:"absolute inset-0 bg-gradient-to-b from-ess-black/30 via-ess-black/60 to-ess-black"}),e.jsxs("div",{className:"relative mx-auto max-w-[1400px] px-4 pt-12 pb-12 min-h-[120px] flex flex-col justify-end",children:[e.jsx("h1",{className:"font-display text-5xl md:text-7xl font-bold tracking-tight",children:"ÉQUIPES"}),e.jsx("p",{className:"mt-4 max-w-2xl text-sm md:text-base text-white/85",children:"Toutes les sections sportives de l'ES SAHEL et leurs effectifs."})]}),e.jsx("div",{className:"h-2 bg-ess-red"})]}),e.jsx("section",{className:"mx-auto max-w-[1400px] px-4 py-14",children:t?e.jsx("p",{className:"text-sm text-muted-foreground",children:"Chargement…"}
1):s.length===0?e.jsx(i,{title:l.equipes.title,description:l.equipes.description,icon:w}):e.jsxs(b,{defaultValue:a,children:[e.jsx("div",{className:"mb-8 overflow-x-auto scrollbar-hide border-b border-border",children:e.jsx(j,{className:"h-auto w-max min-w-full justify-start gap-0 rounded-none bg-transparent p-0",children:s.map(r=>e.jsx(y,{value:r.id,className:"rounded-none border-b-2 border-transparent px-5 py-3 font-display text-sm font-semibold uppercase tracking-wider text-muted-foreground shadow-none data-[state=active]:border-ess-red data-[state=active]:bg-transparent data-[state=active]:text-ess-red",children:r.name},r.id))})}),s.map(r=>e.jsx(N,{value:r.id,className:"mt-0 focus-visible:ring-0",children:e.jsx(q,{team:r})},r.id))]},a)})]})}export{U as component};

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.