1import{a$ as A,eb as R,b7 as I,b0 as b,b9 as y,ba as P,bb as t,bc as s,cf as h,bg as g,b1 as C,b2 as Q,c9 as S,be as c,bl as x,bh as _,dP as T,bm as U,bn as v,bo as D,bq as w,b4 as $,b3 as V,bf as B,cn as M}from"./index-CFHz-eb3.js";import{Q as k}from"./QTd-DMmAwqfU.js";import{Q as N}from"./QTable-DkYHlQ7_.js";import{Q as q}from"./QPage-BZFI5xAP.js";import{I as E}from"./InternalPageHeader--NXIAWUD.js";import{Q as F}from"./QSelect-C-hwOXXL.js";import{U as z}from"./UserSearch-B4lTvpMC.js";import"./QList-Doq4ymz0.js";import"./QMarkupTable-DVmA-nqe.js";import"./QLinearProgress-CdKlS1X0.js";import"./use-fullscreen-BXvNcZRy.js";import"./QField-tvCM3ORS.js";import"./QChip-BsOJbGyr.js";import"./QItemLabel-BlQoXLXa.js";import"./QMenu-Dic1H9aS.js";import"./selection-DfU4l___.js";import"./rtl-BgSf51W-.js";import"./format-3GJbRjMt.js";import"./QInnerLoading-DbxEAOQ5.js";try{let i=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new i.Error().stack;o&&(i._sentryDebugIds=i._sentryDebugIds||{},i._sentryDebugIds[o]="91b255c7-a97e-4326-973a-63832062d5f9",i._sentryDebugIdIdentifier="sentry-dbid-91b255c7-a97e-4326-973a-63832062d5f9")}catch{}const H={key:0},L={key:1,class:"selected-user"},O=A({__name:"ManageRegisterAssignment",emits:["close","refreshTable"],setup(i,{emit:o}){const m=o,d=R(),r=v(null),u=v(null),p=v(!1),a=D(()=>d.registerProfiles.map(e=>({label:e.name,value:e.id})));I(()=>{d.registerProfiles.length===0&&d.fetchRegisterProfiles()});const l=async()=>{if(!(r.value===null||u.value===null)){p.value=!0;try{await d.putRegisterAssignment(r.value.id,u.value),m("refreshTable"),m("close")}catch(e){await w(e)}finally{p.value=!1}}};return(e,n)=>(b(),y(P,{"model-value":!0,persistent:""},{default:t(()=>[s(U,{class:"manage-register-assignment"},{default:t(()=>[s(h,null,{default:t(()=>[...n[3]||(n[3]=[g("div",{class:"text-h6"},"Assign Register",-1)])]),_:1}),s(h,{class:"q-gutter-md"},{default:t(()=>[r.value===null?(b(),C("div",H,[n[4]||(n[4]=g("div",{class:"field-label"},"Find a user",-1)),s(z,{types:[Q(S).STAFF]},{result:t(({result:f})=>[s(c,{flat:"",dense:"",color:"primary",label:"Select",onClick:K=>r.value={id:f.id,name:f.name}},null,8,["onClick"])]),_:1},8,["types"])])):(b(),C("div",L,[s(x,{name:"person",size:"20px"}),g("span",null,_(r.value.name),1),s(c,{flat:"",round:"",dense:"",icon:"close",onClick:n[0]||(n[0]=f=>r.value=null)})])),s(F,{modelValue:u.value,"onUpdate:modelValue":n[1]||(n[1]=f=>u.value=f),filled:"",label:"Register profile","emit-value":"","map-options":"",options:a.value},null,8,["modelValue","options"])]),_:1}),s(T,{align:"right"},{default:t(()=>[s(c,{flat:"",label:"Close",onClick:n[2]||(n[2]=f=>m("close"))}),s(c,{color:"primary",unelevated:"",label:"Assign",loading:p.value,disable:r.value===null||u.value===null,onClick:l},null,8,["loading","disable"])]),_:1})]),_:1})]),_:1}))}}),W=$(O,[["__scopeId","data-v-f2a640a6"]]),j={class:"row"},G={class:"page-header"},J=A({__name:"ManageRegisterAssignments",setup(i){const o=R(),m=v(!1),d=v(!1),r=[{name:"user",label:"User",field:a=>a.user.name,align:"left",sortable:!0},{name:"role",label:"Role",field:a=>a.user.role,align:"left"},{name:"profile",label:"Register Profile",field:a=>a.registerProfile.name,align:"left"},{name:"actions",label:"",field:"userId",align:"right"}],u=async()=>{m.value=!0;try{await o.fetchRegisterAssignments()}catch(a){await w(a)}finally{m.value=!1}},p=async a=>{if(await M.confirm({title:"Unassign?",message:`${a.user.name} will lose the "${a.registerProfile.name}" register.`,okLabel:"Unassign"}))try{await o.deleteRegisterAssignment(a.userId)}catch(e){await w(e)}};return I(()=>{u()}),(a,l)=>(b(),y(q,{class:"manage-register-assignments gb-internal-page"},{default:t(()=>[g("div",j,[s(E,{title:"Register Assignments"})]),g("div",G,[l[2]||(l[2]=g("div",{class:"page-hint"}," Who runs which register. Changes reach a logged-in device within about a minute (or on app resume) â no re-login needed. ",-1)),s(c,{color:"primary",unelevated:"",icon:"add",label:"Assign",onClick:l[0]||(l[0]=e=>d.value=!0)})]),s(N,{rows:Q(o).registerAssignments,columns:r,"row-key":"userId",pagination:{rowsPerPage:0},loading:m.value,"hide-bottom":"",flat:"",bordered:""},{"body-cell-profile":t(e=>[s(k,{props:e},{default:t(()=>[g("span",{class:V({"text-red":e.row.registerProfile.deleted!==null})},_(e.row.registerProfile.name)+" "+_(e.row.registerProfile.deleted!==null?"(deleted)":""),3)]),_:2},1032,["props"])]),"body-cell-actions":t(e=>[s(k,{props:e},{default:t(()=>[s(c,{flat:"",dense:"",color:"red",label:"Unassign",onClick:n=>p(e.row)},null,8,["onClick"])]),_:2},1032,["props"])]),"no-data":t(()=>[...l[3]||(l[3]=[g("div",{class:"q-pa-md"},"No register assignments yet.",-1)])]),_:1},8,["rows","loading"]),d.value?(b(),y(W,{key:0,onClose:l[1]||(l[1]=e=>d.value=!1),onRefreshTable:u})):B("",!0)]),_:1}))}}),be=$(J,[["__scopeId","data-v-87054b30"]]);export{be 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.