PageSourceSearch

https://digitalbehandling.se/assets/ClientTransferSettings-Bgubxix7.js

js digitalbehandling.se collected 2026-09-30 08:27:32 UTC 2,213 bytes, 1 lines download raw bytes

1import{g as h,x as v,n as j,r,s as m,j as a,A as y,C as k,c as C,d as S,aO as _,a as b,m as N,B as w}from"./index-CobRY8C4.js";const L=[{value:"company_admin",label:"Företagsadmin (alltid med)",locked:!0},{value:"kontaktperson",label:"Kontaktperson (terapeut med aktiv vårdplan)"},{value:"terapeut",label:"Terapeut"}];function T(){const u=h(),{toast:i}=v(),s=j(),[l,o]=r.useState(new Set(["company_admin"])),[c,d]=r.useState(!1),[f,g]=r.useState(!0);r.useEffect(()=>{s&&(async()=>{const{data:e}=await m.from("organizations").select("transfer_trigger_roles").eq("id",s).maybeSingle(),t=(e==null?void 0:e.transfer_trigger_roles)??["company_admin"];o(new Set([...t,"company_admin"])),g(!1)})()},[s]);const p=e=>{e!=="company_admin"&&o(t=>{const n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},x=async()=>{if(s){d(!0);try{const e=Array.from(l);e.includes("company_admin")||e.push("company_admin");const{error:t}=await m.from("organizations").update({transfer_trigger_roles:e}).eq("id",s);if(t)throw t;i({title:"Sparat"})}catch(e){const t=e instanceof Error?e.message:"Okänt fel";i({title:"Kunde inte spara",description:t,variant:"destructive"})}finally{d(!1)}}};return s?a.jsxs("div",{className:"space-y-6",children:[a.jsxs("button",{onClick:()=>u(-1),className:"flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground",children:[a.jsx(y,{className:"h-4 w-4"}),"Tillbaka"]}),a.jsxs(k,{children:[a.jsxs(C,{children:[a.jsx(S,{children:"HVB-flytt – behörigheter"}),a.jsx(_,{children:"Välj vilka roller som får initiera en HVB-flytt från en klients profil. Mottagande enhets företagsadmin måste alltid godkänna."})]}),a.jsx(b,{className:"space-y-4",children:f?a.jsx("p",{className:"text-sm text-muted-foreground",children:"Laddar…"}):a.jsxs(a.Fragment,{children:[L.map(e=>a.jsxs("label",{className:"flex items-center gap-3 cursor-pointer",children:[a.jsx(N,{checked:l.has(e.value),disabled:e.locked,onCheckedChange:()=>p(e.value)}),a.jsx("span",{className:"text-sm",children:e.label})]},e.value)),a.jsx(w,{onClick:x,disabled:c,children:c?"Sparar…":"Spara"})]})})]})]}):a.jsx("p",{className:"text-muted-foreground",children:"Ingen organisation hittades."})}export{T 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.