48ea61cdcc
- Product documentation in docs/products/ - Updated MEMORY.md with product info - quiXzoom Auth Core as AAMOS Identity product
2 lines
8.5 KiB
JavaScript
2 lines
8.5 KiB
JavaScript
import{u as E,a as P,p as z,n as R,r as Z,j as e,L as p,aX as g,v as x,x as a,y as t,A as F,ag as f,ah as N,ak as v,q as I,M as y,z as V}from"./index-oAPVDf-r.js";import{B as n}from"./badge-Qwi4CUXx.js";import{T as G,a as H,b as o,c as K}from"./tabs-CYk3p-Aj.js";import{u as Q}from"./useQuery-BxfmyRLz.js";import{A as U}from"./arrow-left-m6EiMbb-.js";import{Z as w}from"./zap-RaPdKGJZ.js";import{I as b}from"./image-DuU1QaV8.js";import{C as X}from"./clock-DRtqJZUo.js";import{C as $}from"./circle-alert-C1Hs9zwh.js";import{R as k}from"./refresh-cw-DEBvxUr1.js";import{E as J}from"./eye-G89nJUb2.js";import{S as W}from"./send-DsElwFaU.js";import{A as Y}from"./activity-B0zyNqjw.js";import"./index-DGH-oZ97.js";const ue=()=>{E();const{t:r}=P(),{user:i,isLoading:C}=z(),{ordererProfile:A,isLoading:q,isActiveOrderer:L}=R(),[c,T]=Z.useState("active"),{data:l=[],isLoading:_,refetch:S}=Q({queryKey:["orderer-missions",i==null?void 0:i.id],queryFn:async()=>{if(!i)return[];const{data:s,error:d}=await V.from("missions").select("*").eq("created_by",i.id).order("created_at",{ascending:!1});if(d)throw d;return s},enabled:!!i}),m=l.filter(s=>s.status==="active"),h=l.filter(s=>s.status==="completed"),u=l.filter(s=>s.status==="active"&&new Date(s.created_at)>new Date(Date.now()-24*60*60*1e3)),M=[],O=l.reduce((s,d)=>s+d.reward_credits,0);if(C||q)return e.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center",children:e.jsx(p,{className:"w-8 h-8 animate-spin text-primary"})});if(!i)return e.jsx(g,{to:"/auth",replace:!0});if(!A||!L)return e.jsx(g,{to:"/orderer/dashboard",replace:!0});const B=s=>{if(!s||s==="once")return r("orderer.frequency.once");switch(s){case"daily":return r("orderer.frequency.daily");case"weekly":return r("orderer.frequency.weekly");case"biweekly":return r("orderer.frequency.biweekly");case"monthly":return r("orderer.frequency.monthly");default:return s}},D=s=>{switch(s){case"active":return e.jsx(n,{className:"bg-success text-success-foreground",children:r("orderer.missionStatus.active")});case"completed":return e.jsx(n,{variant:"secondary",children:r("orderer.missionStatus.delivered")});case"cancelled":return e.jsx(n,{variant:"destructive",children:r("orderer.missionStatus.cancelled")});default:return e.jsx(n,{variant:"outline",children:s})}},j=c==="active"?m:c==="delivered"?h:c==="pending"?u:l;return e.jsxs("div",{className:"min-h-screen bg-background text-foreground p-6",children:[e.jsxs("div",{className:"flex items-center gap-4 mb-6",children:[e.jsx(x,{variant:"ghost",size:"icon",onClick:()=>window.close(),children:e.jsx(U,{className:"w-5 h-5"})}),e.jsxs("div",{children:[e.jsxs("h1",{className:"text-2xl font-bold flex items-center gap-2",children:[e.jsx(w,{className:"w-6 h-6 text-primary"}),"Operations"]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Uppdragshantering och distribution"})]})]}),e.jsxs("div",{className:"grid gap-6 lg:grid-cols-2",children:[e.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4 lg:col-span-2",children:[e.jsx(a,{className:"glass-card",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-success/10 flex items-center justify-center",children:e.jsx(F,{className:"w-5 h-5 text-success"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-2xl font-bold",children:m.length}),e.jsx("p",{className:"text-xs text-muted-foreground",children:r("orderer.operations.activeAssignments")})]})]})})}),e.jsx(a,{className:"glass-card",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center",children:e.jsx(b,{className:"w-5 h-5 text-primary"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-2xl font-bold",children:h.length}),e.jsx("p",{className:"text-xs text-muted-foreground",children:r("orderer.operations.deliveredAssets")})]})]})})}),e.jsx(a,{className:"glass-card",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-warning/10 flex items-center justify-center",children:e.jsx(X,{className:"w-5 h-5 text-warning"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-2xl font-bold",children:u.length}),e.jsx("p",{className:"text-xs text-muted-foreground",children:r("orderer.operations.pendingReview")})]})]})})}),e.jsx(a,{className:"glass-card",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-destructive/10 flex items-center justify-center",children:e.jsx($,{className:"w-5 h-5 text-destructive"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-2xl font-bold",children:M.length}),e.jsx("p",{className:"text-xs text-muted-foreground",children:r("orderer.operations.disputes")})]})]})})})]}),e.jsxs(a,{className:"glass-card lg:col-span-2",children:[e.jsxs(f,{children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(w,{className:"w-5 h-5 text-primary"}),r("orderer.operations.assignmentsOverview")]}),e.jsxs(v,{children:[r("orderer.operations.totalValue"),": ",O," kr"]})]}),e.jsx(t,{children:e.jsxs(G,{value:c,onValueChange:T,children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsxs(H,{className:"grid grid-cols-4 w-auto",children:[e.jsx(o,{value:"active",children:r("orderer.tabs.active")}),e.jsx(o,{value:"delivered",children:r("orderer.tabs.delivered")}),e.jsx(o,{value:"pending",children:r("orderer.tabs.pending")}),e.jsx(o,{value:"all",children:r("orderer.tabs.all")})]}),e.jsx(x,{variant:"outline",size:"sm",onClick:()=>S(),children:e.jsx(k,{className:"w-4 h-4"})})]}),e.jsx(K,{value:c,className:"mt-0",children:_?e.jsx("div",{className:"flex justify-center py-8",children:e.jsx(p,{className:"w-6 h-6 animate-spin text-muted-foreground"})}):j.length===0?e.jsx("div",{className:"text-center py-8",children:e.jsx("p",{className:"text-muted-foreground",children:r("orderer.operations.noAssignments")})}):e.jsx("div",{className:"grid gap-3 md:grid-cols-2",children:j.map(s=>e.jsx(I.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:"p-4 rounded-lg border border-border bg-secondary/20 hover:bg-secondary/40 transition-colors cursor-pointer",onClick:()=>window.open(`/orderer/mission/${s.id}`,"_blank"),children:e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[D(s.status),s.frequency&&s.frequency!=="once"&&e.jsxs(n,{variant:"outline",className:"text-xs gap-1",children:[e.jsx(k,{className:"w-3 h-3"}),B(s.frequency)]})]}),e.jsx("h4",{className:"font-medium truncate",children:s.title}),s.area_name&&e.jsxs("p",{className:"text-sm text-muted-foreground flex items-center gap-1 mt-1",children:[e.jsx(y,{className:"w-3 h-3"}),s.area_name]}),e.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-muted-foreground",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(b,{className:"w-3 h-3"}),s.required_photos," assets"]}),e.jsxs("span",{className:"text-primary font-medium",children:[s.reward_credits," kr"]})]})]}),e.jsx(x,{variant:"ghost",size:"sm",children:e.jsx(J,{className:"w-4 h-4"})})]})},s.id))})})]})})]}),e.jsxs(a,{className:"glass-card",children:[e.jsxs(f,{children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(W,{className:"w-5 h-5 text-primary"}),"Distribution"]}),e.jsx(v,{children:"Aktivering, räckvidd och prioritering"})]}),e.jsxs(t,{className:"space-y-3",children:[e.jsx(a,{className:"bg-secondary/30",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(y,{className:"w-5 h-5 text-primary"}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:"Zon-aktivering"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Geografisk targeting"})]})]}),e.jsx(n,{variant:"outline",children:"Aktiv"})]})})}),e.jsx(a,{className:"bg-secondary/30",children:e.jsx(t,{className:"p-4",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Y,{className:"w-5 h-5 text-accent"}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:"Contributor-prioritering"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Erfarna operatörer"})]})]}),e.jsx(n,{variant:"secondary",children:"Pro"})]})})})]})]})]})]})};export{ue as default};
|