PageSourceSearch

https://digitalbehandling.se/assets/SubmissionsDesktopPage-BoHPmgUJ.js

js digitalbehandling.se collected 2026-09-30 08:27:09 UTC 5,545 bytes, 1 lines download raw bytes

1import{r as p,j as e,C as b,k as v,g as w,n as N,h as y,B as g,A as C,dl as S,b2 as E,d1 as k,R,b9 as T,aL as B}from"./index-CobRY8C4.js";import{C as I}from"./types-Cu78f2DN.js";import"./aiResponseSchema-Dr5w6DAb.js";import"./vfs_fonts-BwDagwDl.js";import{u as L}from"./useCustomCategories-CT1RLc8O.js";import"./fordjupningCategories-C-7LBH-e.js";import{l as _}from"./index-BLzEcbIU.js";import{f as G,b as O}from"./submissionCategorization-CA1-mOns.js";import{S as P}from"./settings-2-CBVOlXa6.js";import{F as j}from"./folder-open-BqOVm63r.js";import{S as A}from"./scroll-text-BZ8uyyZJ.js";function D(){const[r,l]=p.useState(!0),[n,a]=p.useState(null),[u,o]=p.useState(null),[i,c]=p.useState([]),[f,s]=p.useState(0);return p.useEffect(()=>{let t=!1;return l(!0),a(null),Promise.all([_(),G()]).then(([m,x])=>{if(t)return;const d=m;c(d),o(O(d,x))}).catch(m=>{t||a(m instanceof Error?m.message:"Kunde inte hämta inlämningar")}).finally(()=>{t||l(!1)}),()=>{t=!0}},[f]),{loading:r,error:n,buckets:u,rows:i,refresh:()=>s(t=>t+1)}}function h({title:r,description:l,count:n,unreviewed:a,icon:u,onClick:o,emptyHint:i="Inga inlämningar ännu"}){return e.jsxs(b,{role:"button",tabIndex:0,onClick:o,onKeyDown:c=>{(c.key==="Enter"||c.key===" ")&&(c.preventDefault(),o())},className:"p-5 cursor-pointer hover:shadow-md transition-shadow focus:outline-none focus:ring-2 focus:ring-primary",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsxs("div",{className:"flex flex-col items-center gap-1.5 shrink-0 w-12",children:[a>0?e.jsxs(v,{variant:"destructive",className:"px-1.5 py-0 text-[10px] leading-4 whitespace-nowrap","aria-label":`${a} att granska`,children:[a," ny"]}):e.jsx(v,{variant:"outline",className:"px-1.5 py-0 text-[10px] leading-4 whitespace-nowrap",children:"0 nya"}),e.jsx("div",{className:"rounded-lg bg-accent/40 p-2",children:e.jsx(u,{className:"h-5 w-5 text-primary","aria-hidden":!0})})]}),e.jsxs("div",{className:"min-w-0 flex-1 pt-1",children:[e.jsx("h3",{className:"font-semibold leading-tight text-[15px] break-words",children:r}),l&&e.jsx("p",{className:"text-xs text-muted-foreground mt-1 break-words",children:l})]})]}),e.jsx("div",{className:"mt-4 text-sm text-muted-foreground",children:n===0?i:`Totalt ${n} st`})]})}const K=[{slug:"brukarundersokningar",title:"Brukarundersökningar",description:"Klient- och remittentutvärderingar",categories:["klient_utvardering","remittent_utvardering"],href:"/form-submissions/category/brukarundersokningar",icon:R},{slug:"utbildning",title:"Utbildningsuppgifter",description:"RM-12 examination och utvärdering",categories:["examination_rm12","evaluation_rm12"],href:"/form-submissions/category/utbildning",icon:k},{slug:"vardplaner",title:"Vård- & genomförandeplaner",description:"Genomförandeplaner",categories:["genomforandeplan"],href:"/form-submissions/category/vardplaner",icon:T},{slug:"rapporter",title:"Rapporter",description:"Månads- och slutrapporter",categories:["manadsrapport","slutrapport"],href:"/form-submissions/category/rapporter",icon:A},{slug:"permissioner",title:"Permissioner",description:"Permissionsansökningar",categories:["permissionsansokan"],href:"/form-submissions/category/permissioner",icon:B},{slug:"ovrigt",title:"Övrigt",description:"Övriga formulär",categories:["ovrigt"],href:"/form-submissions/category/ovrigt",icon:j}];function W(){const r=w(),l=N(),{hasRole:n}=y(),a=n("company_admin")||n("conglomerate_admin")||n("therapist")||n("superuser"),{loading:u,error:o,buckets:i}=D(),{categories:c}=L(l);function f(s){if(!i)return{count:0,unreviewed:0};let t=0,m=0;for(const x of s.categories){const d=i.byCategory[x];d&&(t+=d.count,m+=d.unreviewed)}return{count:t,unreviewed:m}}return e.jsxs("div",{className:"container mx-auto py-6 max-w-6xl space-y-6",children:[e.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[e.jsxs("div",{children:[e.jsxs(g,{variant:"ghost",size:"sm",onClick:()=>r(-1),children:[e.jsx(C,{className:"h-4 w-4 mr-1"})," Tillbaka"]}),e.jsx("h1",{className:"text-2xl font-semibold mt-2",children:"Inlämningar"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Granska och godkänn klienternas inlämnade formulär"})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(g,{variant:"outline",onClick:()=>r("/form-submissions/list"),children:[e.jsx(S,{className:"h-4 w-4 mr-1"})," Visa alla"]}),e.jsxs(g,{variant:"outline",onClick:()=>r("/form-templates"),children:[e.jsx(E,{className:"h-4 w-4 mr-1"})," Mallar"]}),a&&e.jsxs(g,{variant:"outline",onClick:()=>r("/form-templates/categories"),children:[e.jsx(P,{className:"h-4 w-4 mr-1"})," Egna kategorier"]})]})]}),u&&e.jsx(b,{className:"p-6 text-sm text-muted-foreground",children:"Laddar..."}),o&&e.jsxs(b,{className:"p-6 text-sm text-destructive",children:["Kunde inte hämta inlämningar: ",o]}),!u&&!o&&i&&e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[e.jsx(h,{title:"Behandlingsuppgifter",description:"Klientarbeten kopplade till behandlingsprogram",count:i.treatment.count,unreviewed:i.treatment.unreviewed,icon:k,onClick:()=>r("/form-submissions/treatment")}),K.map(s=>{const t=f(s);
1return e.jsx(h,{title:s.title,description:s.description,count:t.count,unreviewed:t.unreviewed,icon:s.icon,onClick:()=>r(s.href)},s.slug)}),c.map(s=>e.jsx(h,{title:s.label,description:"Egen kategori",count:0,unreviewed:0,icon:j,onClick:()=>r(`/form-submissions/category/custom-${s.slug}`)},s.id))]})]})}const X=I;export{X as CATEGORY_DICT,K as SUBMISSION_GROUPS,W 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.