1import{_ as ve}from"./DhHkCUG-.js";import{_ as le}from"./BV-ViRdZ.js";import ae from"./Bx5o2CJm.js";import{r as d,j as re,a5 as ne,c as l,o as s,a as t,ae as z,b as m,w as $,a8 as e,t as v,a9 as h,n as F,F as q,k as Z,d as M,aD as Y,_ as pe,ba as oe,a6 as g,aq as ie,aL as ye,a3 as se,ar as we,ao as _e,bL as ke,af as be}from"./yaqlGhj_.js";import{u as Q}from"./NrXdiPd1.js";import{u as ce}from"./DLlTtYjN.js";import{_ as ue}from"./DlAUqK2U.js";import{u as xe}from"./TQtYIyvt.js";import"./BAz7lLB1.js";import"./B0rbYps2.js";const $e={class:"relative w-full overflow-hidden bg-white shadow lg:rounded-lg"},Ce={class:"border-b p-4"},Ne={class:"flex items-center justify-between"},je={class:"flex items-center space-x-3"},Ee=["src"],Se={class:"font-normal"},Ae={class:"text-sm text-gray-500"},Fe={class:"flex items-center space-x-2"},ze={class:"flex-1 overflow-y-auto p-4"},Pe={key:0,class:"mb-4 whitespace-pre-wrap text-gray-700"},Te={class:"border-y border-gray-100"},Le={key:0,class:"aspect-square"},qe={key:0,class:"loading loading-spinner loading-md"},De={key:1,class:"flex aspect-square w-full animate-pulse flex-col items-center justify-center"},Ie={key:0,class:"mt-5 text-lg text-gray-500"},Ue={key:1,class:"grid grid-cols-2"},Re=["onClick"],Me={key:0,class:"loading loading-spinner loading-md"},Oe={key:1,class:"flex aspect-square w-full animate-pulse flex-col items-center justify-center"},Be={key:0,class:"mt-5 text-lg text-gray-500"},Ve={key:2,class:"grid grid-cols-2"},We=["onClick"],Ge={key:0,class:"loading loading-spinner loading-md"},He={key:1,class:"flex aspect-square w-full animate-pulse flex-col items-center justify-center"},Qe={key:0,class:"mt-5 text-lg text-gray-500"},Ze={class:"border-t p-4"},Je={class:"flex items-center justify-between text-sm text-gray-500"},Ke={class:"flex items-center space-x-4"},Xe={class:"flex items-center"},Ye={class:"flex items-center"},et={class:"flex items-center space-x-2"},tt={key:0},st={key:1},ot={class:"flex flex-col border-t lg:absolute lg:top-0 lg:right-0 lg:bottom-0 lg:left-1/2 lg:border-t-0 lg:border-l"},lt={class:"flex-1 overflow-y-auto p-4"},at=["src"],rt={class:"relative ml-2 flex flex-1 flex-col rounded-2xl bg-gray-100 px-3 py-2"},nt={class:"font-bold"},it={class:"mt-1 text-xs text-gray-500"},ct={key:0,class:"text-center text-gray-500"},ut={key:0,class:"flex items-center justify-center"},dt=["src"],mt={__name:"AdminHomeworkPost",props:{homework:{type:Object,required:!0}},emits:["delete"],setup(u,{emit:G}){const O=u,D=G,{strapiFetch:J}=ce(),P=d(null),b=d({}),w=d({}),H=d(!1),N=d(null),_=d(null),S=d(!1),I=n=>new Date(n).toLocaleString("zh-TW",{timeZone:"Asia/Taipei",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1}).replace(/\//g,"-").replace(",",""),B=()=>{S.value=!0},V=()=>{D("delete",O.homework.id),S.value=!1},A=()=>{S.value=!1},p=n=>{const r=n.split(".").pop().toLowerCase();return["jpg","jpeg","png","gif","webp"].includes(r)?"image":"video"},C=async n=>{try{const r=n.thumbnail||n.fileName,{url:y}=await J("homeworks/getFileSignedUrl","GET",{params:{fileName:r}});return y}catch(r){return g.warn("å徿ªæ¡ URL 失æ",{fileId:n.id,error:r}),null}},x=async n=>{try{const r=n.watermarked_fileName||n.fileName,{url:y}=await J("homeworks/getFileSignedUrl","GET",{params:{fileName:r}});return y}catch(r){return g.warn("åå¾åå§æªæ¡ URL 失æ",{fileId:n.id,error:r}),null}},j=async n=>{N.value=n,_.value=null,H.value=!0;const r=await x(n);r&&(_.value=r)},T=()=>{H.value=!1,N.value=null,_.value=null},U=async()=>{if(!O.homework?.homework_files?.length)return;const n=O.homework.homework_files.filter(r=>!b.value[r.id]&&!w.value[r.id]);n.length!==0&&await Promise.all(n.map(async r=>{w.value[r.id]=!0;try{const y=await C(r);y?b.value[r.id]={thumbnail:y}:(g.warn("æªæ¡ URL ç²å失æ",{fileName:r.fileName}),b.value[r.id]=null)}catch(y){g.error("ç²åæªæ¡ URL 失æ",{fileName:r.fileName,error:y}),b.value[r.id]=null}finally{w.value[r.id]=!1}}))};re(()=>{const n=new IntersectionObserver(r=>{r.forEach(y=>{y.isIntersecting&&(U(),n.unobserve(y.target))})},{rootMargin:"200px"});P.value&&n.observe(P.value),ne(()=>{n.disconnect()})});const K=n=>{ie.debug("åçè¼å
¥å¤±æï¼ä½¿ç¨é è¨é å"),n.target.src.endsWith("/default_user.webp")||(n.target.src="/default_user.webp")};return(n,r)=>{const y=le,L=ae,W=pe;return s(),l(q,null,[t("div",$e,[t("div",{ref_key:"postRef",ref:P,class:"flex flex-col lg:w-1/2"},[t("div",Ce,[t("div",Ne,[t("div",je,[m(y,null,{default:$(()=>[t("img",{src:("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(u.homework.author).photo,class:"h-10 w-10 rounded-full object-cover",alt:"ä½è
é å",onError:K},null,40,Ee)]),_:1}),t("div",null,[t("div",Se,v(("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(u.homework.author).name),1),t("div",Ae,v(I(u.homework.createdAt)),1)])]),t("div",Fe,[t("button",{class:"text-gray-400 hover:text-red-500",onClick:B},[m(L,{size:"1.25rem",name:"solar:close-circle-outline",class:""})])])])]),t("div",ze,[u.homework.description?(s(),l("p",Pe,v(u.homework.description),1)):h("",!0),t("div",Te,[(u.homework.homework_files||[]).length===1?(s(),l("div",Le,[t("div",{class:"relative h-full w-full cursor-pointer",onClick:r[0]||(r[0]=i=>j(u.homework.homework_files[0]))},[e(b)[u.homework.homework_files[0].id]?.thumbnail&&(u.homework.homework_files[0].thumbnail||p(u.homework.homework_files[0].fileName)==="image")?(s(),z(W,{key:0,src:e(b)[u.homework.homework_files[0].id].thumbnail,class:"h-full w-full object-cover",alt:"media thumbnail"},null,8,["src"])):(s(),l("div",{key:1,class:F(["flex h-full w-full flex-col items-center justify-center bg-gray-100",{"animate-pulse":e(w)[u.homework.homework_files[0].id]}])},[e(w)[u.homework.homework_files[0].id]?(s(),l("div",qe)):(s(),l("div",De,[m(L,{name:p(u.homework.homework_files[0].fileName)==="video"?"lucide:video":"lucide:image",size:"3rem",class:"text-gray-400"},null,8,["name"]),p(u.homework.homework_files[0].fileName)==="video"?(s(),l("span",Ie,"å½±ç縮åè½æªä¸")):h("",!0)]))],2))])])):(u.homework.homework_files||[]).length===2?(s(),l("div",Ue,[(s(!0),l(q,null,Z(u.homework.homework_files,i=>(s(),l("div",{key:i.id,class:"relative aspect-square cursor-pointer",onClick:X=>j(i)},[e(b)[i.id]?.thumbnail&&(i.thumbnail||p(i.fileName)==="image")?(s(),z(W,{key:0,src:e(b)[i.id].thumbnail,class:"h-full w-full object-cover",alt:"media thumbnail"},null,8,["src"])):(s(),l("div",{key:1,class:F(["flex h-full w-full flex-col items-center justify-center bg-gray-100",{"animate-pulse":e(w)[i.id]}])},[e(w)[i.id]?(s(),l("div",Me)):(s(),l("div",Oe,[m(L,{name:p(i.fileName)==="video"?"lucide:video":"lucide:image",size:"3rem",class:"text-gray-400"},null,8,["name"]),p(i.fileName)==="video"?(s(),l("span",Be,"å½±ç縮åè½æªä¸")):h("",!0)]))],2))],8,Re))),128))])):(u.homework.homework_files||[]).length>=3?(s(),l("div",Ve,[(s(!0),l(q,null,Z(u.homework.homework_files,i=>(s(),l("div",{key:i.id,class:"relative aspect-square cursor-pointer",onClick:X=>j(i)},[e(b)[i.id]?.thumbnail&&(i.thumbnail||p(i.fileName)==="image")?(s(),z(W,{key:0,src:e(b)[i.id].thumbnail,class:"h-full w-full object-cover",alt:"media thumbnail"},null,8,["src"])):(s(),l("div",{key:1,class:F(["flex h-full w-full flex-col items-center justify-center bg-gray-100",{"animate-pulse":e(w)[i.id]}])},[e(w)[i.id]?(s(),l("div",Ge)):(s(),l("div",He,[m(L,{name:p(i.fileName)==="video"?"lucide:video":"lucide:image",size:"3rem",class:"text-gray-400"},null,8,["name"]),p(i.fileName)==="video"?(s(),l("span",Qe,"å½±ç縮åè½æªä¸")):h("",!0)]))],2))],8,We))),128))])):h("",!0)])]),t("div",Ze,[t("div",Je,[t("div",Ke,[t("div",Xe,[m(L,{size:"1rem",name:"solar:heart-outline",class:"mr-1"}
1),M(" "+v(u.homework.likes.length),1)]),t("div",Ye,[m(L,{size:"1rem",name:"solar:chat-round-outline",class:"mr-1"}),M(" "+v(u.homework.comments.length),1)])]),t("div",et,[u.homework.author.id===u.homework.student.id?(s(),l("span",tt,"è¨ç·´å¸«ï¼"+v(("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(u.homework.teacher).name),1)):(s(),l("span",st,"å¸çï¼"+v(("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(u.homework.student).name),1))])])])],512),t("div",ot,[t("div",lt,[(s(!0),l(q,null,Z(O.homework.comments,i=>(s(),l("div",{key:i.id,class:"mb-3 flex items-start"},[m(y,null,{default:$(()=>[t("img",{src:("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(i.user).photo,class:"h-10 w-10 rounded-full object-cover",alt:"comment user avatar",onError:K},null,40,at)]),_:2},1024),t("div",rt,[t("span",nt,v(("useCustomerPhotoAndName"in n?n.useCustomerPhotoAndName:e(Q))(i.user).name),1),t("span",null,v(i.content),1),t("span",it,v(I(i.postedAt)),1)])]))),128)),u.homework.comments.length===0?(s(),l("div",ct,"å°ç¡çè¨")):h("",!0)])])]),(s(),z(oe,{to:"body"},[e(H)?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/90",onClick:T},[t("button",{class:"absolute top-4 right-4 z-[60] h-10 w-10 rounded-full bg-white/10 p-2 text-white hover:bg-white/20",onClick:Y(T,["stop"])},[m(L,{size:"1.5rem",name:"solar:close-circle-outline",class:""})]),t("div",{class:"relative flex h-screen w-full items-center justify-center",onClick:r[1]||(r[1]=Y(()=>{},["stop"]))},[e(_)?h("",!0):(s(),l("div",ut,[...r[3]||(r[3]=[t("div",{class:"loading loading-spinner loading-lg"},null,-1)])])),e(_)&&p(e(N)?.fileName)==="video"?(s(),l("video",{key:1,src:e(_),class:"h-auto max-h-screen w-full object-contain",controls:"",autoplay:""},null,8,dt)):h("",!0),e(_)&&p(e(N)?.fileName)==="image"?(s(),z(W,{key:2,src:e(_),class:"h-auto max-h-screen w-full object-contain",alt:"fullscreen preview"},null,8,["src"])):h("",!0)])])):h("",!0)])),(s(),z(oe,{to:"body"},[e(S)?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:A},[t("div",{class:"w-full max-w-md rounded-lg bg-white p-6 shadow-xl",onClick:r[2]||(r[2]=Y(()=>{},["stop"]))},[r[4]||(r[4]=t("h3",{class:"mb-4 text-lg font-normal"},"確èªåªé¤",-1)),r[5]||(r[5]=t("p",{class:"mb-6 text-gray-600"},"確å®è¦åªé¤éå使¥åï¼æ¤æä½ç¡æ³å¾©åã",-1)),t("div",{class:"flex justify-end space-x-4"},[t("button",{class:"rounded-lg px-4 py-2 text-gray-600 hover:bg-gray-100",onClick:A}," åæ¶ "),t("button",{class:"rounded-lg bg-red-500 px-4 py-2 text-white hover:bg-red-600",onClick:V}," 確èªåªé¤ ")])])])):h("",!0)]))],64)}}},ht=ue(mt,[["__scopeId","data-v-ad02d4d2"]]),ft={class:"flex h-[calc(100vh-73px)] bg-gray-300 lg:h-screen"},gt={class:"m-4 hidden h-fit flex-col gap-8 rounded-lg border bg-white p-4 shadow lg:flex"},vt={class:"w-64"},pt={class:"teacher-dropdown relative"},yt={class:"flex w-full items-center gap-2"},wt=["src"],_t={class:"truncate"},kt={key:1},bt={key:0,class:"absolute left-0 z-10 mt-1 w-full rounded-lg border bg-white py-1 shadow-lg"},xt=["onClick"],$t=["src"],Ct={class:"truncate"},Nt={class:"w-64"},jt={class:"student-dropdown relative"},Et={class:"flex w-full items-center gap-2"},St=["src"],At={class:"truncate"},Ft={key:1},zt={key:0,class:"absolute left-0 z-10 mt-1 w-full rounded-lg border bg-white py-1 shadow-lg"},Pt=["onClick"],Tt=["src"],Lt={class:"truncate"},qt={class:"w-64"},Dt={class:"flex flex-col gap-4"},It={key:0,class:"mt-2 rounded-md border p-2 text-sm"},Ut={class:"flex items-center gap-2"},Rt={key:0},Mt={key:1},Ot={class:"font-bold"},Bt={key:0,class:"py-8 text-center"},Vt={key:1,class:"flex flex-col space-y-2"},Wt={key:0,class:"text-center text-gray-500"},Gt={key:2,class:"flex w-full items-center justify-center p-4"},Ht={key:0,class:"loading"},Qt={__name:"index",setup(u){const{strapiFetch:G,getEntries:O}=ce(),{toast:D}=xe(),J=d(null),P=d([]),b=d(!1),w=d(!1),H=d(10),N=d(1),_=d(!0),S=d([]),I=d([]),B=d(!1),V=d(!1),A=d(null),p=d(!1),C=d(null),x=d(null),j=d("all"),T=d(!1),U=d(!1),K=o=>{const a=document.querySelector(".teacher-dropdown"),f=document.querySelector(".student-dropdown");a&&!a.contains(o.target)&&(T.value=!1),f&&!f.contains(o.target)&&(U.value=!1)},n=o=>{C.value=o?o.id:null,T.value=!1},r=o=>{x.value=o?o.id:null,U.value=!1};re(()=>{document.addEventListener("click",K),y(),ee()}),ne(()=>{document.removeEventListener("click",K)});const y=async()=>{try{const{data:o}=await O("purchase-orders",{filters:{service_type:"course",status:{$in:["已仿¬¾","é²è¡ä¸","宿"]}},sort:"createdAt:desc",populate:{customer:{fields:["id","line_displayName","line_picture_url","homework_display_name"],populate:{homework_display_picture:!0}},expert:{populate:{user:{fields:["id","line_displayName","line_picture_url","homework_display_name"],populate:{homework_display_picture:!0}}}}}}),a=new Map;o.forEach(E=>{const k=E.customer;k&&(a.has(k.id)||a.set(k.id,k))}),I.value=Array.from(a.values());const f=new Map;o.forEach(E=>{const k=E.expert.user;k&&(f.has(k.id)||f.set(k.id,k))}),S.value=Array.from(f.values()),g.debug("students:",I.value),g.debug("teachers:",S.value)}catch(o){g.error("Failed to fetch students:",o)}},L=async()=>{try{B.value=!0;const o=await G("homework-files/reprocess-failed","POST");if(o.success)D({title:"èçæå",description:`${o.message}ï¼å
± ${o.count} åæªæ¡`}),await W();else throw new Error(o.message||"éæ°èçæªæ¡å¤±æ")}catch(o){g.error("Failed to reprocess files:",o),D({title:"èç失æ",description:o.message||"éæ°èçæªæ¡æç¼çé¯èª¤",variant:"destructive"})}finally{B.value=!1}},W=async()=>{try{V.value=!0;const o=await G("homework-files/check-queue-status","GET");if(g.debug("response:",o),!o.success)throw new Error(`çæ
檢æ¥å¤±æ
1: ${o.status} ${o.statusText}`);A.value=o.data,D({title:"èçéåçæ
",description:A.value.isIdle?"æææªæ¡å·²èç宿":`ç®åæ ${A.value.queueLength} åæªæ¡æ£å¨èçä¸`})}catch(o){throw g.error("檢æ¥ä½åçæ
失æ:",o),o}finally{V.value=!1}},i=async()=>{try{p.value=!0;const o=await G("homework-files/reset-stuck","POST");if(o.success)D({title:"éç½®æå",description:`${o.message}ï¼å
± ${o.count} åæªæ¡`}),o.count>0&&setTimeout(()=>{D({title:"æç¤º",description:"å¯ä»¥é»æãéæ°èçé¯èª¤æªæ¡ãæéä¾èçéäºæªæ¡"})},1e3);else throw new Error(o.message||"éç½®è¶
ææªæ¡å¤±æ")}catch(o){g.error("Failed to reset stuck files:",o),D({title:"é置失æ",description:o.message||"éç½®è¶
ææªæ¡æç¼çé¯èª¤",variant:"destructive"})}finally{p.value=!1}},X=()=>{P.value=[],N.value=1,_.value=!0,de(),ee(!1)},{reset:de}=ye(J,async()=>{!w.value&&_.value&&(N.value++,await ee(!0))},{distance:10,canLoadMore:()=>_.value&&!w.value}),ee=async(o=!1)=>{o?w.value=!0:b.value=!0;try{g.debug("éå§è¼å
¥é 碼:",N.value,"loadMore:",o);const a={sort:"createdAt:desc",pagination:{page:N.value,pageSize:H.value},populate:{author:{populate:{homework_display_picture:!0},fields:["id","line_displayName","line_picture_url","homework_display_name"]},student:{populate:{homework_display_picture:!0},fields:["id","line_displayName","line_picture_url","homework_display_name"]},teacher:{populate:{homework_display_picture:!0},fields:["id","line_displayName","line_picture_url","homework_display_name"]},homework_files:!0,comments:{populate:{user:{populate:{homework_display_picture:!0},fields:["id","line_displayName","line_picture_url","homework_display_name"]}}},likes:{populate:{user:{fields:["id"]}}}}};a.filters={},C.value&&(a.filters.teacher={id:{$eq:C.value}}),x.value&&(a.filters.student={id:{$eq:x.value}}),j.value==="pending"?a.filters.comments={$null:!0}:j.value==="new-message"&&(a.filters.$and=[{comments:{$notNull:!0}},{comments:{user:{id:{$eq:x.value}}}}]);const{data:f,meta:E}=await O("homeworks",a);g.debug("è¼å
¥é 碼:",N.value),g.debug("è¼å
¥æ¸é:",f.length),g.debug("ç¸½æ¸æ:",E.pagination.total),o?P.value.push(...f):P.value=f,_.value=N.value*H.value<E.pagination.total,g.debug("æ¯å¦éææ´å¤:",_.value)}catch(a){g.error("Failed to fetch homeworks:",a)}finally{b.value=!1,w.value=!1}},me=async o=>{try{await G(`homeworks/${o}`,"DELETE"),await ee()}catch(a){g.error("Failed to delete homework:",a)}};se(C,()=>{X()}),se(x,()=>{X()}),se(j,()=>{X()});const he=()=>{C.value=null,x.value=null,j.value="all"},R=o=>({name:o.homework_display_name||o.line_displayName,picture:o.homework_display_picture?.formats?.thumbnail?.url||o.line_picture_url}),te=o=>{ie.debug("handleImageError"),o.target.src.endsWith("/default_user.webp")||(o.target.src="/default_user.webp")};return(o,a)=>{const f=ve,E=le,k=ae,fe=ht;return s(),l("div",ft,[t("div",gt,[m(f,{variant:"outline",class:"hover:bg-gray-200 hover:text-gray-800",onClick:a[0]||(a[0]=c=>("navigateTo"in o?o.navigateTo:e(we))("/dashboard/admin/homework/create"))},{default:$(()=>[...a[6]||(a[6]=[M(" æ°å¢ä½æ¥ ",-1)])]),_:1}),t("div",vt,[a[8]||(a[8]=t("label",{class:"mb-1 block text-sm font-normal"},"è師",-1)),t("div",pt,[m(f,{class:"w-full justify-start rounded border bg-white px-4 py-2 text-gray-600 hover:bg-gray-200 hover:text-gray-600",onClick:a[1]||(a[1]=Y(c=>T.value=!e(T),["stop"]))},{default:$(()=>[t("div",yt,[e(C)?(s(),l(q,{key:0},[m(E,null,{default:$(()=>[t("img",{src:R(e(S).find(c=>c.id===e(C))).picture,alt:"teacher avatar",class:"h-5 w-5 rounded-full object-cover",onError:te},null,40,wt)]),_:1}),t("span",_t,v(R(e(S).find(c=>c.id===e(C))).name),1)],64)):(s(),l("span",kt,"å
¨é¨")),m(k,{name:"solar:alt-arrow-down-outline",size:"1rem",class:F(["ml-auto text-gray-400 transition-transform duration-200",{"rotate-180":e(T)}])},null,8,["class"])])]),_:1}),e(T)?(s(),l("div",bt,[t("div",{class:F(["flex cursor-pointer items-center gap-2 px-3 py-2 hover:bg-gray-100",{"bg-gray-50":!e(C)}]),onClick:a[2]||(a[2]=c=>n(null))},[...a[7]||(a[7]=[t("span",null,"å
¨é¨",-1)])],2),(s(!0),l(q,null,Z(e(S),c=>(s(),l("div",{key:c.id,class:F(["flex cursor-pointer items-center gap-2 px-3 py-2 hover:bg-gray-100",{"bg-gray-50":e(C)===c.id}]),onClick:ge=>n(c)},[m(E,null,{default:$(()=>[t("img",{src:R(c).picture,alt:"teacher avatar",class:"h-5 w-5 rounded-full object-cover",onError:te},null,40,$t)]),_:2},1024),t("span",Ct,v(R(c).name),1)],10,xt))),128))])):h("",!0)])]),t("div",Nt,[a[10]||(a[10]=t("label",{class:"mb-1 block text-sm font-normal"},"å¸ç",-1)),t("div",jt,[m(f,{class:"w-full justify-start rounded border bg-white px-4 py-2 text-gray-600 hover:bg-gray-200 hover:text-gray-600",onClick:a[3]||(a[3]=Y(c=>U.value=!e(U),["stop"]))},{default:$(()=>[t("div",Et,[e(x)?(s(),l(q,{key:0},[m(E,null,{default:$(()=>[t("img",{src:R(e(I).find(c=>c.id===e(x))).picture,alt:"student avatar",class:"h-5 w-5 rounded-full object-cover",onError:te},null,40,St)]),_:1}),t("span",At,v(R(e(I).find(c=>c.id===e(x))).name),1)],64)):(s(),l("span",Ft,"å
¨é¨")),m(k,{name:"solar:alt-arrow-down-outline",size:"1rem",class:F(["ml-auto text-gray-400 transition-transform duration-200",{"rotate-180":e(U)}])},null,8,["class"])])]),_:1}),e(U)?(s(),l("div",zt,[t("div",{class:F(["flex cursor-pointer items-center gap-2 px-3 py-2 hover:bg-gray-100",{"bg-gray-50":!e(x)}]),onClick:a[4]||(a[4]=c=>r(null))},[...a[9]||(a[9]=[t("span",null,"å
¨é¨",-1)])],2),(s(!0),l(q,null,Z(e(I),c=>(s(),l("div",{key:c.id,class:F(["flex cursor-pointer items-center gap-2 px-3 py-2 hover:bg-gray-100",{"bg-gray-50":e(x)===c.id}]),onClick:ge=>r(c)},[m(E,null,{default:$(()=>[t("img",{src:R(c).picture,alt:"student avatar",class:"h-5 w-5 rounded-full object-cover",onError:te},null,40,Tt)]),_:2},1024),t("span",Lt,v(R(c).name),1)],10,Pt))),128))])):h("",!0)])]),t("div",qt,[a[12]||(a[12]=t("label",{class:"mb-1 block text-sm font-normal"},"çæ
",-1)),_e(t("select",{"onUpdate:modelValue":a[5]||(a[5]=c=>be(j)?j.value=c:null),class:"w-full rounded border bg-white px-3 py-2"},[...a[11]||(a[11]=[t("option",{value:"all"},"å
¨é¨",-1),t("option",{value:"pending"},"è師æªåè¦",-1),t("option",{value:"new-message"},"å¸çæ°çè¨",-1)])],512),[[ke,e(j)]])]),m(f,{variant:"outline",class:"hover:bg-gray-200 hover:text-gray-800",onClick:he},{default:$(()=>[...a[13]||(a[13]=[M(" æ¸
é¤ç¯©é¸ ",-1)])]),_:1}),t("div",Dt,[m(f,{variant:"outline",disabled:e(p),class:"hover:bg-gray-200 hover:text-gray-800",onClick:i},{default:$(()=>[e(p)?(s(),z(k,{key:0,size:"1rem",name:"lucide:loader",class:"mr-2 animate-spin"})):h("",!0),M(" "+v(e(p)?"éç½®ä¸...":"éç½®è¶
ææªæ¡ï¼>24hï¼"),1)]),_:1},8,["disabled"]),m(f,{variant:"outline",disabled:e(B),class:"hover:bg-gray-200 hover:text-gray-800",onClick:L},{default:$(()=>[e(B)?(s(),z(k,{key:0,size:"1rem",name:"lucide:loader",class:"mr-2 animate-spin"})):h("",!0),M(" "+v(e(B)?"èçä¸...":"éæ°èçé¯èª¤æªæ¡"),1)]),_:1},8,["disabled"]),m(f,{variant:"outline",disabled:e(V),class:"hover:bg-gray-200 hover:text-gray-800",onClick:W},{default:$(()=>[e(V)?(s(),z(k,{key:0,size:"1rem",name:"lucide:loader",class:"mr-2 animate-spin"})):h("",!0),M(" "+v(e(V)?"檢æ¥ä¸...":"檢æ¥èçéåçæ
"),1)]),_:1},8,["disabled"]),e(A)?(s(),l("div",It,[t("div",Ut,[t("div",{class:F(["h-3 w-3 rounded-full",e(A).isIdle?"bg-green-500":"bg-yellow-500"])},null,2),e(A).isIdle?(s(),l("div",Rt,"æææªæ¡å·²èç宿")):(s(),l("div",Mt,[t("span",Ot,v(e(A).queueLength),1),a[14]||(a[14]=M(" åæªæ¡æ£å¨èçä¸ ",-1))]))])])):h("",!0)])]),t("div",{ref_key:"containerRef",ref:J,class:"flex-1 overflow-y-scroll lg:py-4 lg:pr-4"},[e(b)?(s(),l("div",Bt)):(s(),l("div",Vt,[(s(!0),l(q,null,Z(e(P),c=>(s(),z(fe,{key:c.id,homework:c,onDelete:me}
1,null,8,["homework"]))),128)),e(P).length===0?(s(),l("div",Wt,"ç®åæ²æä½æ¥")):h("",!0)])),e(_)||e(w)?(s(),l("div",Gt,[e(w)?(s(),l("span",Ht)):h("",!0)])):h("",!0)],512)])}}},as=ue(Qt,[["__scopeId","data-v-34ef9bc0"]]);export{as 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.