Files
tehran_tala/apps/admin-panel/dist/assets/Main-D2F6J6dR.js
T
s.esmaeiliandClaude Opus 5 d15129168a admin-panel: drop the four redundant add entries from the sidebar
Each of these now has an add button at the top of its own list page, so the
nav entry duplicated it:
  - 'اضافه کردن شخص'  (/customer/add)
  - 'افزودن شعب'      (/branch/add)
  - 'افزودن کارگاه'    (/workshop/add)
  - 'افزودن مدیر'      (/user/create)

Only the adminMenu tree is touched; branchMenu keeps its own /customer/add
entry, since the branch build has no converted add-modal. All four routes
still exist and still work as a direct-link fallback, and the parent
submenus keep their remaining children (including 'دسترسی ها' under مدیران).

Verified in a real browser: menu items 30 -> 26, none of the four labels
render, all four parent submenus still present with their list children,
icons unchanged at 16, no console errors. Committed dist/ artifact rebuilt
to match (force-added, as it is gitignored but deliberately tracked for
Dokploy).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 17:45:30 +03:30

2 lines
16 KiB
JavaScript

import{c as v,I as J,d as D,u as R,a as Q,b as Z,r as V,w as X,e as m,o as n,f as a,g as t,h as j,i as O,t as b,j as C,k as F,F as P,l as L,m as x,n as $,p as S,q as ee,s as ne}from"./index-Cv1Zmfn4.js";import{r as z}from"./icons-OQOqoZeQ.js";import{_ as E}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{u as te}from"./auth-DG-pLo8u.js";import"./UnorderedListOutlined-DQ42yB62.js";import"./TeamOutlined-BkGBieVh.js";import"./CreditCardOutlined-PqXbGvjY.js";var oe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM115.4 518.9L271.7 642c5.8 4.6 14.4.5 14.4-6.9V388.9c0-7.4-8.5-11.5-14.4-6.9L115.4 505.1a8.74 8.74 0 000 13.8z"}}]},name:"menu-fold",theme:"outlined"};function q(s){for(var e=1;e<arguments.length;e++){var o=arguments[e]!=null?Object(arguments[e]):{},i=Object.keys(o);typeof Object.getOwnPropertySymbols=="function"&&(i=i.concat(Object.getOwnPropertySymbols(o).filter(function(d){return Object.getOwnPropertyDescriptor(o,d).enumerable}))),i.forEach(function(d){re(s,d,o[d])})}return s}function re(s,e,o){return e in s?Object.defineProperty(s,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):s[e]=o,s}var G=function(e,o){var i=q({},e,o.attrs);return v(J,q({},i,{icon:oe}),null)};G.displayName="MenuFoldOutlined";G.inheritAttrs=!1;var se={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 000-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0014.4 7z"}}]},name:"menu-unfold",theme:"outlined"};function K(s){for(var e=1;e<arguments.length;e++){var o=arguments[e]!=null?Object(arguments[e]):{},i=Object.keys(o);typeof Object.getOwnPropertySymbols=="function"&&(i=i.concat(Object.getOwnPropertySymbols(o).filter(function(d){return Object.getOwnPropertyDescriptor(o,d).enumerable}))),i.forEach(function(d){ie(s,d,o[d])})}return s}function ie(s,e,o){return e in s?Object.defineProperty(s,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):s[e]=o,s}var W=function(e,o){var i=K({},e,o.attrs);return v(J,K({},i,{icon:se}),null)};W.displayName="MenuUnfoldOutlined";W.inheritAttrs=!1;const ae=[{url:null,name:"پیشخوان",tagColor:"warning",icon:"HomeIcon",i18n:"پیشخوان",permissionId:"dashboard",submenu:[{url:"/dashboard/ecommerce",name:"eCommerce",slug:"dashboard-ecommerce",i18n:"آمار عمده فروشی",permissionId:"dashboard.omde"},{url:"/dashboard/analytics",name:"eCommerce",slug:"dashboard-ecommerce",i18n:"آمار تک فروشی",permissionId:"dashboard.tak"}]},{header:"Apps",icon:"PackageIcon",i18n:"کاربری",items:[{url:null,name:"User",icon:"UserIcon",i18n:"اشخاص",permissionId:"persons",submenu:[{url:"/customer/reagent-list",name:"List",slug:"raegentList",i18n:"لیست کارشناسان فروش",permissionId:"persons.list.sellers"},{url:"/customer/omde-list",name:"List",slug:"omde-customer-list",i18n:"لیست مشتریان عمده",permissionId:"persons.list.client.omde"},{url:"/customer/omde-non-verified-list",name:"List",slug:"omde-non-verified-list",i18n:"لیست مشتریان در انتظار",permissionId:"persons.list.client.omde"},{url:"/customer/omde-archived-list",name:"List",slug:"omde-archived-list",i18n:"لیست مشتریان بایگانی",permissionId:"persons.list.client.omde"},{url:"/customer/list",name:"List",slug:"app-user-list",i18n:"لیست مشتریان تک",permissionId:"persons.list.client.single"},{url:"/customer/banker-list",name:"List",slug:"banker-list",i18n:"لیست بنکداران"},{url:"/customer/shopkeeper-list",name:"List",slug:"shopkeeper-list",i18n:"لیست مغازه داران حضوری"}]},{url:null,name:"Branch",icon:"GridIcon",i18n:"شعب",permissionId:"branch",submenu:[{url:"/branch/list",name:"BranchList",slug:"branch-list",i18n:"لیست شعب",permissionId:"branch.list"}]},{url:null,name:"Workshop",icon:"GridIcon",i18n:"کارگاه",permissionId:"workshop",submenu:[{url:"/workshop/list",name:"WorkshopList",slug:"workshop-list",i18n:"لیست کارگاه ها",permissionId:"workshop.list"}]},{url:null,name:"eCommerce",icon:"ShoppingBagIcon",i18n:"محصولات",permissionId:"product",submenu:[{url:"/apps/product/add",name:"AddProduct",slug:"add-product",i18n:"افزودن محصول",permissionId:"product.create"},{url:"/apps/product/list",name:"ProductList",slug:"product-list",i18n:"محصولات",permissionId:"product.list"},{url:"/product/change/percent",name:"changePercent",slug:"change-Percent",i18n:"تغییر درصد محصولات",permissionId:"product.percent"}]},{url:null,name:"order",icon:"BoxIcon",i18n:"سفارش ها",permissionId:"order",submenu:[{url:"/order/create",name:"orderOmdeList",slug:"order-omde-list",i18n:"ثبت سفارش تک",permissionId:"order.create"},{url:"/order/list",name:"orderList",slug:"order-list",i18n:"لیست سفارش های تک",permissionId:"order.list"},{url:"/order/make",name:"makeOrder",slug:"order-makeOrder",i18n:"سفارش های ساختنی",permissionId:"order.makeOrder"},{url:"/order/omde-list",name:"orderOmdeList",slug:"order-omde-list",i18n:"لیست سفارش های عمده",permissionId:"order.omde"},{url:"/order/tamin-list",name:"orderTaminList",slug:"order-tamin-list",i18n:"لیست تامین",permissionId:"order.tamin"}]},{url:null,name:"users",icon:"UserIcon",i18n:"مدیران",permissionId:"user",submenu:[{url:"/permission",name:"permission",slug:"user-permission",i18n:"دسترسی ها",permissionId:"user.permission"},{url:"/user/list",name:"UserList",slug:"user-list",i18n:"لیست مدیران",permissionId:"user.list"}]},{url:null,name:"wallet",icon:"CreditCardIcon",i18n:"کیف پول",permissionId:"wallet",submenu:[{url:"/wallet",name:"wallet",slug:"wallet",i18n:"لیست کیف پول های شارژ شده",permissionId:"wallet.list"}]},{url:null,name:"category",icon:"ListIcon",i18n:"دسته بندی ها",permissionId:"collection",submenu:[{url:"/category/add",name:"categoryAdd",slug:"add-category",i18n:"افزودن دسته بندی",permissionId:"collection.create"},{url:"/category/list",name:"categoryList",slug:"list-category",i18n:"لیست دسته بندی ها",permissionId:"collection.list"}]},{url:null,name:"finical",icon:"DollarSignIcon",i18n:"اسناد مالی",permissionId:"document",submenu:[{url:"/finical/list",name:"finical_list",slug:"finical_list",i18n:"لیست اسناد",permissionId:"document.list"},{url:"/add/findoc",name:"findoc",slug:"findoc",i18n:"وارد کردن سند مالی مشتری",permissionId:"document.create"}]},{url:null,name:"report",icon:"GiftIcon",i18n:"تخفیفات",permissionId:"offers",submenu:[{url:"/major/promotion/tak/add",name:"major_promotion_add",slug:"major_promotion_add",i18n:"تعریف تخفیف تک",permissionId:"offers.create.tak"},{url:"/major/promotion/autopromotion",name:"major_promotion_list",slug:"major_promotion_list",i18n:"تخفیف اتوماتیک ",permissionId:"offers.autopromotion"},{url:"/major/promotion/add",name:"major_promotion_add",slug:"major_promotion_add",i18n:"تعریف تخفیف عمده",permissionId:"offers.create"},{url:"/major/promotion/list",name:"major_promotion_list",slug:"major_promotion_list",i18n:"لیست تخفیفات ",permissionId:"offers.list"}]},{name:"report",icon:"SlashIcon",i18n:"استثناعات تخفیف",permissionId:"offersIgnore",url:"/major/offersIgnore",slug:"offersIgnore"},{url:null,name:"Invoice",icon:"BookIcon",i18n:"فاکتور انتقال",permissionId:"invoice",submenu:[{url:"/invoice/add",name:"AddInvoice",slug:"add-invoice",i18n:"افزودن فاکتور",permissionId:"invoice.create"},{url:"/invoice/list",name:"InvoiceList",slug:"invoice-list",i18n:"لیست فاکتورها",permissionId:"invoice.list"}]},{url:null,name:"report",icon:"FileTextIcon",i18n:"گزارشات",permissionId:"report",submenu:[{url:"/report/order_item",name:"report_order_item",slug:"report_ordedr_item",i18n:"گزارش تجمیعی سفارش و اسناد",permissionId:"report.order.item"},{url:"/report/product",name:"report_product",slug:"report_product",i18n:"گزارش محصولات",permissionId:"report.product"}]},{url:null,name:"cities offer percent",icon:"PercentIcon",i18n:"شهر ها",permissionId:"cities",submenu:[{url:"/city/create",name:"create city",slug:"create_city",i18n:"افزودن شهر",permissionId:"cities.create"},{url:"/city/list",name:"city list",slug:"city_list",i18n:"لیست شهر ها",permissionId:"cities.list"}]},{url:"/comments",name:"comments",icon:"MessageSquareIcon",i18n:"دیدگاه ها",permissionId:"comment"},{url:null,name:"sms",icon:"MailIcon",i18n:"پیامک",permissionId:"sms",submenu:[{url:"/sms/create",name:"create sms",slug:"create_sms",i18n:"ارسال پیامک",permissionId:"sms.create"}]},{url:null,name:"notify",icon:"BellIcon",i18n:"نوتیفیکیشن",permissionId:"notify",submenu:[{url:"/notify/create",name:"create notify",slug:"create_notify",i18n:"ارسال نوتیفیکیشن",permissionId:"notify.create"}]},{url:"/statics",name:"statics",icon:"BarChartIcon",i18n:"آمار",permissionId:"statics"},{url:"/newsletters",name:"newsletters",icon:"FileTextIcon",i18n:"خبرنامه",permissionId:"newsletters.newsletters"}]},{header:"UI",icon:"LayersIcon",i18n:"مدیریت",items:[{url:null,name:"پیکر بندی",icon:"SettingsIcon",i18n:"پیکر بندی",permissionId:"config",submenu:[{url:"/config/manage/const",name:"Const Management",slug:"manage-const",i18n:"مدیریت ثابت ها",permissionId:"config.statics"},{url:"/config/manage/report",name:"report Management",slug:"manage-report",i18n:"گزارش",permissionId:"config.report"},{url:"/config/manage/wallet",name:"wallet Management",slug:"manage-const",i18n:"مدیریت کیف پول",permissionId:"config.wallet"}]}]}];function le(){return ae}const ue={class:"nav-header"},ce={key:0,class:"nav-title"},me=D({__name:"VerticalNavMenu",props:{title:{default:"هنزا گلد"},collapsed:{type:Boolean,default:!1}},setup(s){const e=R(),o=Q(),i=Z();function d(r){return r.permissionId?!!i.hasPermission(r.permissionId):!0}function g(r){return(r??[]).filter(d)}function N(r){return r.header?g(r.items).length>0:r.submenu?g(r.submenu).length>0:!0}const M=S(()=>le().filter(r=>d(r)&&N(r))),I=(r,u)=>`sub-${r.name??""}-${u}`;function _(r){for(let u=0;u<M.value.length;u++){const p=M.value[u];if(p.header){const y=g(p.items);for(let k=0;k<y.length;k++){const h=y[k];if(h.submenu&&g(h.submenu).some(U=>U.url===r))return[I(h,k)]}continue}if(p.submenu&&g(p.submenu).some(y=>y.url===r))return[I(p,u)]}return[]}const f=V([e.path]),w=V(_(e.path));X(()=>e.path,r=>{f.value=[r];const u=_(r);for(const p of u)w.value.includes(p)||(w.value=[...w.value,p])});function B({key:r}){const u=String(r);u.startsWith("/")&&u!==e.path&&o.push(u)}return(r,u)=>{const p=m("a-menu-item"),y=m("a-sub-menu"),k=m("a-menu-item-group"),h=m("a-menu"),U=m("a-layout-sider");return n(),a(U,{collapsed:s.collapsed,trigger:null,collapsible:"",width:"260",class:"vertical-nav-menu",theme:"light"},{default:t(()=>[j("div",ue,[s.collapsed?C("",!0):(n(),O("span",ce,b(s.title),1))]),v(h,{mode:"inline",theme:"light","inline-collapsed":s.collapsed,"selected-keys":f.value,"open-keys":w.value,"onUpdate:openKeys":u[0]||(u[0]=l=>w.value=l),onClick:B},{default:t(()=>[(n(!0),O(P,null,F(M.value,(l,H)=>(n(),O(P,{key:l.url||l.header||H},[l.header?(n(),a(k,{key:0,title:l.i18n||l.header},{default:t(()=>[(n(!0),O(P,null,F(g(l.items),(c,T)=>(n(),O(P,{key:c.url||T},[c.submenu?(n(),a(y,{key:I(c,T)},{icon:t(()=>[c.icon?(n(),a(x($(z)(c.icon)),{key:0})):C("",!0)]),title:t(()=>[L(b(c.i18n||c.name),1)]),default:t(()=>[(n(!0),O(P,null,F(g(c.submenu),(A,Y)=>(n(),a(p,{key:A.url||`${T}-${Y}`},{icon:t(()=>[A.icon?(n(),a(x($(z)(A.icon)),{key:0})):C("",!0)]),default:t(()=>[L(" "+b(A.i18n||A.name),1)]),_:2},1024))),128))]),_:2},1024)):(n(),a(p,{key:c.url||`${T}`},{icon:t(()=>[c.icon?(n(),a(x($(z)(c.icon)),{key:0})):C("",!0)]),default:t(()=>[L(" "+b(c.i18n||c.name),1)]),_:2},1024))],64))),128))]),_:2},1032,["title"])):l.submenu?(n(),a(y,{key:I(l,H)},{icon:t(()=>[l.icon?(n(),a(x($(z)(l.icon)),{key:0})):C("",!0)]),title:t(()=>[L(b(l.i18n||l.name),1)]),default:t(()=>[(n(!0),O(P,null,F(g(l.submenu),(c,T)=>(n(),a(p,{key:c.url||`${H}-${T}`},{icon:t(()=>[c.icon?(n(),a(x($(z)(c.icon)),{key:0})):C("",!0)]),default:t(()=>[L(" "+b(c.i18n||c.name),1)]),_:2},1024))),128))]),_:2},1024)):(n(),a(p,{key:l.url||`${H}`},{icon:t(()=>[l.icon?(n(),a(x($(z)(l.icon)),{key:0})):C("",!0)]),default:t(()=>[L(" "+b(l.i18n||l.name),1)]),_:2},1024))],64))),128))]),_:1},8,["inline-collapsed","selected-keys","open-keys"])]),_:1},8,["collapsed"])}}}),de=E(me,[["__scopeId","data-v-bf6b0a16"]]),pe={class:"nav-left"},_e={class:"page-title"},fe={class:"nav-right"},ge={class:"user-chip"},ve={class:"user-name"},Ie=D({__name:"TheNavbar",props:{collapsed:{type:Boolean}},emits:["toggle-sidebar"],setup(s){const e=R(),o=Q(),i=te(),d=S(()=>{var I;return((I=e.meta)==null?void 0:I.pageTitle)??""}),g=S(()=>{var I,_;return((I=i.user)==null?void 0:I.name)??((_=i.user)==null?void 0:_.fullName)??"کاربر"}),N=S(()=>g.value.trim().charAt(0)||"ک");function M(){i.logout(),o.push("/auth/login")}return(I,_)=>{const f=m("a-button"),w=m("a-avatar"),B=m("a-menu-item"),r=m("a-menu-divider"),u=m("a-menu"),p=m("a-dropdown"),y=m("a-layout-header");return n(),a(y,{class:"the-navbar"},{default:t(()=>[j("div",pe,[v(f,{type:"text",onClick:_[0]||(_[0]=k=>I.$emit("toggle-sidebar"))},{default:t(()=>[s.collapsed?(n(),a($(W),{key:0})):(n(),a($(G),{key:1}))]),_:1}),j("span",_e,b(d.value),1)]),j("div",fe,[v(p,null,{overlay:t(()=>[v(u,null,{default:t(()=>[v(B,{key:"my-data",onClick:_[1]||(_[1]=k=>$(o).push("/my-data"))},{default:t(()=>[..._[2]||(_[2]=[L(" اطلاعات من ",-1)])]),_:1}),v(r),v(B,{key:"logout",onClick:M},{default:t(()=>[..._[3]||(_[3]=[L("خروج",-1)])]),_:1})]),_:1})]),default:t(()=>[j("span",ge,[v(w,{size:"small",style:{"background-color":"#1c2d56"}},{default:t(()=>[L(b(N.value),1)]),_:1}),j("span",ve,b(g.value),1)])]),_:1})])]),_:1})}}}),be=E(Ie,[["__scopeId","data-v-b553fbc4"]]),he={class:"content-wrapper"},ye={key:0,class:"router-header"},ke={class:"content-area__heading"},we={key:1},Oe={class:"content-area__content"},Le=D({__name:"Main",setup(s){const e=R(),o=ee(),i=S(()=>o.sidebarCollapsed),d=S(()=>{var f;return(f=e.meta)==null?void 0:f.pageTitle}),g=S(()=>{var f;return(f=e.meta)==null?void 0:f.breadcrumb}),N=S(()=>{var f;return!!((f=e.meta)!=null&&f.no_scroll)}),M=V(void 0),I=S(()=>M.value??d.value??"");function _(f){M.value=f}return X(()=>e.path,()=>{M.value=void 0}),(f,w)=>{const B=m("router-link"),r=m("a-breadcrumb-item"),u=m("a-breadcrumb"),p=m("router-view"),y=m("a-layout-content"),k=m("a-layout");return n(),a(k,{class:ne(["layout--main",{"no-scroll":N.value}])},{default:t(()=>[v(de,{collapsed:i.value},null,8,["collapsed"]),v(k,null,{default:t(()=>[v(be,{collapsed:i.value,onToggleSidebar:w[0]||(w[0]=h=>$(o).setSidebarCollapsed(!i.value))},null,8,["collapsed"]),v(y,{id:"content-area"},{default:t(()=>[j("div",he,[g.value||d.value?(n(),O("div",ye,[j("h2",ke,b(I.value),1),g.value?(n(),a(u,{key:0,class:"breadcrumb"},{default:t(()=>[(n(!0),O(P,null,F(g.value,(h,U)=>(n(),a(r,{key:U},{default:t(()=>[h.url&&!h.active?(n(),a(B,{key:0,to:h.url},{default:t(()=>[L(b(h.title),1)]),_:2},1032,["to"])):(n(),O("span",we,b(h.title),1))]),_:2},1024))),128))]),_:1})):C("",!0)])):C("",!0),j("div",Oe,[v(p,{onChangeRouteTitle:_})])])]),_:1})]),_:1})]),_:1},8,["class"])}}}),Te=E(Le,[["__scopeId","data-v-1d1e09bc"]]);export{Te as default};