2 lines
3.9 KiB
JavaScript
2 lines
3.9 KiB
JavaScript
import{_ as T}from"./PageHead.vue_vue_type_script_setup_true_lang-D45_AHIh.js";import{_ as $}from"./LoadState.vue_vue_type_script_setup_true_lang-DkVVX15k.js";import{_ as C}from"./ElectiveBar.vue_vue_type_script_setup_true_lang-Cy49YMPm.js";import{_ as z}from"./ReadingItem.vue_vue_type_script_setup_true_lang-CoT1-n5U.js";import{d as O,y as B,o as R,c as d,i as h,j as b,e as n,n as l,b as t,t as r,C as N,F as m,B as g,f as v,r as q,x as f,l as V,p as j,s as x}from"./index-BJq7_SVs.js";import{c as F,F as L}from"./format-bcE-cYHJ.js";const M={class:"card","aria-label":"Postęp czytania"},S={style:{margin:"0 0 8px"}},D={class:"big-num nums"},P={class:"muted"},E={class:"muted small"},W=["aria-valuenow"],A={class:"chips wrap",style:{"margin-top":"12px"}},G=["aria-pressed"],I=["aria-pressed"],U=["aria-labelledby"],H={class:"section-head"},J=["id"],K={class:"badge",style:{"margin-left":"8px"}},Q={class:"muted small nums"},X={class:"subhead"},Y={class:"rows"},Z={class:"subhead"},ee={class:"rows"},oe={key:0,class:"empty",style:{"margin-top":"16px"}},de=O({__name:"ReadingsView",setup(te){const s=B(),_=q(!1),p=q(!1);R(()=>{Promise.all([s.loadReadings(),s.loadCourses()])});const k=f(()=>{const y=new Map;for(const a of s.readings)y.set(a.course_id,[...y.get(a.course_id)??[],a]);const i=a=>s.courseById.get(a)?.sort_order??0;return[...y].sort(([a],[e])=>i(a)-i(e)).map(([,a])=>{const e=a.filter(o=>(!_.value||!o.read_at)&&(!p.value||o.owned_at));return{course:a[0].course,required:e.filter(o=>o.is_required),optional:e.filter(o=>!o.is_required),read:a.filter(o=>o.read_at).length,total:a.length}}).filter(a=>a.required.length+a.optional.length>0)}),u=f(()=>s.readingStats),w=f(()=>u.value.requiredTotal?Math.round(u.value.requiredRead/u.value.requiredTotal*100):0);return(y,i)=>{const a=V("router-link");return l(),d("div",null,[h(T,{eyebrow:"Do przeczytania",title:"Lektury"}),h($,{ready:n(s).loaded.readings&&n(s).loaded.courses,error:n(s).error,onRetry:i[2]||(i[2]=e=>n(s).retry())},{default:b(()=>[h(C),t("section",M,[t("p",S,[t("span",D,r(u.value.requiredRead),1),t("span",P," z "+r(u.value.requiredTotal)+" obowiązkowych",1),t("span",E," · łącznie "+r(u.value.read)+" z "+r(u.value.total),1)]),t("div",{class:"progress-bar",role:"progressbar","aria-valuenow":w.value,"aria-valuemin":"0","aria-valuemax":"100","aria-label":"Przeczytane lektury obowiązkowe"},[t("span",{style:N({width:w.value+"%"})},null,4)],8,W)]),t("div",A,[t("button",{class:"chip",type:"button","aria-pressed":_.value,onClick:i[0]||(i[0]=e=>_.value=!_.value)},"Tylko nieprzeczytane",8,G),t("button",{class:"chip",type:"button","aria-pressed":p.value,onClick:i[1]||(i[1]=e=>p.value=!p.value)},"Tylko posiadane",8,I)]),(l(!0),d(m,null,g(k.value,e=>(l(),d("section",{key:e.course.id,class:"section","aria-labelledby":`c${e.course.id}`},[t("div",H,[t("h2",{id:`c${e.course.id}`},[h(a,{to:`/przedmioty/${e.course.id}`,style:{color:"inherit","text-decoration":"none"}},{default:b(()=>[j(r(e.course.name),1)]),_:2},1032,["to"]),t("span",K,r(n(L)[e.course.form]),1)],8,J),t("span",Q,r(e.read)+"/"+r(e.total),1)]),e.required.length?(l(),d(m,{key:0},[t("h3",X,"Obowiązkowe · "+r(e.required.length),1),t("ul",Y,[(l(!0),d(m,null,g(e.required,o=>(l(),x(z,{key:o.id,reading:o,onToggle:c=>n(s).toggleReading(o.id,c),onOwn:c=>n(s).toggleOwned(o.id,c)},null,8,["reading","onToggle","onOwn"]))),128))])],64)):v("",!0),e.optional.length?(l(),d(m,{key:1},[t("h3",Z,"Dodatkowe · "+r(e.optional.length),1),t("ul",ee,[(l(!0),d(m,null,g(e.optional,o=>(l(),x(z,{key:o.id,reading:o,onToggle:c=>n(s).toggleReading(o.id,c),onOwn:c=>n(s).toggleOwned(o.id,c)},null,8,["reading","onToggle","onOwn"]))),128))])],64)):v("",!0)],8,U))),128)),k.value.length?v("",!0):(l(),d("p",oe,r(p.value?_.value?"Wszystkie posiadane lektury przeczytane.":"Nie masz jeszcze żadnej lektury.":_.value?"Wszystko przeczytane. Gratulacje!":n(F)(0,"lektura","lektury","lektur")+" do wyświetlenia."),1))]),_:1},8,["ready","error"])])}}});export{de as default};
|