diff --git a/dist/assets/ActivitiesView-4eRkBUJ5.js b/dist/assets/ActivitiesView-4eRkBUJ5.js new file mode 100644 index 0000000..3944c54 --- /dev/null +++ b/dist/assets/ActivitiesView-4eRkBUJ5.js @@ -0,0 +1 @@ +import{i as j,c as a,a as e,g as M,t as o,f as r,n as u,F as B,k as N,e as p,y as $,w as h,d as c,A as E,v as A,T,r as v,o as n}from"./index-DWNalbut.js";import{u as V}from"./activities-DN88j27F.js";const S={class:"p-4 sm:p-6"},z={class:"flex flex-col sm:flex-row sm:items-center justify-between gap-4 mb-6"},L={class:"grid grid-cols-2 lg:grid-cols-4 gap-3 sm:gap-4 mb-6"},F={class:"card p-3 sm:p-4"},H={class:"text-xl sm:text-2xl font-bold text-white"},U={class:"card p-3 sm:p-4"},I={class:"text-xl sm:text-2xl font-bold text-green-400"},q={class:"card p-3 sm:p-4"},K={class:"text-xl sm:text-2xl font-bold text-red-400"},O={class:"card p-3 sm:p-4"},W={class:"text-xl sm:text-2xl font-bold text-blue-400"},G={class:"flex gap-2 mb-6 overflow-x-auto pb-2 -mx-4 px-4 sm:mx-0 sm:px-0"},J={class:"card divide-y divide-pulse-border"},P=["onClick"],Q={key:0,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},R={class:"text-xl hidden sm:block"},X={class:"flex-1 min-w-0"},Y={class:"flex items-start sm:items-center gap-2"},Z={class:"text-base sm:hidden"},ee={class:"flex flex-wrap items-center gap-1 sm:gap-2 text-xs sm:text-sm text-pulse-muted mt-1"},te={key:0},se={key:1},le={key:0,class:"p-8 sm:p-12 text-center"},oe={key:0,class:"fixed inset-0 z-50 flex items-end sm:items-center justify-center p-0 sm:p-4"},ne={class:"relative card w-full sm:max-w-md rounded-b-none sm:rounded-b-xl max-h-[90vh] overflow-y-auto"},ie={class:"px-4 sm:px-6 py-4 border-b border-pulse-border sticky top-0 bg-pulse-card z-10"},ae={class:"flex items-center justify-between"},re={class:"flex flex-col-reverse sm:flex-row gap-3 pt-2"},xe={__name:"ActivitiesView",setup(de){const l=V(),m=v(!1),x=v("all"),i=v({type:"task",subject:"",dueDate:""});j(()=>{l.fetchActivities(),l.fetchStats()});async function D(){if(i.value.subject)try{await l.createActivity({...i.value,dueDate:i.value.dueDate||null}),m.value=!1,i.value={type:"task",subject:"",dueDate:""}}catch(d){console.error("Error:",d)}}async function C(d){await l.completeActivity(d)}function b(d){return d?new Date(d).toLocaleDateString("de-DE",{day:"2-digit",month:"2-digit",year:"numeric"}):"-"}const f={note:"📝",call:"📞",email:"✉️",meeting:"🤝",task:"✅"},_={note:"Notiz",call:"Anruf",email:"E-Mail",meeting:"Meeting",task:"Aufgabe"};return(d,t)=>{var g,k,w,y;return n(),a("div",S,[e("div",z,[t[11]||(t[11]=e("div",null,[e("h1",{class:"text-xl sm:text-2xl font-bold text-white"},"Aktivitäten"),e("p",{class:"text-pulse-muted text-sm"},"Ihre Aufgaben und Aktivitäten")],-1)),e("button",{onClick:t[0]||(t[0]=s=>m.value=!0),class:"btn-primary w-full sm:w-auto"},[...t[10]||(t[10]=[e("svg",{class:"w-5 h-5 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1),M(" Neue Aktivität ",-1)])])]),e("div",L,[e("div",F,[e("p",H,o(((g=r(l).stats)==null?void 0:g.totalToday)||0),1),t[12]||(t[12]=e("p",{class:"text-xs sm:text-sm text-pulse-muted"},"Heute fällig",-1))]),e("div",U,[e("p",I,o(((k=r(l).stats)==null?void 0:k.completedToday)||0),1),t[13]||(t[13]=e("p",{class:"text-xs sm:text-sm text-pulse-muted"},"Heute erledigt",-1))]),e("div",q,[e("p",K,o(((w=r(l).stats)==null?void 0:w.overdue)||0),1),t[14]||(t[14]=e("p",{class:"text-xs sm:text-sm text-pulse-muted"},"Überfällig",-1))]),e("div",O,[e("p",W,o(((y=r(l).stats)==null?void 0:y.upcoming)||0),1),t[15]||(t[15]=e("p",{class:"text-xs sm:text-sm text-pulse-muted"},"Diese Woche",-1))])]),e("div",G,[e("button",{onClick:t[1]||(t[1]=s=>{x.value="all",r(l).fetchActivities()}),class:u(["btn-sm whitespace-nowrap",x.value==="all"?"btn-primary":"btn-ghost"])}," Alle ",2),e("button",{onClick:t[2]||(t[2]=s=>{x.value="upcoming",r(l).fetchActivities({isCompleted:"false"})}),class:u(["btn-sm whitespace-nowrap",x.value==="upcoming"?"btn-primary":"btn-ghost"])}," Offen ",2),e("button",{onClick:t[3]||(t[3]=s=>{x.value="completed",r(l).fetchActivities({isCompleted:"true"})}),class:u(["btn-sm whitespace-nowrap",x.value==="completed"?"btn-primary":"btn-ghost"])}," Erledigt ",2)]),e("div",J,[(n(!0),a(B,null,N(r(l).activities,s=>(n(),a("div",{key:s.id,class:"p-3 sm:p-4 flex items-start sm:items-center gap-3 sm:gap-4 hover:bg-pulse-dark/30 transition-colors"},[e("button",{onClick:h(ue=>C(s.id),["stop"]),class:u(["w-6 h-6 rounded-full border-2 flex items-center justify-center transition-colors flex-shrink-0 mt-0.5 sm:mt-0",s.isCompleted?"bg-green-500 border-green-500 text-white":"border-pulse-border hover:border-primary-500"])},[s.isCompleted?(n(),a("svg",Q,[...t[16]||(t[16]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"3",d:"M5 13l4 4L19 7"},null,-1)])])):p("",!0)],10,P),e("span",R,o(f[s.type]),1),e("div",X,[e("div",Y,[e("span",Z,o(f[s.type]),1),e("p",{class:u(["font-medium text-sm sm:text-base",s.isCompleted?"text-pulse-muted line-through":"text-white"])},o(s.subject),3)]),e("div",ee,[e("span",null,o(_[s.type]),1),s.contact?(n(),a("span",te,"· "+o(s.contact.name),1)):p("",!0),s.company?(n(),a("span",se,"· "+o(s.company.name),1)):p("",!0)]),s.dueDate?(n(),a("span",{key:0,class:u(["text-xs mt-1 inline-block sm:hidden",new Date(s.dueDate)