Files
nademitex_admin/dist/assets/UsersView-BIWbvMoT.js
T

1 line
7.3 KiB
JavaScript
Raw Normal View History

2026-09-14 16:10:30 +03:30
import{$ as e,B as t,K as n,N as r,P as ee,Q as i,R as te,St as a,W as o,X as s,Y as c,Z as l,_t as ne,ct as u,ht as d,i as re,mt as f,nt as p,ot as ie,q as m,rt as h,s as g,tt as _,ut as v,vt as y,yt as b,z as ae}from"./index-BHqDDh7X.js";import{t as oe}from"./AdminPageSkeleton-E50Kwv4j.js";import{t as se}from"./BaseSwitch-DYYNQNXf.js";import{t as ce}from"./BaseEmptyState-vNIhbGdV.js";import{t as x}from"./AdminSelect-BjB6PHdr.js";import{o as S}from"./adminLabels-Cz9ccm1Z.js";import{t as C}from"./ActiveSwitchCell-BzzYl8MV.js";var le={class:`users-page`},ue={class:`users-page__search admin-card`},de={key:2,class:`users-page__table admin-card desktop-only`},fe={class:`admin-table-wrap`},pe={class:`admin-table`},me={dir:`ltr`},he={class:`status`},ge={class:`actions`},w=[`onClick`],T={key:3,class:`compact-only admin-card-list`},E={class:`admin-card-item__header`},D={class:`admin-card-item__title`},O={class:`admin-card-item__meta`},k={dir:`ltr`},A={class:`admin-card-item__actions`},j=[`onClick`],M={key:0,class:`admin-form__error`,role:`alert`},N={class:`admin-form__field`},P={class:`admin-form__row`},F={class:`admin-form__field`},I={class:`admin-form__field`},L={class:`admin-form__field`},_e={class:`admin-form__field`},ve=[`disabled`],ye={key:0,class:`admin-btn__spinner`,"aria-hidden":`true`},R=t(h({__name:`UsersView`,setup(t){let h=y([]),R=y(``),z=y(!0),B=y(null),V=y(null),H=y(``),U=y(!1),W=ae(),be=[{value:`admin`,label:`مدیر سیستم`},{value:`sales`,label:`واحد فروش`},{value:`finance`,label:`واحد مالی`},{value:`warehouse`,label:`انبار`}],G=()=>({fullName:``,phone:``,email:``,role:`sales`,isActive:!0}),K=ne(G()),xe=c(()=>B.value!==null),Se=c(()=>B.value===`edit`?`ویرایش کاربر`:`افزودن کاربر`),q=c(()=>K.fullName.trim()&&K.phone.trim()),J=c(()=>{let e=R.value.trim();return e?h.value.filter(t=>t.fullName.includes(e)||t.phone.includes(e)||t.email.includes(e)||S[t.role].includes(e)):h.value});async function Ce(){z.value=!0;try{h.value=await g.list()}catch(e){W.error(e instanceof r?e.message:`بارگذاری کاربران انجام نشد.`)}finally{z.value=!1}}ie(()=>{Ce()});function Y(){B.value=`add`,V.value=null,Object.assign(K,G()),H.value=``}function X(e){B.value=`edit`,V.value=e.id,K.fullName=e.fullName,K.phone=e.phone,K.email=e.email,K.role=e.role,K.isActive=e.isActive,H.value=``}function Z(){B.value=null,V.value=null,H.value=``}async function Q(){if(!q.value){H.value=`نام و تلفن الزامی هستند.`;return}U.value=!0;let e={fullName:K.fullName.trim(),phone:K.phone.trim(),email:K.email.trim()||void 0,role:K.role,isActive:K.isActive};try{if(B.value===`edit`&&V.value){let t=await g.update(V.value,e),n=h.value.findIndex(e=>e.id===V.value);n!==-1&&(h.value[n]={...h.value[n],...t})}else{let t=await g.create(e);h.value.push(t)}W.success(B.value===`edit`?`اطلاعات کاربر به‌روزرسانی شد.`:`کاربر جدید ثبت شد.`),Z()}catch(e){W.error(e instanceof r?e.message:`ذخیره کاربر انجام نشد.`)}finally{U.value=!1}}async function $(e,t){await g.setActive(e,t)}function we(){R.value=``}return(t,r)=>(u(),e(`div`,le,[s(`div`,{class:`admin-page-header`},[r[6]||=s(`div`,null,[s(`h1`,{class:`admin-page-header__title`},`کاربران و دسترسی‌ها`)],-1),s(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,onClick:Y},` افزودن کاربر `)]),s(`div`,ue,[p(ee,{name:`search`,size:18}),d(s(`input`,{"onUpdate:modelValue":r[0]||=e=>R.value=e,type:`search`,class:`users-page__search-input`,placeholder:`جستجو در نام، تلفن، ایمیل...`},null,512),[[o,R.value]])]),z.value?(u(),l(oe,{key:0,variant:`table`})):J.value.length?(u(),e(`div`,de,[s(`div`,fe,[s(`table`,pe,[r[7]||=s(`thead`,null,[s(`tr`,null,[s(`th`,null,`نام`),s(`th`,null,`تلفن`),s(`th`,null,`ایمیل`),s(`th`,null,`نقش`),s(`th`,{class:`status`},`وضعیت`),s(`th`,null,`آخرین ورود`),s(`th`,{class:`actions`},`عملیات`)])],-1),s(`tbody`,null,[(u(!0),e(m,null,v(J.value,t=>(u(),e(`tr`,{key:t.id},[s(`td`,null,a(t.fullN