PageSourceSearch

https://pvppcoe-va-official.vercel.app/assets/industry-connect-CXTo2D2y.js

js pvppcoe-va-official.vercel.app collected 2026-10-03 07:35:41 UTC 80,634 bytes, 1 lines download raw bytes

1import{C as Z,r as C,b as $,t as p,j as e,L as A,X as Qe,ag as ps,ah as js,T as vs,l as ys,n as Le,o as he,p as _s,q as ge}from"./index-CZ63uMbh.js";import{T as fs,a as Ns,b as re,c as le}from"./tabs-CPpXip4z.js";import{u as D}from"./useMutation-Dav0WHC3.js";import{k as bs,u as Cs,i as ws,n as Ss,j as Fs,o as ks,p as Is,q as Ms,a as Rs,b as Es,c as Ds,r as Ts,s as zs,t as As,v as Ge,w as qs,x as Ps,d as Ls,e as Gs,f as Os,h as Bs,y as Ks,z as Us,A as Qs,B as Oe,C as $s,D as Js,E as Be,F as Hs,G as Ys,H as Ke,g as Vs,I as Xs,J as Ue,K as Ws,l as Zs,m as ea,L as sa,M as aa,N as ta,O as na}from"./industryConnect-jyOGUF-g.js";import{B as d}from"./button-DV0NliWQ.js";import{I as h}from"./input-BC0o4X8c.js";import{L as y}from"./label-CKNSLP0Y.js";import{T as ee}from"./textarea-Y3i3GBH6.js";import{I as J}from"./ImageUploadField-fJlz6cuE.js";import{t as te,s as ia}from"./upload-BRhr03PS.js";import{C as L,a as G,b as O,e as ne,d as B}from"./card-eMmN0GeS.js";import{S as W}from"./save-BCa7L4Tl.js";import{P}from"./plus-BnZdi9Hx.js";import{T as Q}from"./trash-2-DPLUX5Ix.js";import{D as $e,l as Je,a as He,b as Ye,c as Ve,m as Xe}from"./dialog--uVrPao_.js";import{M as ye,G as ra}from"./minus-D3H3AWiM.js";import{u as _e,a as de,s as fe,K as Ne,P as be,D as Ce,c as we,S as Se,r as la,d as Fe,C as ke,b as Ie,v as We}from"./sortable.esm-BpcaQf32.js";import{F as Me}from"./file-text-NuoNOC4p.js";import{S as Ze}from"./square-pen-BGqe2gY0.js";import{g as es,u as ss}from"./carousels-BRfpSTQx.js";import{G as ca}from"./globe-uRzZ4sOi.js";import{G as as}from"./grip-vertical-DeagH-qV.js";import{C as ts}from"./chevron-up-D_GtNfQM.js";import{E as ns}from"./eye-D_OiQdrA.js";import{I as da}from"./image-DiVLcfll.js";import{g as oa,a as ma,f as ua,h as xa,i as ha}from"./cms-CHV9TDEn.js";import{B as ve}from"./briefcase-BwBy2pq2.js";import"./index-Cr2ioHNk.js";import"./index-B6kdtPCW.js";import"./index-BZncbyvf.js";import"./index-Gc50gddj.js";import"./link-wkDP2otK.js";import"./cloud-upload-CwgMQBfS.js";function ga(){const l=Z(),[s,c]=C.useState({logo_url:"",description:"",timetable_image_url:"",council_members:[]}),{data:o,isLoading:F}=$({queryKey:["edCellSettings"],queryFn:()=>bs()});C.useEffect(()=>{o&&c({logo_url:o.logo_url||"",description:o.description||"",timetable_image_url:o.timetable_image_url||"",council_members:o.council_members||[]})}
1,[o]);const m=D({mutationFn:N=>Cs({data:N}),onSuccess:(N,n)=>{l.invalidateQueries({queryKey:["edCellSettings"]}),n.logo_url&&te(n.logo_url,"industry_edcell","logo_url",1),n.timetable_image_url&&te(n.timetable_image_url,"industry_edcell","timetable_image_url",1),p.success("ED-Cell settings updated successfully")},onError:N=>{p.error(`Error updating settings: ${N.message}`)}}),_=()=>{m.mutate(s)},f=()=>{c({...s,council_members:[...s.council_members,{name:"",member_type:"",role:""}]})},M=N=>{const n=[...s.council_members];n.splice(N,1),c({...s,council_members:n})},I=(N,n,w)=>{const j=[...s.council_members];j[N]={...j[N],[n]:w},c({...s,council_members:j})};return F?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"ED-Cell Settings"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Entrepreneurship Development Cell content"})]}),e.jsxs(d,{onClick:_,disabled:m.isPending,children:[m.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Save Changes"]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx(J,{label:"Header Logo URL",value:s.logo_url,onChange:N=>c({...s,logo_url:N}),note:"Recommended Resolution: 400x400px (Transparent PNG). Max size: 10MB."}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Description"}),e.jsx(ee,{rows:4,value:s.description,onChange:N=>c({...s,description:N.target.value}),placeholder:"Enter ED-Cell description..."})]})]}),e.jsx("div",{className:"space-y-4",children:e.jsx(J,{label:"Timetable Image URL",value:s.timetable_image_url,onChange:N=>c({...s,timetable_image_url:N}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."})})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx(O,{children:"Council Members"}),e.jsx(ne,{children:"Manage ED-Cell council members dynamically"})]}),e.jsxs(d,{variant:"outline",size:"sm",onClick:f,children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Member"]})]})}),e.jsx(B,{className:"space-y-4",children:s.council_members.length===0?e.jsx("div",{className:"text-center p-4 border border-dashed rounded-lg text-muted-foreground",children:'No council members added. Click "Add Member" to start.'}):s.council_members.map((N,n)=>e.jsxs("div",{className:"flex gap-4 items-end p-4 border rounded-lg bg-muted/20",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-4 flex-1",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Name"}),e.jsx(h,{value:N.name,onChange:w=>I(n,"name",w.target.value),placeholder:"e.g. John Doe"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Member Type"}),e.jsx(h,{value:N.member_type,onChange:w=>I(n,"member_type",w.target.value),placeholder:"e.g. Faculty/Student"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Role"}),e.jsx(h,{value:N.role,onChange:w=>I(n,"role",w.target.value),placeholder:"e.g. Coordinator"})]})]}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>M(n),children:e.jsx(Q,{className:"h-4 w-4"})})]},n))})]})]})}function pa(){const l=Z(),[s,c]=C.useState({logo_url:"",description:"",certificate_image_url:"",gallery_title:"",gallery_description:"",major_focus:[],functions:[],council_members:[]}),{data:o,isLoading:F}=$({queryKey:["iicSettings"],queryFn:()=>ws()});C.useEffect(()=>{o&&c({logo_url:o.logo_url||"",description:o.description||"",certificate_image_url:o.certificate_image_url||"",gallery_title:o.gallery_title||"",gallery_description:o.gallery_description||"",major_focus:o.major_focus||[],functions:o.functions||[],council_members:(o.council_members||[]).map(t=>typeof t=="string"?JSON.parse(t):t)})},[o]);const m=D({mutationFn:t=>Ss({data:t}),onSuccess:(t,i)=>
1{l.invalidateQueries({queryKey:["iicSettings"]}),i.logo_url&&te(i.logo_url,"industry_iic","logo_url",1),i.certificate_image_url&&te(i.certificate_image_url,"industry_iic","certificate_image_url",1),p.success("IIC settings updated successfully")},onError:t=>{p.error(`Error updating settings: ${t.message}`)}}),_=()=>{m.mutate(s)},f=t=>{c({...s,[t]:[...s[t],""]})},M=(t,i,k)=>{const x=[...s[t]];x[i]=k,c({...s,[t]:x})},I=(t,i)=>{const k=[...s[t]];k.splice(i,1),c({...s,[t]:k})},[N,n]=C.useState(!1),w=()=>{c({...s,council_members:[...s.council_members,{name:"",member_type:"",role:""}]}),n(!0)},j=(t,i,k)=>{const x=[...s.council_members];x[t]={...x[t],[i]:k},c({...s,council_members:x})},z=t=>{const i=[...s.council_members];i.splice(t,1),c({...s,council_members:i})};return F?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"IIC Settings"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Institution's Innovation Council content"})]}),e.jsxs(d,{onClick:_,disabled:m.isPending,children:[m.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Save Changes"]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx(J,{label:"Header Logo URL",value:s.logo_url,onChange:t=>c({...s,logo_url:t}),note:"Recommended Resolution: 400x400px (Transparent PNG). Max size: 10MB."}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Description"}),e.jsx(ee,{rows:4,value:s.description,onChange:t=>c({...s,description:t.target.value})})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(J,{label:"Institution Certificate Image URL",value:s.certificate_image_url,onChange:t=>c({...s,certificate_image_url:t}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Gallery Title"}),e.jsx(h,{value:s.gallery_title,onChange:t=>c({...s,gallery_title:t.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Gallery Description"}),e.jsx(h,{value:s.gallery_description,onChange:t=>c({...s,gallery_description:t.target.value})})]})]})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:"Major Focus"}),e.jsxs(d,{variant:"outline",size:"sm",onClick:()=>f("major_focus"),children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Focus"]})]})}),e.jsx(B,{className:"space-y-3",children:s.major_focus.map((t,i)=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(h,{value:t,onChange:k=>M("major_focus",i,k.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>I("major_focus",i),children:e.jsx(Q,{className:"h-4 w-4"})})]},i))})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:"Functions"}),e.jsxs(d,{variant:"outline",size:"sm",onClick:()=>f("functions"),children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Function"]})]})}),e.jsx(B,{className:"space-y-3",children:s.functions.map((t,i)=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(h,{value:t,onChange:k=>M("functions",i,k.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>I("functions",i),children:e.jsx(Q,{className:"h-4 w-4"})})]},i))})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx(O,{children:"Council Members"}),e.jsx(ne,{children:"Manage IIC council members dynamically"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(d,{variant:"outline",size:"sm",onClick:w,children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Member"]}),e.jsx(d,{variant:N?"secondary":"outline",size:"icon",onClick:()=>n(!N),title:N?"Collapse":"Explore Existing",children:N?e.jsx(ye,{className:"h-4 w-4"}):e.jsx(P,{className:"h-4 w-4"})})]})]})}),N&&e.jsx(B,{className:"space-y-4",children:!s.council_members||s.council_members.length===0?e.jsx("div",{className:"text-center p-4 border border-dashed rounded-lg text-muted-foreground",children:"No council members added."}):s.council_members.map((t,i)=>e.jsxs("div",{className:"flex gap-4 items-end p-4 border rounded-lg bg-muted/20",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-4 flex-1",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Name"}),e.jsx(h,{value:t.name||"",onChange:k=>j(i,"name",k.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Member Type"}),e.jsx(h,{value:t.member_type||"",onChange:k=>j(i,"member_type",k.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Role"}),e.jsx(h,{value:t.role||"",onChange:k=>j(i,"role",k.target.value)})]})]}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>z(i),children:e.jsx(Q,{className:"h-4 w-4"})})]},i))})]}),e.jsx(ja,{})]})}function ja(){const l=Z(),{data:s,isLoading:c}=$({queryKey:["iicGallery"],queryFn:()=>Fs()}),o=D({mutationFn:j=>ks({data:j}),onSuccess:()=>
1{l.invalidateQueries({queryKey:["iicGallery"]}),p.success("Image added to gallery")},onError:j=>p.error(`Error: ${j.message}`)}),F=D({mutationFn:({id:j,data:z})=>Is({data:{id:j,data:z}}),onSuccess:()=>{l.invalidateQueries({queryKey:["iicGallery"]}),p.success("Gallery item updated")},onError:j=>p.error(`Error: ${j.message}`)}),m=D({mutationFn:j=>Ms({data:j}),onSuccess:()=>{l.invalidateQueries({queryKey:["iicGallery"]}),p.success("Gallery item deleted")},onError:j=>p.error(`Error: ${j.message}`)}),[_,f]=C.useState({image_url:"",caption:"",order_index:0}),[M,I]=C.useState(!1),[N,n]=C.useState(!1),w=()=>{if(!_.image_url){p.error("Please upload an image first");return}o.mutate(_,{onSuccess:()=>{f({image_url:"",caption:"",order_index:0}),n(!1),I(!0)}})};return c?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx(O,{children:"IIC Gallery"}),e.jsx(ne,{children:"Manage IIC gallery images and their captions."})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs($e,{open:N,onOpenChange:n,children:[e.jsx(Je,{asChild:!0,children:e.jsxs(d,{variant:"outline",size:"sm",children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Image"]})}),e.jsxs(He,{children:[e.jsx(Ye,{children:e.jsx(Ve,{children:"Add Gallery Image"})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsx(J,{label:"Upload Image",value:_.image_url,onChange:j=>f({..._,image_url:j})}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Caption"}),e.jsx(h,{value:_.caption,onChange:j=>f({..._,caption:j.target.value}),placeholder:"e.g. Inauguration Ceremony"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Order"}),e.jsx(h,{type:"number",value:_.order_index,onChange:j=>f({..._,order_index:parseInt(j.target.value)||0})})]})]}),e.jsxs(Xe,{children:[e.jsx(d,{variant:"outline",onClick:()=>n(!1),children:"Cancel"}),e.jsxs(d,{onClick:w,disabled:o.isPending||!_.image_url,children:[o.isPending&&e.jsx(A,{className:"h-4 w-4 animate-spin mr-2"}),"Add Image"]})]})]})]}),e.jsx(d,{variant:M?"secondary":"outline",size:"icon",onClick:()=>I(!M),title:M?"Collapse":"Explore Existing",children:M?e.jsx(ye,{className:"h-4 w-4"}):e.jsx(P,{className:"h-4 w-4"})})]})]})}),M&&e.jsx(B,{className:"space-y-6",children:e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 mt-4",children:s?.map(j=>e.jsx(va,{item:j,onUpdate:z=>F.mutate({id:j.id,data:z}),onDelete:()=>m.mutate(j.id),isUpdating:F.isPending&&F.variables?.id===j.id},j.id))})})]})}function va({item:l,onUpdate:s,onDelete:c,isUpdating:o}){const[F,m]=C.useState(l.caption||""),[_,f]=C.useState(l.order_index||0),M=F!==(l.caption||"")||_!==(l.order_index||0);return e.jsxs("div",{className:"border rounded-lg overflow-hidden bg-card",children:[e.jsx("img",{src:l.image_url,alt:F,className:"w-full h-48 object-cover"}),e.jsxs("div",{className:"p-4 space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Caption"}),e.jsx(h,{value:F,onChange:I=>m(I.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Order"}),e.jsx(h,{type:"number",value:_,onChange:I=>f(parseInt(I.target.value)||0)})]}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[e.jsx(d,{variant:"destructive",size:"icon",onClick:c,children:e.jsx(Q,{className:"h-4 w-4"})}),M&&e.jsx(d,{size:"icon",onClick:()=>s({caption:F,order_index:_}),disabled:o,children:o?e.jsx(A,{className:"h-4 w-4 animate-spin"}):e.jsx(W,{className:"h-4 w-4"})})]})]})]})}function me({id:l,children:s}){const{attributes:c,listeners:o,setNodeRef:F,transform:m,transition:_,isDragging:f}=Fe({id:String(l)}),M={transform:ke.Transform.toString(m),transition:_,opacity:f?.5:1,zIndex:f?10:1,position:"relative"};return e.jsxs("div",{ref:F,style:M,children:[s,e.jsx("div",{...c,...o,className:"absolute top-2 left-2 bg-background/80 backdrop-blur border shadow-sm p-1.5 rounded cursor-grab active:cursor-grabbing text-muted-foreground hover:text-foreground transition-colors touch-none z-10",title:"Drag to reorder",children:e.jsx(ra,{className:"h-4 w-4"})})]})}function ue({items:l,onReorder:s,children:c,className:o="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"}){const F=_e(de(be,{activationConstraint:{distance:5}}),de(Ne,{coordinateGetter:fe})),m=_=>{const{active:f,over:M}=_;if(M&&f.id!==M.id){const I=l.findIndex(n=>String(n.id)===String(f.id)),N=l.findIndex(n=>String(n.id)===String(M.id));s(Ie(l,I,N))}};return e.jsx(Ce,{sensors:F,collisionDetection:we,onDragEnd:m,children:e.jsx(Se,{items:l.map(_=>String(_.id)),strategy:la,children:e.jsx("div",{className:o,children:c})})})}function ya(){const l=Z(),[s,c]=C.useState(""),[o,F]=C.useState(""),[m,_]=C.useState(""),[f,M]=C.useState(null),[I,N]=C.useState({title:"",content:"",image_url:""}),[n,w]=C.useState({quote_text:"",description:"",bullet_points:[],total_companies_stat:"",students_attended_stat:"",offers_rolled_out_stat:""}),{data:j,isLoading:z}=$({queryKey:["jobFairSettings"],queryFn:()=>Rs()}),{data:t,isLoading:i}=$({queryKey:["jobFairReports"],queryFn:()=>Es()}),{data:k,isLoading:x}=$({queryKey:["jobFairGallery"],queryFn:()=>Ds()});C.useEffect(()=>{j&&w({quote_text:j.quote_text||"",description:j.description||"",bullet_points:j.bullet_points||[],total_companies_stat:j.total_companies_stat||"",students_attended_stat:j.students_attended_stat||"",offers_rolled_out_stat:j.offers_rolled_out_stat||""})},[j]);const T=D({mutationFn:g=>Ts({data:g}),onSuccess:()=>
1{l.invalidateQueries({queryKey:["jobFairSettings"]}),p.success("Job Fair settings updated")},onError:g=>p.error(`Error: ${g.message}`)}),v=D({mutationFn:g=>zs({data:g}),onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairReports"]}),p.success("Report added")},onError:g=>p.error(`Error: ${g.message}`)}),S=D({mutationFn:g=>As({data:g}),onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairReports"]}),p.success("Report deleted")},onError:g=>p.error(`Error: ${g.message}`)}),K=D({mutationFn:({id:g,data:q})=>Ge({data:{id:g,data:q}}),onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairReports"]}),p.success("Report updated"),M(null)},onError:g=>p.error(`Error: ${g.message}`)});D({mutationFn:g=>qs({data:g}),onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairGallery"]}),p.success("Image added")},onError:g=>p.error(`Error: ${g.message}`)}),D({mutationFn:g=>Ps({data:g}),onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairGallery"]}),p.success("Image deleted")},onError:g=>p.error(`Error: ${g.message}`)});const U=D({mutationFn:async g=>{for(const q of g)await Ge({data:q})},onSuccess:()=>{l.invalidateQueries({queryKey:["jobFairReports"]}),p.success("Reports order saved")},onError:g=>{p.error(`Failed to save order: ${g.message}`)}}),ie=g=>{const q=g.map((Y,ae)=>{const{id:xe,created_at:pe,updated_at:Re,...je}=Y;return{id:Y.id,data:{...je,order_index:ae}}}).filter(Y=>{const ae=t?.find(xe=>xe.id===Y.id);return ae&&ae.order_index!==Y.data.order_index});q.length>0&&(l.setQueryData(["jobFairReports"],g.map((Y,ae)=>({...Y,order_index:ae}))),U.mutate(q))},X=[...t||[]].sort((g,q)=>(g.order_index??0)-(q.order_index??0)),se=()=>{T.mutate(n)},r=()=>w({...n,bullet_points:[...n.bullet_points,""]}),R=(g,q)=>{const Y=[...n.bullet_points];Y[g]=q,w({...n,bullet_points:Y})},H=g=>{const q=[...n.bullet_points];q.splice(g,1),w({...n,bullet_points:q})},ce=()=>{!s.trim()||!o.trim()||(v.mutate({title:s.trim(),content:o.trim(),image_url:m||null,order_index:(t?.length||0)+1}),c(""),F(""),_(""))};return z?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Job Fair Settings"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Job Fair details, reports, and gallery"})]}),e.jsxs(d,{onClick:se,disabled:T.isPending,children:[T.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Save Settings"]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Quote Text (Main Testimonial/Heading)"}),e.jsx(ee,{rows:2,value:n.quote_text,onChange:g=>w({...n,quote_text:g.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Description"}),e.jsx(ee,{rows:4,value:n.description,onChange:g=>w({...n,description:g.target.value})})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Total Companies Stat"}),e.jsx(h,{value:n.total_companies_stat,onChange:g=>w({...n,total_companies_stat:g.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Students Attended"}),e.jsx(h,{value:n.students_attended_stat,onChange:g=>w({...n,students_attended_stat:g.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Offers Rolled Out"}),e.jsx(h,{value:n.offers_rolled_out_stat,onChange:g=>w({...n,offers_rolled_out_stat:g.target.value})})]})]}),e.jsxs(L,{children:[e.jsx(G,{className:"py-3",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{className:"text-base",children:"Bullet Points"}),e.jsxs(d,{variant:"outline",size:"sm",onClick:r,children:[e.jsx(P,{className:"h-3 w-3 mr-1"})," Add"]})]})}),e.jsx(B,{className:"space-y-2 py-3",children:n.bullet_points.map((g,q)=>e.jsxs("div",{className:"flex gap-2",children:[e.jsx(h,{value:g,onChange:Y=>R(q,Y.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>H(q),children:e.jsx(Q,{className:"h-4 w-4"})})]},q))})]})]})]}),e.jsx("div",{className:"",children:e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{children:[e.jsx(O,{children:"Reports"}),e.jsx(ne,{children:"Manage Job Fair reports/documents"})]})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4 p-4 border rounded-xl bg-muted/5 shadow-sm",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs uppercase font-bold",children:"Report Title"}),e.jsx(h,{value:s,onChange:g=>c(g.target.value),placeholder:"e.g. Report Sept 2024"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs uppercase font-bold",children:"Description"}),e.jsx(h,{value:o,onChange:g=>F(g.target.value),placeholder:"Summary..."})]}),e.jsx("div",{className:"space-y-1",children:e.jsx(J,{label:"Cover Image",value:m,onChange:g=>_(g),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."})}),e.jsxs(d,{className:"md:col-span-3 w-full sm:w-auto mt-2",onClick:ce,disabled:v.isPending||!s||!o,children:[v.isPending?e.jsx(A,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(P,{className:"h-4 w-4 mr-2"}),"Add Report"]})]}),e.jsx(ue,{className:"space-y-3",items:X,onReorder:ie,children:i?e.jsx(A,{className:"h-6 w-6 animate-spin mx-auto mt-4"}):X.map(g=>e.jsx(me,{id:g.id,children:e.jsx("div",{className:"flex flex-col p-4 border rounded-xl bg-muted/10 gap-4 transition-colors hover:bg-muted/20 pr-10",children:f===g.id?e.jsxs("div",{className:"space-y-3",children:[e.jsx(h,{value:
1I.title,onChange:q=>N({...I,title:q.target.value}),placeholder:"Title"}),e.jsx(ee,{value:I.content,onChange:q=>N({...I,content:q.target.value}),placeholder:"Content"}),e.jsx(J,{label:"Cover Image",value:I.image_url,onChange:q=>N({...I,image_url:q}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>M(null),children:"Cancel"}),e.jsxs(d,{size:"sm",onClick:()=>K.mutate({id:g.id,data:I}),children:[K.isPending?e.jsx(A,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(W,{className:"h-4 w-4 mr-2"}),"Update"]})]})]}):e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center justify-between gap-4",children:[e.jsxs("div",{className:"flex items-start sm:items-center gap-4 min-w-0",children:[g.image_url?e.jsx("img",{src:g.image_url,alt:"Cover",className:"h-10 w-10 object-cover rounded shadow-sm shrink-0"}):e.jsx(Me,{className:"h-8 w-8 text-blue-500 shrink-0 opacity-50"}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-sm",children:g.title}),e.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:g.content})]})]}),e.jsxs("div",{className:"flex gap-2 shrink-0 relative z-10",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>{M(g.id),N({title:g.title,content:g.content,image_url:g.image_url||""})},children:"Edit"}),e.jsxs(d,{variant:"destructive",size:"sm",onClick:()=>S.mutate(g.id),children:[e.jsx(Q,{className:"h-4 w-4 sm:mr-2"})," ",e.jsx("span",{className:"hidden sm:inline",children:"Delete"})]})]})]})})},g.id))})]})]})})]})}function _a(){const l=Z(),[s,c]=C.useState({intro_description:"",policy_pdf_url:"",illustration_url:"",objectives:[],benefits_industry:[],benefits_students:[],benefits_institute:[],total_interns_stat:"",partner_companies_stat:"",academic_years_count_stat:3}),[o,F]=C.useState({academic_year:"",count:""}),[m,_]=C.useState({academic_year:"",branch_data:[{branch:"",count:""}]}),[f,M]=C.useState({image_url:"",caption:""}),[I,N]=C.useState(null),[n,w]=C.useState({academic_year:"",count:""}),[j,z]=C.useState(null),[t,i]=C.useState({academic_year:"",branch_data:[]}),[k,x]=C.useState(null),[T,v]=C.useState({image_url:"",caption:""}),{data:S,isLoading:K}=$({queryKey:["internshipSettings"],queryFn:()=>Ls()}),{data:U,isLoading:ie}=$({queryKey:["internshipOverallStats"],queryFn:()=>Gs()}),{data:X,isLoading:se}=$({queryKey:["internshipBranchStats"],queryFn:()=>Os()}),{data:r,isLoading:R}=$({queryKey:["internshipGallery"],queryFn:()=>Bs()});C.useEffect(()=>{S&&c({intro_description:S.intro_description||"",policy_pdf_url:S.policy_pdf_url||"",illustration_url:S.illustration_url||"",objectives:S.objectives||[],benefits_industry:S.benefits_industry||[],benefits_students:S.benefits_students||[],benefits_institute:S.benefits_institute||[],total_interns_stat:S.total_interns_stat||"",partner_companies_stat:S.partner_companies_stat||"",academic_years_count_stat:S.academic_years_count_stat||3})},[S]);const H=D({mutationFn:a=>Ks({data:a}),onSuccess:(a,u)=>{l.invalidateQueries({queryKey:["internshipSettings"]}),u.illustration_url&&te(u.illustration_url,"industry_internships","illustration_url",1),u.policy_pdf_url&&te(u.policy_pdf_url,"industry_internships","policy_pdf_url",1),p.success("Settings updated")},onError:a=>p.error(`Error: ${a.message}`)}),ce=()=>{H.mutate(s)},g=a=>{c({...s,[a]:[...s[a],""]})},q=(a,u,b)=>{const E=[...s[a]];E[u]=b,c({...s,[a]:E})},Y=(a,u)=>{const b=[...s[a]];b.splice(u,1),c({...s,[a]:b})},ae=D({mutationFn:a=>Us({data:a}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipOverallStats"]}),p.success("Stat added")}}),xe=D({mutationFn:a=>Qs({data:a}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipOverallStats"]}),p.success("Stat deleted")}}),pe=D({mutationFn:({id:a,data:u})=>Oe({data:{id:a,data:u}}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipOverallStats"]}),p.success("Stat updated"),N(null)},onError:a=>{p.error(`Failed to save order: ${a.message}`)}}),Re=D({mutationFn:a=>$s({data:a}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipBranchStats"]}),p.success("Branch stat added")}}),je=D({mutationFn:a=>Js({data:a}),onSuccess:()=>
1{l.invalidateQueries({queryKey:["internshipBranchStats"]}),p.success("Branch stat deleted")}}),Ee=D({mutationFn:({id:a,data:u})=>Be({data:{id:a,data:u}}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipBranchStats"]}),p.success("Branch stat updated"),z(null)}}),is=D({mutationFn:a=>Hs({data:a}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipGallery"]}),p.success("Image added")}}),rs=D({mutationFn:a=>Ys({data:a}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipGallery"]}),p.success("Image deleted")}}),De=D({mutationFn:({id:a,data:u})=>Ke({data:{id:a,data:u}}),onSuccess:()=>{l.invalidateQueries({queryKey:["internshipGallery"]}),p.success("Image updated"),x(null)}}),ls=D({mutationFn:async a=>{for(const u of a)await Oe({data:u})},onSuccess:()=>{l.invalidateQueries({queryKey:["internshipOverallStats"]}),p.success("Order saved")},onError:a=>{p.error(`Failed to save order: ${a.message}`)}}),cs=a=>{const u=a.map((b,E)=>{const{id:V,created_at:qe,updated_at:Pe,...oe}=b;return{id:b.id,data:{...oe,order_index:E}}}).filter(b=>{const E=U?.find(V=>V.id===b.id);return E&&E.order_index!==b.data.order_index});u.length>0&&(l.setQueryData(["internshipOverallStats"],a.map((b,E)=>({...b,order_index:E}))),ls.mutate(u))},Te=[...U||[]].sort((a,u)=>(a.order_index??0)-(u.order_index??0)),ds=D({mutationFn:async a=>{for(const u of a)await Be({data:u})},onSuccess:()=>{l.invalidateQueries({queryKey:["internshipBranchStats"]}),p.success("Order saved")},onError:a=>{p.error(`Failed to save order: ${a.message}`)}}),os=a=>{const u=a.map((b,E)=>{const{id:V,created_at:qe,updated_at:Pe,...oe}=b;return{id:b.id,data:{...oe,order_index:E}}}).filter(b=>{const E=X?.find(V=>V.id===b.id);return E&&E.order_index!==b.data.order_index});u.length>0&&(l.setQueryData(["internshipBranchStats"],a.map((b,E)=>({...b,order_index:E}))),ds.mutate(u))},ze=[...X||[]].sort((a,u)=>(a.order_index??0)-(u.order_index??0)),ms=D({mutationFn:async a=>{for(const u of a)await Ke({data:u})},onSuccess:()=>{l.invalidateQueries({queryKey:["internshipGallery"]}),p.success("Order saved")},onError:a=>{p.error(`Failed to save order: ${a.message}`)}}),us=a=>{const u=a.map((b,E)=>{const{id:V,created_at:qe,updated_at:Pe,...oe}=b;return{id:b.id,data:{...oe,order_index:E}}}).filter(b=>{const E=r?.find(V=>V.id===b.id);return E&&E.order_index!==b.data.order_index});u.length>0&&(l.setQueryData(["internshipGallery"],a.map((b,E)=>({...b,order_index:E}))),ms.mutate(u))},Ae=[...r||[]].sort((a,u)=>(a.order_index??0)-(u.order_index??0)),xs=()=>{!o.academic_year||!o.count||(ae.mutate({academic_year:o.academic_year,count:parseInt(o.count),order_index:(U?.length||0)+1}),F({academic_year:"",count:""}))},hs=()=>{if(!m.academic_year)return;const a={};m.branch_data.forEach(u=>{u.branch&&u.count&&(a[u.branch.toUpperCase()]=parseInt(u.count,10))}),Re.mutate({academic_year:m.academic_year,branch_data:a,order_index:(X?.length||0)+1}),_({academic_year:"",branch_data:[{branch:"",count:""}]})},gs=()=>{f.image_url&&(is.mutate({image_url:f.image_url,caption:f.caption,order_index:(r?.length||0)+1}),M({image_url:"",caption:""}))};return K?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Internship Settings"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Internship policy, statistics, and gallery"})]}),e.jsxs(d,{onClick:ce,disabled:H.isPending,children:[H.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Save Settings"]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Intro Description"}),e.jsx(ee,{rows:4,value:s.intro_description,onChange:a=>c({...s,intro_description:a.target.value})})]}),e.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(y,{children:"Total Interns Stat"}),e.jsx(d,{type:"button",variant:"ghost",size:"sm",className:"h-5 text-[0.65rem] px-2",onClick:()=>
1{if(U){const a=U.reduce((u,b)=>u+(b.count||0),0);c({...s,total_interns_stat:String(a)})}},children:"Auto Calculate"})]}),e.jsx(h,{value:s.total_interns_stat,onChange:a=>c({...s,total_interns_stat:a.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Partner Companies"}),e.jsx(h,{value:s.partner_companies_stat,onChange:a=>c({...s,partner_companies_stat:a.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Academic Years Count"}),e.jsx(h,{type:"number",value:s.academic_years_count_stat,onChange:a=>c({...s,academic_years_count_stat:parseInt(a.target.value)})})]})]})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{label:"Illustration URL (Hero image)",value:s.illustration_url,onChange:a=>c({...s,illustration_url:a})}),e.jsxs("p",{className:"text-[0.8rem] text-muted-foreground bg-blue-50/50 p-2 rounded border border-blue-100",children:[e.jsx("strong",{className:"text-blue-700",children:"Recommended Size:"})," A landscape image (e.g. 800x600 or 16:9 ratio) works best here. The image will automatically cover the section elegantly."]})]}),e.jsx(J,{label:"Policy PDF URL",value:s.policy_pdf_url,onChange:a=>c({...s,policy_pdf_url:a}),accept:".pdf"})]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:"Objectives"}),e.jsx(d,{variant:"outline",size:"sm",onClick:()=>g("objectives"),children:e.jsx(P,{className:"h-4 w-4"})})]})}),e.jsx(B,{className:"space-y-2",children:s.objectives.map((a,u)=>e.jsxs("div",{className:"flex gap-2",children:[e.jsx(h,{value:a,onChange:b=>q("objectives",u,b.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>Y("objectives",u),children:e.jsx(Q,{className:"h-4 w-4"})})]},u))})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:"Benefits to Students"}),e.jsx(d,{variant:"outline",size:"sm",onClick:()=>g("benefits_students"),children:e.jsx(P,{className:"h-4 w-4"})})]})}),e.jsx(B,{className:"space-y-2",children:s.benefits_students.map((a,u)=>e.jsxs("div",{className:"flex gap-2",children:[e.jsx(h,{value:a,onChange:b=>q("benefits_students",u,b.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>Y("benefits_students",u),children:e.jsx(Q,{className:"h-4 w-4"})})]},u))})]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs(L,{children:[e.jsx(G,{children:e.jsx("div",{className:"flex justify-between items-center",children:e.jsx(O,{children:"Overall Stats"})})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 gap-3 p-4 bg-muted/30 rounded-lg border",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsx(h,{placeholder:"Academic Year",value:o.academic_year,onChange:a=>F({...o,academic_year:a.target.value})}),e.jsx(h,{placeholder:"Count",type:"number",value:o.count,onChange:a=>F({...o,count:a.target.value})})]}),e.jsxs(d,{onClick:xs,className:"w-full",disabled:!o.academic_year||!o.count,children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Add Overall Stat"]})]}),e.jsx(ue,{className:"space-y-2 mt-4",items:Te,onReorder:cs,children:Te.map(a=>e.jsx(me,{id:a.id,children:e.jsx("div",{className:"p-3 border rounded-lg bg-card pr-10",children:I===a.id?e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsx(h,{value:n.academic_year,onChange:u=>w({...n,academic_year:u.target.value})}),e.jsx(h,{type:"number",value:n.count,onChange:u=>w({...n,count:u.target.value})})]}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>N(null),children:"Cancel"}),e.jsxs(d,{size:"sm",onClick:()=>pe.mutate({id:a.id,data:{academic_year:n.academic_year,count:parseInt(n.count)}}),children:[pe.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}
1),"Update"]})]})]}):e.jsxs("div",{className:"flex justify-between items-center relative z-10",children:[e.jsxs("div",{children:[e.jsxs("span",{className:"font-bold",children:[a.academic_year,":"]})," ",a.count," Internships"]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>{N(a.id),w({academic_year:a.academic_year,count:String(a.count)})},children:"Edit"}),e.jsx(d,{variant:"destructive",size:"sm",onClick:()=>xe.mutate(a.id),children:"Delete"})]})]})})},a.id))})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsx("div",{className:"flex justify-between items-center",children:e.jsx(O,{children:"Branch Stats"})})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 gap-3 p-4 bg-muted/30 rounded-lg border",children:[e.jsx(h,{placeholder:"Academic Year",value:m.academic_year,onChange:a=>_({...m,academic_year:a.target.value})}),e.jsxs("div",{className:"space-y-2",children:[m.branch_data.map((a,u)=>e.jsxs("div",{className:"flex gap-2",children:[e.jsx(h,{placeholder:"Branch (e.g. EXTC)",value:a.branch,onChange:b=>{const E=[...m.branch_data];E[u].branch=b.target.value,_({...m,branch_data:E})}}),e.jsx(h,{placeholder:"Count",type:"number",value:a.count,onChange:b=>{const E=[...m.branch_data];E[u].count=b.target.value,_({...m,branch_data:E})}}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>{const b=[...m.branch_data];b.splice(u,1),_({...m,branch_data:b})},children:e.jsx(Q,{className:"h-4 w-4"})})]},u)),e.jsxs(d,{variant:"outline",size:"sm",onClick:()=>{_({...m,branch_data:[...m.branch_data,{branch:"",count:""}]})},children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Branch"]})]}),e.jsxs(d,{onClick:hs,className:"w-full",disabled:!m.academic_year||m.branch_data.length===0,children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Save Branch Stat"]})]}),e.jsx(ue,{className:"space-y-2 mt-4",items:ze,onReorder:os,children:ze.map(a=>e.jsx(me,{id:a.id,children:e.jsx("div",{className:"p-3 border rounded-lg bg-card pr-10",children:j===a.id?e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsx(h,{value:t.academic_year,onChange:u=>i({...t,academic_year:u.target.value}),placeholder:"Academic Year"}),e.jsxs("div",{className:"space-y-2",children:[t.branch_data.map((u,b)=>e.jsxs("div",{className:"flex gap-2",children:[e.jsx(h,{placeholder:"Branch",value:u.branch,onChange:E=>{const V=[...t.branch_data];V[b].branch=E.target.value,i({...t,branch_data:V})}}),e.jsx(h,{placeholder:"Count",type:"number",value:u.count,onChange:E=>{const V=[...t.branch_data];V[b].count=E.target.value,i({...t,branch_data:V})}}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>{const E=[...t.branch_data];E.splice(b,1),i({...t,branch_data:E})},children:e.jsx(Q,{className:"h-4 w-4"})})]},b)),e.jsxs(d,{variant:"outline",size:"sm",onClick:()=>{i({...t,branch_data:[...t.branch_data,{branch:"",count:""}]})},children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Branch"]})]}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>z(null),children:"Cancel"}),e.jsxs(d,{size:"sm",onClick:()=>{const u={};t.branch_data.forEach(b=>{b.branch&&b.count&&(u[b.branch.toUpperCase()]=parseInt(b.count,10))}),Ee.mutate({id:a.id,data:{academic_year:t.academic_year,branch_data:u}})},children:[Ee.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Update"]})]})]}):e.jsxs("div",{className:"flex flex-col gap-2 relative z-10",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"font-bold text-lg",children:a.academic_year}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>{z(a.id);const u=Object.entries(a.branch_data||{}).map(([b,E])=>({branch:b,count:String(E)}));i({academic_year:a.academic_year,branch_data:u.length?u:[{branch:"",count:""}]})},children:"Edit"}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>je.mutate(a.id),children:e.jsx(Q,{className:"h-4 w-4"})})]})]}),e.jsx("div",{className:"flex flex-wrap gap-2 text-sm text-muted-foreground bg-muted/20 p-2 rounded",children:Object.entries(a.branch_data||{}).map(([u,b])=>e.jsxs("div",{className:"bg-background border rounded px-2 py-1",children:[e.jsxs("span",{className:"font-medium text-foreground",children:[u,":"]}
1)," ",String(b)]},u))})]})})},a.id))})]})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsx(O,{children:"Gallery"})}),e.jsxs(B,{className:"space-y-4",children:[e.jsx(ue,{className:"grid grid-cols-2 sm:grid-cols-4 gap-4",items:Ae,onReorder:us,children:Ae.map(a=>e.jsx(me,{id:a.id,children:e.jsx("div",{className:"relative group rounded-md overflow-hidden border bg-card h-full",children:k===a.id?e.jsxs("div",{className:"p-2 space-y-2",children:[e.jsx(J,{label:"Image",value:T.image_url,onChange:u=>v({...T,image_url:u}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."}),e.jsx(h,{placeholder:"Caption",value:T.caption,onChange:u=>v({...T,caption:u.target.value}),className:"text-xs h-8"}),e.jsxs("div",{className:"flex gap-1 justify-end relative z-10",children:[e.jsx(d,{variant:"outline",size:"sm",className:"h-7 text-xs px-2",onClick:()=>x(null),children:"Cancel"}),e.jsx(d,{size:"sm",className:"h-7 text-xs px-2",onClick:()=>De.mutate({id:a.id,data:T}),children:De.isPending?e.jsx(A,{className:"h-3 w-3 animate-spin"}):"Save"})]})]}):e.jsxs(e.Fragment,{children:[e.jsx("img",{src:a.image_url,alt:"Gallery",className:"w-full h-32 object-cover"}),e.jsxs("div",{className:"absolute top-2 right-8 flex gap-1 opacity-0 group-hover:opacity-100 transition-opacity z-10",children:[e.jsx(d,{variant:"secondary",size:"icon",className:"h-7 w-7",onClick:()=>{x(a.id),v({image_url:a.image_url,caption:a.caption||""})},children:e.jsx(Me,{className:"h-3 w-3"})}),e.jsx(d,{variant:"destructive",size:"icon",className:"h-7 w-7",onClick:()=>rs.mutate(a.id),children:e.jsx(Q,{className:"h-3 w-3"})})]}),a.caption&&e.jsx("div",{className:"absolute bottom-0 inset-x-0 bg-black/60 text-white text-[0.625rem] p-1 truncate",children:a.caption})]})})},a.id))}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 items-end p-4 border rounded-lg bg-muted/30",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Caption"}),e.jsx(h,{placeholder:"Image caption...",value:f.caption,onChange:a=>M({...f,caption:a.target.value})})]}),e.jsx("div",{className:"space-y-2",children:e.jsx(J,{label:"Image",value:f.image_url,onChange:a=>M({...f,image_url:a}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."})}),e.jsxs(d,{className:"md:col-span-2",onClick:gs,disabled:!f.image_url,children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Add Image"]})]})]})]})]})}function fa(){const l=Z(),[s,c]=C.useState(!1),[o,F]=C.useState(null),[m,_]=C.useState({partner_name:"",departments:"All",signed_on:new Date().toISOString().split("T")[0],logo_url:"",is_active:!0}),{data:f,isLoading:M}=$({queryKey:["mouRecords"],queryFn:()=>Vs()}),I=()=>{c(!1),F(null),_({partner_name:"",departments:"All",signed_on:new Date().toISOString().split("T")[0],logo_url:"",is_active:!0})},N=D({mutationFn:x=>Xs({data:x}),onSuccess:()=>{l.invalidateQueries({queryKey:["mouRecords"]}),p.success("MoU added"),I()}}),n=D({mutationFn:({id:x,data:T})=>Ue({data:{id:x,data:T}}),onSuccess:()=>{l.invalidateQueries({queryKey:["mouRecords"]}),p.success("MoU updated"),I()}}),w=D({mutationFn:x=>Ws({data:x}),onSuccess:()=>{l.invalidateQueries({queryKey:["mouRecords"]}),p.success("MoU deleted")}}),j=D({mutationFn:async x=>{for(const T of x)await Ue({data:T})},onSuccess:()=>{l.invalidateQueries({queryKey:["mouRecords"]}),p.success("MoU order saved")},onError:x=>{p.error(`Failed to save order: ${x.message}`)}}),z=x=>{const T=x.map((v,S)=>{const{id:K,created_at:U,updated_at:ie,...X}=v;return{id:v.id,data:{...X,order_index:S}}}).filter(v=>{const S=f?.find(K=>K.id===v.id);return S&&S.order_index!==v.data.order_index});T.length>0&&(l.setQueryData(["mouRecords"],x.map((v,S)=>({...v,order_index:S}))),j.mutate(T))},t=[...f||[]].sort((x,T)=>(x.order_index??0)-(T.order_index??0)),i=x=>{F(x.id),_({partner_name:x.partner_name||"",departments:x.departments||"All",signed_on:x.signed_on?new Date(x.signed_on).toISOString().split("T")[0]:new Date().toISOString().split("T")[0],logo_url:x.logo_url||"",is_active:x.is_active??!0}),c(!0)},k=()=>{if(!m.partner_name){p.error("Partner Name is required");return}o?n.mutate({id:o,data:m}):N.mutate({...m,order_index:f?.length||0})};return M?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"MoU Records"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Memorandums of Understanding"})]}),!s&&e.jsxs(d,{onClick:()=>{I(),c(!0)},children:[e.jsx(P,{className:"mr-2 h-4 w-4"}),"Add MoU"]})]}),s&&e.jsxs(L,{className:"border-primary/20 shadow-sm animate-in fade-in slide-in-from-top-4",children:[e.jsx(G,{className:"pb-4 border-b",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:o?"Edit MoU Record":"Add New MoU Record"}),e.jsx(d,{variant:"ghost",size:"icon",onClick:I,children:e.jsx(Qe,{className:"h-4 w-4"})})]})}),e.jsxs(B,{className:"pt-6 space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(y,{children:["Partner Name ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsx(h,{value:m.partner_name,onChange:x=>_({...m,partner_name:x.target.value}),placeholder:"e.g. TCS"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Departments"}),e.jsx(h,{value:m.departments,onChange:x=>_({...m,departments:x.target.value}),placeholder:"e.g. All or CS, IT"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Signed On"}),e.jsx(h,{type:"date",value:m.signed_on,onChange:x=>_({...m,signed_on:x.target.value})})]}),e.jsxs("div",{className:"space-y-2 md:col-span-2",children:[e.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:"Please upload a transparent PNG for the best visual appearance on the website."}),e.jsx(J,{label:"Logo Upload",value:m.logo_url,onChange:x=>_({...m,logo_url:x}),note:"Recommended Resolution: 400x400px (Transparent PNG). Max size: 10MB."})]}),e.jsxs("div",{className:"space-y-2 flex items-center gap-2 md:col-span-2 pt-2",children:[e.jsx("input",{type:"checkbox",id:"isActive",className:"h-4 w-4 roun
1ded border-gray-300 text-primary focus:ring-primary",checked:m.is_active,onChange:x=>_({...m,is_active:x.target.checked})}),e.jsx(y,{htmlFor:"isActive",className:"cursor-pointer",children:"Active Record (visible on public site)"})]})]}),e.jsxs("div",{className:"flex justify-end gap-3 pt-4 border-t mt-6",children:[e.jsx(d,{variant:"outline",onClick:I,children:"Cancel"}),e.jsxs(d,{onClick:k,disabled:N.isPending||n.isPending||!m.partner_name,children:[(N.isPending||n.isPending)&&e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}),o?"Update MoU":"Save MoU"]})]})]})]}),e.jsx(ue,{items:t,onReorder:z,children:t.map(x=>e.jsx(me,{id:x.id,children:e.jsxs(L,{className:"relative overflow-hidden group h-full",children:[e.jsxs(G,{className:"pb-2",children:[e.jsx(O,{className:"truncate pr-6",children:x.partner_name}),e.jsxs(ne,{children:["Signed: ",new Date(x.signed_on).toLocaleDateString()]})]}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"text-sm",children:[e.jsx("span",{className:"font-semibold",children:"Departments:"})," ",x.departments]}),e.jsxs("div",{className:"text-sm",children:[e.jsx("span",{className:"font-semibold",children:"Status:"}),e.jsx("span",{className:x.is_active?"text-green-600 ml-1":"text-red-600 ml-1",children:x.is_active?"Active":"Inactive"})]}),x.logo_url&&e.jsx("div",{className:"mt-2",children:e.jsx("img",{src:x.logo_url,alt:"Logo",className:"h-12 w-auto object-contain border rounded p-1 bg-white"})})]}),e.jsxs("div",{className:"absolute bottom-4 right-4 flex gap-2",children:[e.jsx(d,{variant:"secondary",size:"icon",onClick:()=>i(x),children:e.jsx(Ze,{className:"h-4 w-4"})}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>w.mutate(x.id),children:e.jsx(Q,{className:"h-4 w-4"})})]})]})},x.id))}),t.length===0&&e.jsx("div",{className:"w-full text-center p-8 text-muted-foreground border border-dashed rounded-xl",children:'No MoU records found. Click "Add MoU" to start.'})]})}const Na=ps({method:"GET"}).handler(js("0ebda0cd74009cd04378469267aa2c7ce54d8183907cdd87336937a9ce74cc7d"));function ba({item:l,onRemove:s,onChange:c}){const{attributes:o,listeners:F,setNodeRef:m,transform:_,transition:f,isDragging:M}=Fe({id:l.id}),I={transform:ke.Transform.toString(_),transition:f,zIndex:M?1:0},N=(l.caption||"").split("|"),n=N.length>1?N[1].trim():N[0]?.trim()||"",[w,j]=(l.media_url||"0,0").split(","),z=(i,k)=>{let x=l.caption,T=l.media_url;i==="locationName"?x=k:i==="lat"?T=`${k},${j}`:i==="lng"?T=`${w},${k}`:i==="latlng"&&(T=k),c({...l,caption:x,media_url:T})},t=D({mutationFn:i=>Na({data:{url:i}}),onSuccess:i=>{i.success?(z("latlng",`${i.lat},${i.lng}`),p.success("Coordinates extracted successfully!")):p.error(i.error||"Failed to extract coordinates from URL.")},onError:i=>{p.error(i.message||"Network error while extracting coordinates.")}});return e.jsxs("div",{ref:m,style:I,className:`flex items-center gap-4 p-4 border rounded-lg bg-background shadow-sm ${M?"opacity-50 border-primary":""}`,children:[e.jsx("div",{...o,...F,className:"cursor-grab hover:text-primary",children:e.jsx(as,{className:"h-5 w-5 text-muted-foreground"})}),e.jsxs("div",{className:"flex-1 space-y-4",children:[e.jsx("div",{className:"grid grid-cols-1 gap-4",children:e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Location Name"}),e.jsx(h,{value:n,onChange:i=>z("locationName",i.target.value),placeholder:"e.g. New York, USA"})]})}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[e.jsxs("div",{className:"space-y-1 relative",children:[e.jsxs(y,{className:"text-xs text-primary font-medium flex items-center justify-between",children:["Auto-fill from Maps URL",t.isPending&&e.jsx(A,{className:"h-3 w-3 animate-spin text-muted-foreground"})]}),e.jsx(h,{placeholder:"Paste Google Maps link here...",disabled:t.isPending,onChange:i=>{const k=i.target.value.trim();if(!k)return;const x=k.match(/@(-?\d+\.\d+),(-?\d+\.\d+)/);x?(z("latlng",`${x[1]},${x[2]}`),p.success("Coordinates extracted successfully!"),i.target.value=""):k.startsWith("http")?(t.mutate(k),i.target.value=""):k.length>10&&(p.error("Please enter a valid HTTP URL."),i.target.value="")}})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Latitude"}),e.jsx(h,{value:w||"",onChange:i=>z("lat",i.target.value),placeholder:"e.g. 40.71"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Longitude"}),e.jsx(h,{value:j||"",onChange:i=>z("lng",i.target.value),placeholder:"e.g. -74.00"})]})]})]}),e.jsx(d,{variant:"ghost",size:"icon",onClick:s,className:"text-destructive hover:bg-destructive/10 shrink-0",children:e.jsx(Q,{className:"h-4 w-4"})})]})}function Ca(){const l=Z(),s="global-alumni",{data:c,isLoading:o}=$({queryKey:["globalAlumniCarouselAdmin"],queryFn:()=>es({data:{identifier:s}})}),[F,m]=C.useState([]),[_,f]=C.useState(!1);C.useEffect(()=>{c&&c.slides?m(c.slides):c===null&&!o&&m([{id:"hq",type:"image",caption:"VPPCOE HQ|Mumbai, India",media_url:"19.0760,72.8777"}])},[c,o]);const M=D({mutationFn:t=>ss({data:{identifier:s,slides:t}}),onSuccess:()=>
1{p.success("Global Alumni map updated successfully"),l.invalidateQueries({queryKey:["globalAlumniCarouselAdmin"]}),l.invalidateQueries({queryKey:["globalAlumniCarousel"]})},onError:t=>p.error(t.message)}),I=_e(de(be),de(Ne,{coordinateGetter:fe})),N=t=>{const{active:i,over:k}=t;i.id!==k.id&&m(x=>{const T=x.findIndex(S=>S.id===i.id),v=x.findIndex(S=>S.id===k.id);return Ie(x,T,v)})},n=()=>{m([...F,{id:crypto.randomUUID(),type:"image",caption:"New Location",media_url:"0,0"}]),f(!0)},w=t=>{m(F.filter(i=>i.id!==t))},j=(t,i)=>{m(F.map(k=>k.id===t?i:k))},z=()=>{M.mutate(F)};return e.jsxs(L,{className:"mt-8 border-primary/20",children:[e.jsx(G,{className:"bg-primary/5 rounded-t-xl border-b pb-4",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(ca,{className:"h-5 w-5 text-primary"}),e.jsxs("div",{children:[e.jsx(O,{className:"text-lg",children:"Global Alumni Network"}),e.jsx(ne,{children:"Manage the markers on the 3D globe visualization"})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(d,{variant:"outline",size:"sm",onClick:n,children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Add Marker"]}),e.jsxs(d,{onClick:z,disabled:M.isPending,size:"sm",children:[M.isPending&&e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}),"Save Changes"]}),e.jsx(d,{variant:_?"secondary":"outline",size:"icon",onClick:()=>f(!_),title:_?"Collapse":"Explore Existing",children:_?e.jsx(ye,{className:"h-4 w-4"}):e.jsx(P,{className:"h-4 w-4"})})]})]})}),_&&e.jsx(B,{className:"pt-6 space-y-4",children:o?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):e.jsx(Ce,{sensors:I,collisionDetection:we,onDragEnd:N,children:e.jsx(Se,{items:F.map(t=>t.id),strategy:We,children:e.jsx("div",{className:"space-y-3",children:F.map(t=>e.jsx(ba,{item:t,onRemove:()=>w(t.id),onChange:i=>j(t.id,i)},t.id))})})})})]})}function wa({slide:l,onDelete:s,onUpdate:c}){const{attributes:o,listeners:F,setNodeRef:m,transform:_,transition:f,isDragging:M}=Fe({id:l.id}),I={transform:ke.Transform.toString(_),transition:f,zIndex:M?10:1,opacity:M?.8:1},N=l.type==="video"||/\.(mp4|webm|mov|mkv|ogg)($|\?)/i.test(l.media_url||"");return e.jsxs("div",{ref:m,style:I,className:"group relative rounded-xl border bg-card overflow-hidden shadow-sm transition-all hover:shadow-md flex flex-col",children:[e.jsx("div",{className:"absolute top-2 left-2 z-20 opacity-0 group-hover:opacity-100 transition-opacity",children:e.jsx("div",{className:"p-1.5 bg-black/50 backdrop-blur-md rounded-md text-white cursor-grab active:cursor-grabbing hover:bg-black/70",...o,...F,children:e.jsx(as,{className:"h-5 w-5"})})}),e.jsx("div",{className:"aspect-[16/9] w-full overflow-hidden bg-muted relative",children:N?e.jsx("video",{src:l.media_url,className:"h-full w-full object-cover transition-transform duration-500 group-hover:scale-105",autoPlay:!0,muted:!0,loop:!0,playsInline:!0}):e.jsx("img",{src:l.media_url||"https://placehold.co/600x400?text=No+Image",alt:"Slide",className:"h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"})}),e.jsxs("div",{className:"p-4 flex flex-col gap-3 flex-1 bg-white",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Type"}),e.jsxs("select",{className:"flex h-8 w-full rounded-md border border-input bg-background px-3 py-1 text-xs ring-offset-background",value:l.type,onChange:n=>c(l.id,"type",n.target.value),children:[e.jsx("option",{value:"image",children:"Image"}),e.jsx("option",{value:"video",children:"Video"})]})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Caption"}),e.jsx(h,{className:"h-8 text-xs",value:l.caption||"",onChange:n=>c(l.id,"caption",n.target.value),placeholder:"Caption..."})]})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y,{className:"text-xs",children:"Media URL"}),e.jsx(h,{className:"h-8 text-xs",value:l.media_url||"",onChange:n=>c(l.id,"media_url",n.target.value),placeholder:"URL..."})]}),e.jsxs("div",{className:"mt-auto pt-2 border-t flex justify-between items-center",children:[e.jsxs("div",{className:"text-[0.625rem] text-muted-foreground font-medium truncate w-16",children:["ID: ",l.id]}),e.jsxs(d,{variant:"ghost",size:"sm",onClick:()=>s(l.id),className:"text-destructive hover:bg-destructive/10 hover:text-destructive h-8 px-2 text-xs",children:[e.jsx(Q,{className:"h-3 w-3 mr-1"}),"Delete"]})]})]})]})}function Sa(){const l=Z(),[s,c]=C.useState([]),[o,F]=C.useState(!1),[m,_]=C.useState(!1),[f,M]=C.useState(""),[I,N]=C.useState(""),{data:n,isLoading:w}
1=$({queryKey:["alumniMeetsCarousel"],queryFn:()=>es({data:{identifier:"alumni-meets"}})});C.useEffect(()=>{n?.slides&&c(n.slides)},[n]);const j=D({mutationFn:v=>ss({data:{identifier:"alumni-meets",slides:v}}),onSuccess:(v,S)=>{if(l.invalidateQueries({queryKey:["alumniMeetsCarousel"]}),S){const K=S.map(U=>U.media_url).filter(Boolean);ia(K,"carousels","slides","alumni-meets")}p.success("Carousel saved successfully")},onError:v=>p.error(`Error: ${v.message}`)}),z=()=>{j.mutate(s)},t=()=>{if(!f)return p.error("Please provide a media URL");const v=/\.(mp4|webm|mov|mkv|ogg)($|\?)/i.test(f),S=[...s,{id:`slide-${Date.now()}`,type:v?"video":"image",media_url:f,caption:I}];c(S),j.mutate(S),F(!1),M(""),N("")},i=v=>{if(confirm("Are you sure you want to delete this slide?")){const S=s.filter(K=>K.id!==v);c(S),j.mutate(S)}},k=(v,S,K)=>{c(s.map(U=>U.id===v?{...U,[S]:K}:U))},x=_e(de(be,{activationConstraint:{distance:5}}),de(Ne,{coordinateGetter:fe})),T=v=>{const{active:S,over:K}=v;if(K&&S.id!==K.id){const U=s.findIndex(se=>se.id===S.id),ie=s.findIndex(se=>se.id===K.id),X=Ie(s,U,ie);c(X),j.mutate(X)}};return w?e.jsx("div",{className:"p-10 flex justify-center",children:e.jsx(A,{className:"w-8 h-8 animate-spin"})}):e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx(O,{children:"Alumni Meets Carousel"}),e.jsx(ne,{children:"Manage the background slideshow for the Alumni Meets section."})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(d,{variant:m?"secondary":"outline",size:"sm",onClick:()=>_(!m),children:m?e.jsxs(e.Fragment,{children:[e.jsx(ts,{className:"mr-2 h-4 w-4"})," Collapse"]}):e.jsxs(e.Fragment,{children:[e.jsx(ns,{className:"mr-2 h-4 w-4"})," Explore Existing"]})}),e.jsxs($e,{open:o,onOpenChange:F,children:[e.jsx(Je,{asChild:!0,children:e.jsxs(d,{variant:"outline",size:"sm",children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Add Slide"]})}),e.jsxs(He,{children:[e.jsx(Ye,{children:e.jsx(Ve,{children:"Add New Slide"})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsx(J,{label:"Slide Image/Video URL",value:f,onChange:M,note:"Recommended Resolution: 1920x1080px (Landscape). Max size: 10MB."}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Caption (Optional)"}),e.jsx(h,{value:I,onChange:v=>N(v.target.value),placeholder:"Enter slide caption..."})]})]}),e.jsxs(Xe,{children:[e.jsx(d,{variant:"outline",onClick:()=>F(!1),children:"Cancel"}),e.jsx(d,{onClick:t,disabled:!f,children:"Add Slide"})]})]})]}),e.jsxs(d,{onClick:z,disabled:j.isPending,size:"sm",children:[j.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),j.isPending?"Saving...":"Save Order"]})]})]})}),m&&e.jsx(B,{children:s.length===0?e.jsxs("div",{className:"text-center py-12 border border-dashed rounded-lg bg-card",children:[e.jsx(da,{className:"h-10 w-10 text-muted-foreground/50 mx-auto mb-4"}),e.jsx("h3",{className:"text-lg font-medium text-foreground",children:"No slides found"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-4",children:"Add some images or videos to display in the Alumni Meets section."}),e.jsxs(d,{onClick:()=>F(!0),children:[e.jsx(P,{className:"mr-2 h-4 w-4"})," Add First Slide"]})]}):e.jsx(Ce,{sensors:x,collisionDetection:we,onDragEnd:T,children:e.jsx(Se,{items:s.map(v=>v.id),strategy:We,children:e.jsx("div",{className:"grid gap-6 sm:grid-cols-2 lg:grid-cols-3",children:s.map(v=>e.jsx(wa,{slide:v,onDelete:i,onUpdate:k},v.id))})})})})]})}function Fa(){const l=Z(),[s,c]=C.useState({hero_title:"",hero_description:"",overview_title:"",overview_description:"",college_image_url:"",stats:[],vision_text:"",mission_points:[],head_name:"",head_designation:"",head_phone:"",head_email:"",head_photo_url:""}),{data:o,isLoading:F}=$({queryKey:["alumniOverview"],queryFn:()=>Zs()}),{data:m,isLoading:_}=$({queryKey:["alumniTalks"],queryFn:()=>ea()});C.useEffect(()=>{o&&c({hero_title:o.hero_title||"",hero_description:o.hero_description||"",overview_title:o.overview_title||"",overview_description:o.overview_description||"",college_image_url:o.college_image_url||"",stats:o.stats||[],vision_text:o.vision_text||"",mission_points:o.mission_points||[],head_name:o.head_name||"",head_designation:o.head_designation||"",head_ph
1one:o.head_phone||"",head_email:o.head_email||"",head_photo_url:o.head_photo_url||""})},[o]);const f=D({mutationFn:r=>sa({data:r}),onSuccess:(r,R)=>{l.invalidateQueries({queryKey:["alumniOverview"]}),R.college_image_url&&te(R.college_image_url,"industry_alumni_overview","college_image_url",1),R.head_photo_url&&te(R.head_photo_url,"industry_alumni_overview","head_photo_url",1),p.success("Overview updated")},onError:r=>p.error(`Error: ${r.message}`)}),M=()=>{f.mutate(s)},I=D({mutationFn:r=>aa({data:r}),onSuccess:()=>{l.invalidateQueries({queryKey:["alumniTalks"]}),p.success("Talk added")}}),N=D({mutationFn:r=>ta({data:r}),onSuccess:()=>{l.invalidateQueries({queryKey:["alumniTalks"]}),p.success("Talk deleted")}}),[n,w]=C.useState({title:"",subtitle:"",date:"",speaker:"",course:"",talk_year:new Date().getFullYear(),image_url:"",attendees:0}),[j,z]=C.useState(null),[t,i]=C.useState({title:"",subtitle:"",date:"",speaker:"",course:"",talk_year:2024,image_url:"",attendees:0}),[k,x]=C.useState(!1),T=D({mutationFn:({id:r,data:R})=>na({data:{id:r,data:R}}),onSuccess:()=>{l.invalidateQueries({queryKey:["alumniTalks"]}),p.success("Talk updated"),z(null)},onError:r=>p.error(`Error: ${r.message}`)}),v=()=>{if(!n.title||!n.speaker){p.error("Title and Speaker are required.");return}I.mutate({...n,is_active:!0,order_index:(m?.length||0)+1}),w({title:"",subtitle:"",date:"",speaker:"",course:"",talk_year:new Date().getFullYear(),image_url:"",attendees:0}
1)},S=()=>c({...s,stats:[...s.stats,{label:"",value:""}]}),K=(r,R,H)=>{const ce=[...s.stats];ce[r][R]=H,c({...s,stats:ce})},U=r=>{const R=[...s.stats];R.splice(r,1),c({...s,stats:R})},ie=()=>c({...s,mission_points:[...s.mission_points,""]}),X=(r,R)=>{const H=[...s.mission_points];H[r]=R,c({...s,mission_points:H})},se=r=>{const R=[...s.mission_points];R.splice(r,1),c({...s,mission_points:R})};return F?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Alumni Settings"}),e.jsx("p",{className:"text-muted-foreground",children:"Manage Alumni overview and talk sessions"})]}),e.jsxs(d,{onClick:M,disabled:f.isPending,children:[f.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"}),"Save Settings"]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs(L,{children:[e.jsx(G,{children:e.jsx(O,{children:"Hero & Overview Details"})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Hero Title"}),e.jsx(h,{value:s.hero_title,onChange:r=>c({...s,hero_title:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Hero Description"}),e.jsx(ee,{rows:2,value:s.hero_description,onChange:r=>c({...s,hero_description:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Overview Title"}),e.jsx(h,{value:s.overview_title,onChange:r=>c({...s,overview_title:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Overview Description"}),e.jsx(ee,{rows:3,value:s.overview_description,onChange:r=>c({...s,overview_description:r.target.value})})]}),e.jsx(J,{label:"College Image URL",value:s.college_image_url,onChange:r=>c({...s,college_image_url:r}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsx(O,{children:"Vision & Mission"})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Vision"}),e.jsx(ee,{rows:3,value:s.vision_text,onChange:r=>c({...s,vision_text:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between items-center mb-2",children:[e.jsx(y,{children:"Mission Points"}),e.jsxs(d,{variant:"outline",size:"sm",onClick:ie,children:[e.jsx(P,{className:"h-3 w-3 mr-1"})," Add Point"]})]}),s.mission_points.map((r,R)=>e.jsxs("div",{className:"flex gap-2 mb-2",children:[e.jsx(h,{value:r,onChange:H=>X(R,H.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>se(R),children:e.jsx(Q,{className:"h-4 w-4"})})]},R))]})]})]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs(L,{children:[e.jsx(G,{children:e.jsx(O,{children:"Alumni Association Head"})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Name"}),e.jsx(h,{value:s.head_name,onChange:r=>c({...s,head_name:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Designation"}),e.jsx(h,{value:s.head_designation,onChange:r=>c({...s,head_designation:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Phone"}),e.jsx(h,{value:s.head_phone,onChange:r=>c({...s,head_phone:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Email"}),e.jsx(h,{value:s.head_email,onChange:r=>c({...s,head_email:r.target.value})})]})]}),e.jsx(J,{label:"Profile Photo URL",value:s.head_photo_url,onChange:r=>c({...s,head_photo_url:r}),note:"Recommended Resolution: 400x400px (Square/Portrait). Max size: 10MB."})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{children:"Stats"}),e.jsxs(d,{variant:"outline",size:"sm",onClick:S,children:[e.jsx(P,{className:"h-3 w-3 mr-1"})," Add Stat"]})]})}),e.jsx(B,{className:"space-y-2",children:s.stats.map((r,R)=>e.jsxs("div",{className:"flex gap-2 items-center",children:[e.jsx(h,{placeholder:"Label (e.g. Global Alumni)",value:r.label,onChange:H=>K(R,"label",H.target.value)}),e.jsx(h,{placeholder:"Value (e.g. 5000+)",value:r.value,onChange:H=>K(R,"value",H.target.value)}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>U(R),children:e.jsx(Q,{className:"h-4 w-4"})})]},R))})]})]}),e.jsxs(L,{children:[e.jsx(G,{children:e.jsx("div",{className:"flex justify-between items-center",children:e.jsxs("div",{children:[e.jsx(O,{children:"Alumni Talks"}),e.jsx(ne,{children:"Manage alumni talk sessions and seminars"})]})})}),e.jsxs(B,{className:"space-y-4",children:[e.jsxs("div",{className:"p-4 border rounded-lg bg-muted/30 space-y-4",children:[e.jsx("h4",{className:"font-semibold",children:"Add New Talk"}),e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Title/Topic"}),e.jsx(h,{value:n.title,onChange:r=>w({...n,title:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Subtitle"}),e.jsx(h,{value:n.subtitle,onChange:r=>w({...n,subtitle:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Speaker Name"}),e.jsx(h,{value:n.speaker,onChange:r=>w({...n,speaker:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Date"}),e.jsx(h,{type:"date",value:n.date,onChange:r=>w({...n,date:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Course"}),e.jsx(h,{value:n.course,onChange:r=>w({...n,course:r.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Talk Year"}),e.jsx(h,{type:"number",value:n.talk_year,onChange:r=>w({...n,talk_year:parseInt(r.target.value)})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Attendees"}),e.jsx(h,{type:"number",value:n.attendees,onChange:r=>w({...n,attendees:parseInt(r.target.value)})})]})]}),e.jsx(J,{label:"Cover Image URL",value:n.image_url,onChange:r=>w({...n,image_url:r}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."}),e.jsxs(d,{size:"sm",onClick:v,disabled:I.isPending,children:[e.jsx(P,{className:"h-4 w-4 mr-2"})," Add Talk"]})]}
1),e.jsxs("div",{className:"space-y-4 mt-6",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("h4",{className:"font-semibold",children:"Existing Talks"}),e.jsx(d,{variant:k?"secondary":"outline",size:"sm",onClick:()=>x(!k),children:k?e.jsxs(e.Fragment,{children:[e.jsx(ts,{className:"mr-2 h-4 w-4"})," Collapse"]}):e.jsxs(e.Fragment,{children:[e.jsx(ns,{className:"mr-2 h-4 w-4"})," Explore Existing"]})})]}),k&&e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mt-4",children:[_?e.jsx(A,{className:"h-4 w-4 animate-spin"}):m?.map(r=>e.jsx("div",{className:"p-4 border rounded-lg bg-muted/20 relative group",children:j===r.id?e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Title/Topic"}),e.jsx(h,{value:t.title,onChange:R=>i({...t,title:R.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Subtitle"}),e.jsx(h,{value:t.subtitle,onChange:R=>i({...t,subtitle:R.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Speaker Name"}),e.jsx(h,{value:t.speaker,onChange:R=>i({...t,speaker:R.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Date"}),e.jsx(h,{type:"date",value:t.date,onChange:R=>i({...t,date:R.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Course"}),e.jsx(h,{value:t.course,onChange:R=>i({...t,course:R.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Talk Year"}),e.jsx(h,{type:"number",value:t.talk_year,onChange:R=>i({...t,talk_year:parseInt(R.target.value)})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Attendees"}),e.jsx(h,{type:"number",value:t.attendees,onChange:R=>i({...t,attendees:parseInt(R.target.value)})})]})]}),e.jsx(J,{label:"Cover Image URL",value:t.image_url,onChange:R=>i({...t,image_url:R}),note:"Recommended Resolution: 800x600px (Landscape). Max size: 10MB."}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[e.jsx(d,{variant:"outline",size:"sm",onClick:()=>z(null),children:"Cancel"}),e.jsxs(d,{size:"sm",onClick:()=>T.mutate({id:r.id,data:t}),children:[T.isPending?e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(W,{className:"mr-2 h-4 w-4"})," Update"]})]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4 pr-16",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-semibold text-sm",children:"Speaker:"})," ",r.speaker]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-semibold text-sm",children:"Title:"})," ",r.title]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-semibold text-sm",children:"Date:"})," ",r.date]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-semibold text-sm",children:"Attendees:"})," ",r.attendees]})]}),r.image_url&&e.jsx("div",{className:"mt-4",children:e.jsx("img",{src:r.image_url,alt:"Talk",className:"h-32 w-full object-cover rounded"})}),e.jsxs("div",{className:"absolute top-2 right-2 flex gap-1 opacity-0 group-hover:opacity-100",children:[e.jsx(d,{variant:"secondary",size:"icon",onClick:()=>{z(r.id),i({title:r.title,subtitle:r.subtitle||"",date:r.date||"",speaker:r.speaker,course:r.course||"",talk_year:r.talk_year||new Date().getFullYear(),image_url:r.image_url||"",attendees:r.attendees||0})},children:e.jsx(Me,{className:"h-4 w-4"})}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>N.mutate(r.id),children:e.jsx(Q,{className:"h-4 w-4"})})]})]})},r.id)),m?.length===0&&e.jsx("div",{className:"text-center p-6 text-muted-foreground border border-dashed rounded md:col-span-2",children:"No talks recorded yet."})]})]})]})]}),e.jsx(Sa,{}),e.jsx(Ca,{})]})}function ka(){const l=Z(),[s,c]=C.useState(!1),[o,F]=C.useState(null),[m,_]=C.useState({title:"",link:""}),{data:f,isLoading:M}=$({queryKey:["page","careers"],queryFn:()=>oa({data:"careers"})}),{data:I=[],isLoading:N}=$({queryKey:["pageSections",f?.id],queryFn:()=>ma({data:f.id}),enabled:!!f?.id}),n=M||N,w=I.find(v=>v.section_type==="careers_table"),j=w?.content?.jobs||[],z=()=>{c(!1),F(null),_({title:"",link:""})},t=v=>{F(v),_({title:j[v].title||"",link:j[v].link||""}),c(!0)},i=D({mutationFn:async v=>{if(!f?.id)throw new Error("Page ID not found");return w?ua({data:{id:w.id,updates:{content:{...w.content,jobs:v}}}}):xa({data:{page_id:f.id,section_type:"careers_table",content:{jobs:v},order_index:I.length,is_active:!0}})},onSuccess:()=>
1{l.invalidateQueries({queryKey:["pageSections",f?.id]}),p.success("Careers updated successfully"),z()},onError:v=>{p.error(`Failed to update: ${v.message}`)}}),k=()=>{if(!m.title){p.error("Title is required");return}let v=[...j];o!==null?v[o]=m:v.push(m),i.mutate(v)},x=v=>{if(window.confirm("Are you sure you want to delete this job posting?")){const S=j.filter((K,U)=>U!==v);i.mutate(S)}},T=D({mutationFn:()=>ha({data:{slug:"careers",title:"Careers & Opportunities",is_published:!0}}),onSuccess:()=>{l.invalidateQueries({queryKey:["page","careers"]}),p.success("Careers page initialized in CMS")},onError:v=>{p.error(`Failed to initialize page: ${v.message}`)}});return n?e.jsx("div",{className:"flex justify-center p-8",children:e.jsx(A,{className:"h-8 w-8 animate-spin text-primary"})}):f?e.jsxs("div",{className:"space-y-8 animate-in fade-in zoom-in-95 duration-200",children:[e.jsxs("div",{className:"flex justify-between items-center bg-card/50 p-4 border rounded-xl backdrop-blur-sm",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"p-2 bg-primary/10 rounded-lg",children:e.jsx(ve,{className:"h-5 w-5 text-primary"})}),e.jsxs("div",{children:[e.jsx("h2",{className:"text-xl font-bold tracking-tight",children:"Careers & Opportunities"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Manage open positions on the careers page"})]})]}),!s&&e.jsxs(d,{onClick:()=>c(!0),className:"shadow-sm",children:[e.jsx(P,{className:"mr-2 h-4 w-4"}),"Add Position"]})]}),s&&e.jsxs(L,{className:"border-primary/20 shadow-lg shadow-primary/5 animate-in slide-in-from-top-4",children:[e.jsx(G,{className:"pb-4 border-b bg-muted/20",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx(O,{className:"text-lg",children:o!==null?"Edit Position":"Add New Position"}),e.jsx(d,{variant:"ghost",size:"icon",onClick:z,className:"h-8 w-8",children:e.jsx(Qe,{className:"h-4 w-4"})})]})}),e.jsxs(B,{className:"pt-6 space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(y,{children:[" Title ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsx(h,{value:m.title,onChange:v=>_({...m,title:v.target.value}),placeholder:"e.g. Software Development Engineer",className:"bg-background"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y,{children:"Application Link"}),e.jsx(h,{value:m.link,onChange:v=>_({...m,link:v.target.value}),placeholder:"e.g. https://forms.gle/...",className:"bg-background"})]})]}),e.jsxs("div",{className:"flex justify-end gap-3 pt-4 border-t mt-6",children:[e.jsx(d,{variant:"outline",onClick:z,children:"Cancel"}),e.jsxs(d,{onClick:k,disabled:i.isPending||!m.title,children:[i.isPending&&e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}),o!==null?"Update Position":"Save Position"]})]})]})]}),e.jsx(L,{className:"shadow-sm overflow-hidden border",children:j.length===0?e.jsxs("div",{className:"w-full text-center py-16 text-muted-foreground bg-muted/10",children:[e.jsx(ve,{className:"h-10 w-10 text-muted-foreground/30 mx-auto mb-3"}),e.jsx("h3",{className:"font-medium text-foreground mb-1",children:"No open positions"}),e.jsx("p",{className:"text-sm",children:'Click "Add Position" to create your first listing.'})]}):e.jsx("div",{className:"overflow-x-auto",children:e.jsxs(vs,{children:[e.jsx(ys,{className:"bg-muted/30",children:e.jsxs(Le,{children:[e.jsx(he,{className:"w-[80px] text-center",children:"Sr. No"}),e.jsx(he,{children:"Title"}),e.jsx(he,{className:"hidden md:table-cell",children:"Link"}),e.jsx(he,{className:"text-right pr-6",children:"Actions"})]})}),e.jsx(_s,{children:j.map((v,S)=>e.jsxs(Le,{className:"group hover:bg-muted/30 transition-colors",children:[e.jsx(ge,{className:"text-center text-muted-foreground",children:(S+1).toString().padStart(2,"0")}),e.jsx(ge,{className:"font-medium",children:v.title}),e.jsx(ge,{className:"hidden md:table-cell text-muted-foreground truncate max-w-[200px]",children:v.link||"-"}),e.jsx(ge,{className:"text-right pr-4",children:e.jsxs("div",{className:"flex justify-end gap-2 opacity-0 group-hover:opacity-100 transition-opacity",children:[e.jsx(d,{variant:"secondary",size:"icon",onClick:()=>t(S),className:"h-8 w-8",children:e.jsx(Ze,{className:"h-4 w-4"})}),e.jsx(d,{variant:"destructive",size:"icon",onClick:()=>x(S),className:"h-8 w-8",children:e.jsx(Q,{className:"h-4 w-4"})})]})})]},S))})]})})})]}):e.jsxs("div",{className:"p-8 text-center bg-card border rounded-xl shadow-sm mt-8",children:[e.jsx(ve,{className:"h-12 w-12 text-muted-foreground
1/30 mx-auto mb-4"}),e.jsx("h3",{className:"text-xl font-bold mb-2",children:"Careers Page Not Found"}),e.jsx("p",{className:"text-muted-foreground mb-6 max-w-md mx-auto",children:"The Careers page has not been initialized in the CMS yet. You need to create it before managing job postings."}),e.jsxs(d,{onClick:()=>T.mutate(),disabled:T.isPending,children:[T.isPending&&e.jsx(A,{className:"mr-2 h-4 w-4 animate-spin"}),"Initialize Careers Page"]})]})}function ct(){const[l,s]=C.useState("edcell");return e.jsxs("div",{className:"flex flex-col gap-6 max-w-7xl mx-auto w-full pb-24",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-3xl font-bold tracking-tight",children:"Industry Connect Management"}),e.jsx("p",{className:"text-muted-foreground mt-2",children:"Manage ED-Cell, IIC, Job Fairs, Internships, MoUs, and Alumni records."})]}),e.jsxs(fs,{value:l,onValueChange:s,className:"w-full",children:[e.jsxs(Ns,{className:"flex flex-wrap w-full justify-start h-auto mb-8 bg-muted/50 p-1",children:[e.jsx(re,{value:"edcell",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"ED-Cell"}),e.jsx(re,{value:"iic",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"IIC"}),e.jsx(re,{value:"jobfairs",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"Job Fairs"}),e.jsx(re,{value:"internships",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"Internships"}),e.jsx(re,{value:"mous",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"MoUs"}),e.jsx(re,{value:"alumni",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"Alumni"}),e.jsx(re,{value:"careers",className:"py-2.5 px-6 flex-1 lg:flex-none",children:"Careers"})]}),e.jsx(le,{value:"edcell",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(ga,{})}),e.jsx(le,{value:"iic",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(pa,{})}),e.jsx(le,{value:"jobfairs",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(ya,{})}),e.jsx(le,{value:"internships",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(_a,{})}),e.jsx(le,{value:"mous",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(fa,{})}),e.jsx(le,{value:"alumni",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(Fa,{})}),e.jsx(le,{value:"careers",className:"m-0 border rounded-lg bg-card p-6 shadow-sm",children:e.jsx(ka,{})})]})]})}export{ct 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.