xto-fronted 0.4.92 → 0.4.94
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/404-C9Uh6Uu-.css +1 -0
- package/dist/assets/404-zjGLLssH.js +1 -0
- package/dist/assets/_plugin-vue_export-helper-DlAUqK2U.js +1 -0
- package/dist/assets/index-B5xc4gQB.css +1 -0
- package/dist/assets/index-BDgOY6Rp.js +1 -0
- package/dist/assets/index-BIoRANs0.js +1 -0
- package/dist/assets/index-BRR97dc6.js +1 -0
- package/dist/assets/index-Bz0BgZQ1.js +1 -0
- package/dist/assets/index-CAdztNsv.css +1 -0
- package/dist/assets/index-CCXrcISf.css +1 -0
- package/dist/assets/index-CfpZmcpk.css +1 -0
- package/dist/assets/index-CwJSA85U.js +1 -0
- package/dist/assets/index-CwRA10ac.js +1 -0
- package/dist/assets/index-D8NDxq9d.js +1 -0
- package/dist/assets/index-DEB6-Iv_.js +2 -0
- package/dist/assets/index-DM4Ezclc.css +1 -0
- package/dist/assets/index-DYv7nImj.css +1 -0
- package/dist/assets/index-t-2Y0KhA.css +1 -0
- package/dist/assets/vendor-CUVPinTg.js +13 -0
- package/dist/assets/vue-vendor-DeJXJVbN.js +29 -0
- package/dist/assets/xto-base-CL2NKZJJ.css +1 -0
- package/dist/assets/xto-base-PwLGsxxb.js +1 -0
- package/dist/assets/xto-business--V1F5Gwb.css +1 -0
- package/dist/assets/xto-core-CtL4zKiV.js +1 -0
- package/dist/assets/xto-data-MxZsiJgi.css +1 -0
- package/dist/assets/xto-data-bCXQa7fT.js +1 -0
- package/dist/assets/xto-feedback-Bxx38c3P.css +1 -0
- package/dist/assets/xto-feedback-CPydp0kn.js +1 -0
- package/dist/assets/xto-form-Cu6q3VLG.css +1 -0
- package/dist/assets/xto-form-bywohdAf.js +1 -0
- package/dist/assets/xto-layout-BDD6sSlM.css +1 -0
- package/dist/assets/xto-navigation-Bbdpine9.js +1 -0
- package/dist/assets/xto-navigation-XfpyMpEo.css +1 -0
- package/dist/{index-CsjBlLrl.js → index-3ekBp4iW.js} +2 -2
- package/dist/{index-CvYIvRSW.js → index-58aI1w0v.js} +2 -2
- package/dist/{index--qRfsJ32.js → index-A_B_Ap_A.js} +1510 -1537
- package/dist/{index-DAPLMrmP.js → index-B5DLfOYb.js} +23 -23
- package/dist/index-BAmYUT0G.js +189 -0
- package/dist/index-BRvi9qW-.js +515 -0
- package/dist/index-BVGW4DDQ.js +189 -0
- package/dist/index-Bmf0YbVq.js +189 -0
- package/dist/index-C2-a5KSQ.js +4233 -0
- package/dist/{index-DjkSMw-x.js → index-CeZ0CSSs.js} +2 -2
- package/dist/index-Cf8E7FM1.js +4270 -0
- package/dist/index-ChowNrlU.js +641 -0
- package/dist/index-D25KzR0I.js +479 -0
- package/dist/index-DCBIjLHy.js +515 -0
- package/dist/index-DEYOivza.js +641 -0
- package/dist/index-DReodgBw.js +4233 -0
- package/dist/index-DjERNRXX.js +515 -0
- package/dist/index-LSdsO2Ox.js +479 -0
- package/dist/index-gBlRG4kk.js +479 -0
- package/dist/index-xWU3J3OH.js +641 -0
- package/dist/index.es.js +1 -1
- package/dist/index.html +28 -0
- package/dist/index.umd.js +8 -8
- package/dist/style.css +1 -1
- package/package.json +91 -91
- package/src/App.vue +48 -48
- package/src/assets/styles/_dark.scss +639 -639
- package/src/assets/styles/_root.scss +183 -183
- package/src/assets/styles/_variables.scss +69 -69
- package/src/assets/styles/index.scss +460 -460
- package/src/components/Layout/MixTopMenu.vue +4 -1
- package/src/components/Layout/Sidebar.vue +201 -198
- package/src/components/Layout/SidebarMenuItem.vue +158 -158
- package/src/components/Layout/TopMenu.vue +1173 -1170
- package/src/components/Layout/index.vue +192 -192
- package/src/composables/useI18n.ts +43 -43
- package/src/index.ts +100 -100
- package/src/router/layoutRoute.ts +59 -59
- package/src/stores/index.ts +15 -15
- package/src/stores/locale.ts +66 -66
- package/src/types/json-bigint.d.ts +18 -18
- package/src/types/xto.d.ts +172 -172
- package/src/utils/request.ts +184 -184
- package/src/views/dashboard/index.vue +545 -545
- package/src/views/error/403.vue +251 -251
- package/src/views/error/404.vue +253 -253
- package/src/views/login/index.vue +586 -586
- package/src/views/system/menu/index.vue +690 -690
- package/src/views/system/role/index.vue +583 -583
- package/src/views/system/user/index.vue +655 -655
package/dist/index.umd.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
(function(b,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("pinia"),require("vue-router"),require("@xto/navigation"),require("@xto/base"),require("@xto/feedback"),require("@xto/form"),require("axios"),require("@xto/core/locale"),require("@xto/data")):typeof define=="function"&&define.amd?define(["exports","vue","pinia","vue-router","@xto/navigation","@xto/base","@xto/feedback","@xto/form","axios","@xto/core/locale","@xto/data"],e):(b=typeof globalThis<"u"?globalThis:b||self,e(b.XtoFronted={},b.Vue,b.Pinia,b.VueRouter,b.navigation,b.base,b.feedback,b.form,b.axios,b.locale$1,b.data))})(this,function(b,e,Ae,ce,Ne,A,oe,F,Zt,Ye,we){"use strict";const qe=e.ref(""),je=e.ref(""),He=e.ref("");function Nt(l){l.appId&&(qe.value=l.appId),l.clientId&&(je.value=l.clientId),l.apiBaseUrl&&(He.value=l.apiBaseUrl)}function Ue(){if(qe.value)return qe.value;try{return""}catch{return""}}function Je(){if(je.value)return je.value;try{return""}catch{return""}}function _t(){if(He.value)return He.value;try{return""}catch{return""}}const Qt={appId:qe,clientId:je,apiBaseUrl:He},ze="xto_",Et=l=>({get(c){const g=l.getItem(ze+c);if(!g)return null;try{return JSON.parse(g)}catch{return g}},set(c,g){if(g==null){l.removeItem(ze+c);return}const p=typeof g=="string"?g:JSON.stringify(g);l.setItem(ze+c,p)},remove(c){l.removeItem(ze+c)},clear(){Object.keys(l).forEach(g=>{g.startsWith(ze)&&l.removeItem(g)})}}),Oe=Et(window.localStorage),Fe=Et(window.sessionStorage),H={get:Oe.get,set:Oe.set,remove:Oe.remove,clear:Oe.clear},vt={get:Fe.get,set:Fe.set,remove:Fe.remove,clear:Fe.clear},be=Ae.defineStore("app",()=>{const l=e.ref(H.get("appName")||"XTO App"),c=e.ref(H.get("indexPath")||"/dashboard"),g=e.ref(H.get("isDark")||!1),p=e.ref(H.get("theme")||"light"),d=e.ref(H.get("layout")||"sidebar"),B=e.ref(H.get("isCollapsed")||!1),V=e.ref(H.get("showTabs")??!0),h=e.ref(H.get("showFooter")??!0),w=e.ref(H.get("showBreadcrumb")??!0),k=e.ref(H.get("primaryColor")||"#409eff"),y=e.ref([]),M=e.ref([]),$=e.computed(()=>g.value?"dark":"light"),U=q=>{l.value=q,H.set("appName",q)},Y=q=>{c.value=q,H.set("indexPath",q)},T=()=>{g.value=!g.value,p.value=g.value?"dark":"light",C()},L=q=>{p.value=q,g.value=q==="dark",C()},C=()=>{const q=document.documentElement;g.value?q.classList.add("dark"):q.classList.remove("dark"),H.set("isDark",g.value),H.set("theme",p.value)},x=()=>{B.value=!B.value,H.set("isCollapsed",B.value)},z=q=>{d.value=q,H.set("layout",q)},K=()=>{V.value=!V.value,H.set("showTabs",V.value)},P=()=>{h.value=!h.value,H.set("showFooter",h.value)},i=()=>{w.value=!w.value,H.set("showBreadcrumb",w.value)},_=q=>{k.value=q,document.documentElement.style.setProperty("--color-primary",q),H.set("primaryColor",q)},G=q=>{y.value.includes(q)||y.value.push(q)},J=q=>{const ne=y.value.indexOf(q);ne>-1&&y.value.splice(ne,1)},D=()=>{y.value=[]},ee=q=>{M.value=q},Z=()=>{C(),k.value!=="#409eff"&&document.documentElement.style.setProperty("--color-primary",k.value)};return e.watch(g,C),{appName:l,indexPath:c,isDark:g,theme:p,layout:d,isCollapsed:B,showTabs:V,showFooter:h,showBreadcrumb:w,primaryColor:k,cachedViews:y,mixSubMenus:M,themeClass:$,setAppName:U,setIndexPath:Y,toggleTheme:T,toggleCollapse:x,setTheme:L,setLayout:z,toggleTabs:K,toggleFooter:P,toggleBreadcrumb:i,setPrimaryColor:_,addCachedView:G,removeCachedView:J,clearCachedViews:D,setMixSubMenus:ee,initTheme:Z}}),Ze="menu_list",Qe="permission_list",en={menuCode:"home",menuName:"首页",menuUrl:"/dashboard",icon:"home",closable:!1,isDefault:!1,isOut:!1};function Vt(l){return l.filter(c=>c.type!==1).map(c=>({...c,children:c.children?Vt(c.children):void 0}))}function tn(l){const c=[];function g(p){p.forEach(d=>{d.type===1&&d.menuCode&&c.push(d.menuCode),d.children&&g(d.children)})}return g(l),c}const xe=Ae.defineStore("menu",()=>{const l=e.ref(H.get(Ze)||[]),c=e.ref(H.get(Qe)||[]),g=e.computed(()=>l.value.length>0);return{menuList:l,permissions:c,hasMenu:g,setMenuList:V=>{c.value=tn(V),H.set(Qe,c.value);const h=Vt(V);l.value=[en,...h],H.set(Ze,l.value)},clearMenu:()=>{l.value=[],c.value=[],H.remove(Ze),H.remove(Qe)},hasPermission:V=>Array.isArray(V)?V.some(h=>c.value.includes(h)):c.value.includes(V)}}),ve="/vite.svg",et="user_info",ke=Ae.defineStore("user",()=>{const l=e.ref(H.get(et)),c=e.computed(()=>!!l.value),g=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.userId)||""}),p=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.userName)||""}),d=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.departmentName)||""}),B=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.email)||""}),V=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.mobilePhone)||""}),h=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.positionName)||""}),w=e.computed(()=>{var M;return((M=l.value)==null?void 0:M.avatar)||""});return{userInfo:l,isLoggedIn:c,userId:g,userName:p,departmentName:d,email:B,mobilePhone:V,positionName:h,avatar:w,setUserInfo:M=>{l.value=M,H.set(et,M)},clearUserInfo:()=>{l.value=null,H.remove(et)}}}),tt="token",nt="token_type",ot="refresh_token",lt="expires_time",st="refresh_time",rt="code",Pe=()=>H.get(tt),kt=l=>{H.set(tt,l)},yt=()=>H.get(nt),wt=l=>{H.set(nt,l)},nn=()=>H.get(ot),xt=l=>{H.set(ot,l)},Ct=()=>H.get(lt),Bt=l=>{H.set(lt,l)},on=()=>H.get(st),bt=l=>{H.set(st,l)},ln=()=>H.get(rt),St=l=>{H.set(rt,l)},at=l=>{kt(l.access_token),wt(l.token_type||"Bearer"),xt(l.refresh_token),Bt(l.expires_time),bt(l.refresh_time),l.code&&St(l.code)},De=()=>{H.remove(tt),H.remove(nt),H.remove(ot),H.remove(lt),H.remove(st),H.remove(rt)},$t=()=>{const l=Ct();return l?Date.now()>l:!0},it=()=>!!Pe()&&!$t(),Te=Ae.defineStore("auth",()=>{const l=e.ref(Pe()),c=e.computed(()=>it()),g=e.ref(""),p=e.ref(""),d=e.ref(""),B=e.ref("/login");return{token:l,isLoggedIn:c,baseUrl:g,appId:p,clientId:d,loginPath:B,login:$=>{l.value=$.access_token,at($)},logout:()=>{l.value=null,De()},setBaseUrl:$=>{g.value=$},setAppId:$=>{p.value=$},setClientId:$=>{d.value=$},setLoginPath:$=>{B.value=$}}}),sn={class:"menu-item__content"},rn={class:"menu-item__icon"},an={key:1,class:"menu-item__char"},cn={class:"menu-item__text"},dn={class:"menu-item__content"},mn={key:0,class:"menu-item__icon"},pn={key:1,class:"menu-item__char"},fn={class:"menu-item__text"},un=e.defineComponent({__name:"SidebarMenuItem",props:{menu:{}},setup(l){const c=l,g=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),p=h=>{if(!h||h==="")return"";if(h.startsWith("tineco-icon-")){const k=h.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[k]||k}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[h]||h},d=h=>h?h.charAt(0):"",B=h=>g.has(h),V=e.computed(()=>c.menu.children&&c.menu.children.length>0);return(h,w)=>{const k=e.resolveComponent("SidebarMenuItem",!0);return V.value?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:l.menu.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",sn,[e.createElementVNode("span",rn,[B(p(l.menu.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:p(l.menu.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",an,e.toDisplayString(d(l.menu.menuName)),1))]),e.createElementVNode("span",cn,e.toDisplayString(l.menu.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.menu.children,y=>(e.openBlock(),e.createBlock(k,{key:y.menuUrl,menu:y},null,8,["menu"]))),128))]),_:1},8,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:l.menu.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",dn,[l.menu.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",mn,[B(p(l.menu.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:p(l.menu.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",pn,e.toDisplayString(d(l.menu.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",fn,e.toDisplayString(l.menu.menuName),1)])]),_:1},8,["index"]))}}}),fe=(l,c)=>{const g=l.__vccOpts||l;for(const[p,d]of c)g[p]=d;return g},hn=fe(un,[["__scopeId","data-v-d160ae6a"]]),gn={key:0,class:"sidebar__logo"},Nn={key:1,class:"sidebar__user"},_n={class:"sidebar__user-info"},En={class:"sidebar__user-name"},Vn={class:"sidebar__user-role"},It="sidebar_opened_menus",ct=fe(e.defineComponent({__name:"Sidebar",props:{menuList:{default:()=>[]},showLogo:{type:Boolean,default:!0},showUser:{type:Boolean,default:!0}},setup(l){const c=l,g=ce.useRoute(),p=ce.useRouter(),d=xe(),B=ke(),V=Te(),h=be(),w=e.computed(()=>c.menuList.length>0?c.menuList:d.menuList),k=e.computed(()=>h.isCollapsed),y=e.computed(()=>g.path),M=e.ref(H.get(It)||[]);e.watch(M,x=>{H.set(It,x)},{deep:!0});const $=(x,z,K=[])=>{var P;for(const i of x){if(z===i.menuUrl||z.startsWith(i.menuUrl+"/"))return[...K,i.menuUrl];if((P=i.children)!=null&&P.length){const _=$(i.children,z,[...K,i.menuUrl]);if(_)return _}}return null};e.watch([()=>g.path,w],([x,z])=>{if(z.length>0){const K=$(z,x);K?M.value=K.slice(0,-1):M.value=[]}},{immediate:!0});const U=e.computed(()=>h.isDark?"#1d1e1f":"#fff"),Y=e.computed(()=>h.isDark?"#cfd3dc":"#303133"),T=e.computed(()=>"#409eff"),L=x=>{x&&x!==g.path&&p.push(x)},C=()=>{V.logout(),B.clearUserInfo(),d.clearMenu(),p.push("/login")};return(x,z)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sidebar",{"sidebar--collapsed":k.value}])},[c.showLogo?(e.openBlock(),e.createElementBlock("div",gn,[z[2]||(z[2]=e.createElementVNode("img",{src:ve,alt:"Logo",class:"sidebar__logo-img"},null,-1)),e.withDirectives(e.createElementVNode("span",{class:"sidebar__logo-text"},e.toDisplayString(e.unref(h).appName),513),[[e.vShow,!k.value]])])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ne.Menu),{modelValue:y.value,"onUpdate:modelValue":z[0]||(z[0]=K=>y.value=K),openeds:M.value,"onUpdate:openeds":z[1]||(z[1]=K=>M.value=K),mode:"vertical",collapse:k.value,"collapse-transition":!1,"background-color":U.value,"text-color":Y.value,"active-text-color":T.value,class:"sidebar__menu",onSelect:L},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,K=>(e.openBlock(),e.createBlock(hn,{key:K.menuUrl,menu:K},null,8,["menu"]))),128))]),_:1},8,["modelValue","openeds","collapse","background-color","text-color","active-text-color"]),c.showUser&&!k.value?(e.openBlock(),e.createElementBlock("div",Nn,[e.createElementVNode("div",_n,[e.createElementVNode("span",En,e.toDisplayString(e.unref(B).userName),1),e.createElementVNode("span",Vn,e.toDisplayString(e.unref(B).departmentName),1)]),e.createVNode(e.unref(A.Button),{type:"text",size:"small",onClick:C},{default:e.withCtx(()=>[...z[3]||(z[3]=[e.createTextVNode("退出",-1)])]),_:1})])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-50c184da"]]),kn={class:"header"},yn={class:"header__left"},wn={key:0,class:"header__breadcrumb"},xn={key:0,class:"breadcrumb-separator"},Cn={class:"header__right"},Bn={key:0,class:"header__search-dropdown"},bn={key:0,class:"header__search-results"},Sn=["onClick"],$n={key:0,class:"header__search-icon"},In={key:1,class:"header__search-char"},Ln={class:"header__search-item-title"},Mn={key:1,class:"header__search-item-parent"},Dn={key:1,class:"header__search-empty"},Tn=["title"],An={class:"header__avatar"},Un={class:"header__user-name"},zn={key:0,class:"header__dropdown"},On={class:"header__dropdown-header"},Fn={class:"header__dropdown-avatar"},Pn={class:"header__dropdown-info"},Rn={class:"header__dropdown-name"},qn={class:"header__dropdown-role"},jn={class:"header__dropdown-menu"},Hn={class:"settings-drawer"},Gn={class:"settings-section"},Kn={class:"settings-layout-options"},Wn=["onClick"],Xn={class:"layout-option__preview"},Yn={key:0,class:"layout-preview-sidebar"},Jn={key:1,class:"layout-preview-top"},Zn={key:2,class:"layout-preview-mix"},Qn={class:"layout-option__label"},vn={class:"settings-section"},eo={class:"settings-color-options"},to=["title","onClick"],no={class:"settings-section"},oo={class:"settings-switch-list"},lo={class:"settings-switch-item"},so={class:"settings-switch-item"},Lt=fe(e.defineComponent({__name:"Header",setup(l){const c=ce.useRoute(),g=ce.useRouter(),p=be(),d=ke(),B=Te(),V=xe(),h=e.ref(!1),w=e.ref(!1),k=e.ref(null),y=e.ref(!1),M=e.ref(!1),$=e.ref(""),U=e.ref(null),Y=e.ref(!1),T=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],L=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],C=e.computed(()=>c.matched.filter(O=>O.meta&&O.meta.title).map(O=>({title:O.meta.title,path:O.path}))),x=(W,O="")=>{const n=[];return W.forEach(t=>{t.children&&t.children.length>0?n.push(...x(t.children,t.menuName)):n.push({...t,parentTitle:O,title:t.menuName,path:t.menuUrl})}),n},z=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),K=W=>{if(!W||W==="")return"";if(W.startsWith("tineco-icon-")){const n=W.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[n]||n}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[W]||W},P=W=>W?W.charAt(0):"",i=W=>z.has(W),_=e.computed(()=>$.value.trim()?x(V.menuList).filter(O=>O.title.toLowerCase().includes($.value.toLowerCase())):[]),G=e.computed(()=>p.layout),J=()=>{p.toggleCollapse()},D=()=>{p.toggleTheme()},ee=()=>{w.value=!0},Z=W=>{p.setLayout(W),w.value=!1},q=W=>{Y.value=W;const O=document.documentElement;W?O.classList.add("grey-mode"):O.classList.remove("grey-mode")},ne=()=>{q(!Y.value),w.value=!1},se=()=>{p.toggleTheme(),w.value=!1},Ee=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},re=()=>{y.value=!!document.fullscreenElement},ue=()=>{h.value=!h.value},he=()=>{h.value=!1},me=()=>{M.value=!1,$.value=""},Se=W=>{g.push(W),me()},Ve=W=>{p.setPrimaryColor(W),w.value=!1},$e=()=>{he(),g.push("/profile")},I=()=>{he(),g.push("/change-password")},Ie=()=>{he(),B.logout(),d.clearUserInfo(),V.clearMenu(),g.push("/login")},Le=W=>{k.value&&!k.value.contains(W.target)&&he(),U.value&&!U.value.contains(W.target)&&me()},Ce=W=>{W.key==="Escape"&&(me(),he())};return e.onMounted(()=>{document.addEventListener("click",Le),document.addEventListener("fullscreenchange",re),document.addEventListener("keydown",Ce),p.initTheme(),Y.value=document.documentElement.classList.contains("grey-mode")}),e.onUnmounted(()=>{document.removeEventListener("click",Le),document.removeEventListener("fullscreenchange",re),document.removeEventListener("keydown",Ce)}),(W,O)=>{var n;return e.openBlock(),e.createElementBlock("div",kn,[e.createElementVNode("div",yn,[e.createElementVNode("div",{class:"header__collapse",onClick:J},[e.createVNode(e.unref(A.Icon),{name:e.unref(p).isCollapsed?"menu-unfold":"menu-fold",size:18},null,8,["name"])]),e.unref(p).showBreadcrumb?(e.openBlock(),e.createElementBlock("div",wn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(t,s)=>(e.openBlock(),e.createElementBlock("span",{key:t.path},[s>0?(e.openBlock(),e.createElementBlock("span",xn,"/")):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass({"is-current":s===C.value.length-1})},e.toDisplayString(t.title),3)]))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Cn,[e.createElementVNode("div",{class:"header__search",ref_key:"searchRef",ref:U},[e.createVNode(e.unref(A.Icon),{name:"search",size:14,class:"header__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":O[0]||(O[0]=t=>$.value=t),type:"text",class:"header__search-input",placeholder:"搜索菜单...",onFocus:O[1]||(O[1]=t=>M.value=!0)},null,544),[[e.vModelText,$.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[M.value&&(_.value.length>0||$.value)?(e.openBlock(),e.createElementBlock("div",Bn,[_.value.length>0?(e.openBlock(),e.createElementBlock("div",bn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,t=>(e.openBlock(),e.createElementBlock("div",{key:t.path,class:"header__search-item",onClick:s=>Se(t.path)},[t.title!=="首页"?(e.openBlock(),e.createElementBlock("span",$n,[i(K(t.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:K(t.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",In,e.toDisplayString(P(t.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Ln,e.toDisplayString(t.title),1),t.parentTitle?(e.openBlock(),e.createElementBlock("span",Mn,e.toDisplayString(t.parentTitle),1)):e.createCommentVNode("",!0)],8,Sn))),128))])):(e.openBlock(),e.createElementBlock("div",Dn," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"header__action",onClick:Ee,title:y.value?"退出全屏":"全屏"},[e.createVNode(e.unref(A.Icon),{name:y.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Tn),e.createElementVNode("div",{class:"header__action",onClick:ee,title:"换肤设置"},[e.createVNode(e.unref(A.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"header__action",onClick:D,title:"切换主题"},[e.createVNode(e.unref(A.Icon),{name:e.unref(p).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"header__user",ref_key:"dropdownRef",ref:k},[e.createElementVNode("div",{class:"header__user-trigger",onClick:e.withModifiers(ue,["stop"])},[e.createElementVNode("div",An,[e.createElementVNode("span",null,e.toDisplayString(((n=e.unref(d).userName)==null?void 0:n.charAt(0))||"U"),1)]),e.createElementVNode("span",Un,e.toDisplayString(e.unref(d).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["header__user-arrow",{"is-active":h.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var t;return[h.value?(e.openBlock(),e.createElementBlock("div",zn,[e.createElementVNode("div",On,[e.createElementVNode("div",Fn,[e.createElementVNode("span",null,e.toDisplayString(((t=e.unref(d).userName)==null?void 0:t.charAt(0))||"U"),1)]),e.createElementVNode("div",Pn,[e.createElementVNode("div",Rn,e.toDisplayString(e.unref(d).userName),1),e.createElementVNode("div",qn,e.toDisplayString(e.unref(d).departmentName),1)])]),O[7]||(O[7]=e.createElementVNode("div",{class:"header__dropdown-divider"},null,-1)),e.createElementVNode("div",jn,[e.createElementVNode("div",{class:"header__dropdown-item",onClick:$e},[e.createVNode(e.unref(A.Icon),{name:"user",size:16}),O[3]||(O[3]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"header__dropdown-item",onClick:I},[e.createVNode(e.unref(A.Icon),{name:"lock",size:16}),O[4]||(O[4]=e.createElementVNode("span",null,"修改密码",-1))]),O[6]||(O[6]=e.createElementVNode("div",{class:"header__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"header__dropdown-item header__dropdown-item--danger",onClick:Ie},[e.createVNode(e.unref(A.Icon),{name:"logout",size:16}),O[5]||(O[5]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(oe.Drawer),{modelValue:w.value,"onUpdate:modelValue":O[2]||(O[2]=t=>w.value=t),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Hn,[e.createElementVNode("div",Gn,[O[11]||(O[11]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",Kn,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(T,t=>e.createElementVNode("div",{key:t.value,class:e.normalizeClass(["layout-option",{"is-active":G.value===t.value}]),onClick:s=>Z(t.value)},[e.createElementVNode("div",Xn,[t.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",Yn,[...O[8]||(O[8]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):t.value==="top"?(e.openBlock(),e.createElementBlock("div",Jn,[...O[9]||(O[9]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Zn,[...O[10]||(O[10]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",Qn,e.toDisplayString(t.label),1)],10,Wn)),64))])]),e.createElementVNode("div",vn,[O[12]||(O[12]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",eo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(L,t=>e.createElementVNode("div",{key:t.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(p).primaryColor===t.value}]),style:e.normalizeStyle({backgroundColor:t.value}),title:t.label,onClick:s=>Ve(t.value)},[e.unref(p).primaryColor===t.value?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,to)),64))])]),e.createElementVNode("div",no,[O[17]||(O[17]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",oo,[e.createElementVNode("div",lo,[O[14]||(O[14]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":Y.value}]),onClick:ne},[...O[13]||(O[13]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",so,[O[16]||(O[16]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(p).isDark}]),onClick:se},[...O[15]||(O[15]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-89179947"]]),ro={class:"top-menu"},ao={class:"top-menu__logo"},io={class:"top-menu__logo-text"},co={class:"top-menu__menu-content"},mo={key:0,class:"top-menu__menu-icon"},po={key:1,class:"top-menu__menu-char"},fo={class:"top-menu__menu-text"},uo={class:"top-menu__menu-content"},ho={class:"top-menu__menu-icon"},go={key:1,class:"top-menu__menu-char"},No={class:"top-menu__menu-text"},_o={class:"top-menu__menu-content"},Eo={class:"top-menu__menu-icon"},Vo={key:1,class:"top-menu__menu-char"},ko={class:"top-menu__menu-text"},yo={class:"top-menu__menu-content"},wo={class:"top-menu__menu-icon"},xo={key:1,class:"top-menu__menu-char"},Co={class:"top-menu__menu-text"},Bo={class:"top-menu__menu-content"},bo={key:0,class:"top-menu__menu-icon"},So={key:1,class:"top-menu__menu-char"},$o={class:"top-menu__menu-text"},Io={class:"top-menu__actions"},Lo={key:0,class:"top-menu__search-dropdown"},Mo={key:0,class:"top-menu__search-results"},Do=["onClick"],To={key:0,class:"top-menu__search-icon-item"},Ao={key:1,class:"top-menu__search-char"},Uo={class:"top-menu__search-item-title"},zo={key:1,class:"top-menu__search-item-parent"},Oo={key:1,class:"top-menu__search-empty"},Fo=["title"],Po={class:"top-menu__avatar"},Ro={class:"top-menu__user-name"},qo={key:0,class:"top-menu__dropdown"},jo={class:"top-menu__dropdown-header"},Ho={class:"top-menu__dropdown-avatar"},Go={class:"top-menu__dropdown-info"},Ko={class:"top-menu__dropdown-name"},Wo={class:"top-menu__dropdown-role"},Xo={class:"top-menu__dropdown-menu"},Yo={class:"settings-drawer"},Jo={class:"settings-section"},Zo={class:"settings-layout-options"},Qo=["onClick"],vo={class:"layout-option__preview"},el={key:0,class:"layout-preview-sidebar"},tl={key:1,class:"layout-preview-top"},nl={key:2,class:"layout-preview-mix"},ol={class:"layout-option__label"},ll={class:"settings-section"},sl={class:"settings-color-options"},rl=["title","onClick"],al={class:"settings-section"},il={class:"settings-switch-list"},cl={class:"settings-switch-item"},dl={class:"settings-switch-item"},ml=fe(e.defineComponent({__name:"TopMenu",setup(l){const c=ce.useRoute(),g=ce.useRouter(),p=xe(),d=be(),B=ke(),V=Te(),h=e.computed(()=>c.path),w=(t,s="")=>{const f=[];return t.forEach(o=>{o.children&&o.children.length>0?f.push(...w(o.children,o.menuName)):f.push({...o,parentTitle:s,title:o.menuName,path:o.menuUrl})}),f},k=e.computed(()=>z.value.trim()?w(p.menuList).filter(s=>s.title.toLowerCase().includes(z.value.toLowerCase())):[]),y=e.computed(()=>d.isDark?"#1d1e1f":"#fff"),M=e.computed(()=>d.isDark?"#cfd3dc":"#303133"),$=e.computed(()=>"#409eff"),U=e.ref(!1),Y=e.ref(null),T=e.ref(!1),L=e.ref(!1),C=e.ref(!1),x=e.ref(!1),z=e.ref(""),K=e.ref(null),P=t=>{t&&t!==c.path&&g.push(t)},i=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),_=t=>{if(!t||t==="")return"";if(t.startsWith("tineco-icon-")){const f=t.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[f]||f}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[t]||t},G=t=>t?t.charAt(0):"",J=t=>i.has(t),D=()=>{d.toggleTheme(),L.value=!1},ee=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},Z=()=>{T.value=!!document.fullscreenElement},q=()=>{U.value=!U.value},ne=()=>{U.value=!1},se=()=>{x.value=!1,z.value=""},Ee=t=>{g.push(t),se()},re=()=>{L.value=!0},ue=t=>{C.value=t;const s=document.documentElement;t?s.classList.add("grey-mode"):s.classList.remove("grey-mode")},he=()=>{ue(!C.value),L.value=!1},me=()=>{d.toggleTheme(),L.value=!1},Se=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],Ve=e.computed(()=>d.layout),$e=t=>{d.setLayout(t),L.value=!1},I=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],Ie=t=>{d.setPrimaryColor(t),L.value=!1},Le=()=>{ne(),g.push("/profile")},Ce=()=>{ne(),g.push("/change-password")},W=()=>{ne(),V.logout(),B.clearUserInfo(),p.clearMenu(),g.push("/login")},O=t=>{Y.value&&!Y.value.contains(t.target)&&ne(),K.value&&!K.value.contains(t.target)&&se()},n=t=>{t.key==="Escape"&&(se(),ne())};return e.onMounted(()=>{document.addEventListener("click",O),document.addEventListener("fullscreenchange",Z),document.addEventListener("keydown",n),C.value=document.documentElement.classList.contains("grey-mode")}),e.onUnmounted(()=>{document.removeEventListener("click",O),document.removeEventListener("fullscreenchange",Z),document.removeEventListener("keydown",n)}),(t,s)=>{var f;return e.openBlock(),e.createElementBlock("div",ro,[e.createElementVNode("div",ao,[s[3]||(s[3]=e.createElementVNode("img",{src:ve,alt:"Logo",class:"top-menu__logo-img"},null,-1)),e.createElementVNode("span",io,e.toDisplayString(e.unref(d).appName),1)]),e.createVNode(e.unref(Ne.Menu),{"model-value":h.value,mode:"horizontal","background-color":y.value,"text-color":M.value,"active-text-color":$.value,class:"top-menu__menu",onSelect:P},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p).menuList,o=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:o.menuUrl},[o.children&&o.children.length>0?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:o.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",co,[o.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",mo,[J(_(o.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(o.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",po,e.toDisplayString(G(o.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",fo,e.toDisplayString(o.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.children,r=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r.menuUrl},[r.children&&r.children.length>0?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:r.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",uo,[e.createElementVNode("span",ho,[J(_(r.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(r.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",go,e.toDisplayString(G(r.menuName)),1))]),e.createElementVNode("span",No,e.toDisplayString(r.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.children,u=>(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:u.menuUrl,index:u.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",_o,[e.createElementVNode("span",Eo,[J(_(u.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(u.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Vo,e.toDisplayString(G(u.menuName)),1))]),e.createElementVNode("span",ko,e.toDisplayString(u.menuName),1)])]),_:2},1032,["index"]))),128))]),_:2},1032,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:r.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",yo,[e.createElementVNode("span",wo,[J(_(r.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(r.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",xo,e.toDisplayString(G(r.menuName)),1))]),e.createElementVNode("span",Co,e.toDisplayString(r.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:2},1032,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:o.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",Bo,[o.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",bo,[J(_(o.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(o.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",So,e.toDisplayString(G(o.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",$o,e.toDisplayString(o.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e.createElementVNode("div",Io,[e.createElementVNode("div",{class:"top-menu__search",ref_key:"searchRef",ref:K},[e.createVNode(e.unref(A.Icon),{name:"search",size:14,class:"top-menu__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":s[0]||(s[0]=o=>z.value=o),type:"text",class:"top-menu__search-input",placeholder:"搜索菜单...",onFocus:s[1]||(s[1]=o=>x.value=!0)},null,544),[[e.vModelText,z.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[x.value&&(k.value.length>0||z.value)?(e.openBlock(),e.createElementBlock("div",Lo,[k.value.length>0?(e.openBlock(),e.createElementBlock("div",Mo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,o=>(e.openBlock(),e.createElementBlock("div",{key:o.path,class:"top-menu__search-item",onClick:r=>Ee(o.path)},[o.title!=="首页"?(e.openBlock(),e.createElementBlock("span",To,[J(_(o.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:_(o.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Ao,e.toDisplayString(G(o.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Uo,e.toDisplayString(o.title),1),o.parentTitle?(e.openBlock(),e.createElementBlock("span",zo,e.toDisplayString(o.parentTitle),1)):e.createCommentVNode("",!0)],8,Do))),128))])):(e.openBlock(),e.createElementBlock("div",Oo," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"top-menu__action",onClick:ee,title:T.value?"退出全屏":"全屏"},[e.createVNode(e.unref(A.Icon),{name:T.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Fo),e.createElementVNode("div",{class:"top-menu__action",onClick:re,title:"换肤设置"},[e.createVNode(e.unref(A.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"top-menu__action",onClick:D,title:"切换主题"},[e.createVNode(e.unref(A.Icon),{name:e.unref(d).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"top-menu__user",ref_key:"dropdownRef",ref:Y},[e.createElementVNode("div",{class:"top-menu__user-trigger",onClick:e.withModifiers(q,["stop"])},[e.createElementVNode("div",Po,[e.createElementVNode("span",null,e.toDisplayString(((f=e.unref(B).userName)==null?void 0:f.charAt(0))||"U"),1)]),e.createElementVNode("span",Ro,e.toDisplayString(e.unref(B).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["top-menu__user-arrow",{"is-active":U.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var o;return[U.value?(e.openBlock(),e.createElementBlock("div",qo,[e.createElementVNode("div",jo,[e.createElementVNode("div",Ho,[e.createElementVNode("span",null,e.toDisplayString(((o=e.unref(B).userName)==null?void 0:o.charAt(0))||"U"),1)]),e.createElementVNode("div",Go,[e.createElementVNode("div",Ko,e.toDisplayString(e.unref(B).userName),1),e.createElementVNode("div",Wo,e.toDisplayString(e.unref(B).departmentName),1)])]),s[8]||(s[8]=e.createElementVNode("div",{class:"top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",Xo,[e.createElementVNode("div",{class:"top-menu__dropdown-item",onClick:Le},[e.createVNode(e.unref(A.Icon),{name:"user",size:16}),s[4]||(s[4]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"top-menu__dropdown-item",onClick:Ce},[e.createVNode(e.unref(A.Icon),{name:"lock",size:16}),s[5]||(s[5]=e.createElementVNode("span",null,"修改密码",-1))]),s[7]||(s[7]=e.createElementVNode("div",{class:"top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"top-menu__dropdown-item top-menu__dropdown-item--danger",onClick:W},[e.createVNode(e.unref(A.Icon),{name:"logout",size:16}),s[6]||(s[6]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(oe.Drawer),{modelValue:L.value,"onUpdate:modelValue":s[2]||(s[2]=o=>L.value=o),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Yo,[e.createElementVNode("div",Jo,[s[12]||(s[12]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",Zo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Se,o=>e.createElementVNode("div",{key:o.value,class:e.normalizeClass(["layout-option",{"is-active":Ve.value===o.value}]),onClick:r=>$e(o.value)},[e.createElementVNode("div",vo,[o.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",el,[...s[9]||(s[9]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):o.value==="top"?(e.openBlock(),e.createElementBlock("div",tl,[...s[10]||(s[10]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",nl,[...s[11]||(s[11]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",ol,e.toDisplayString(o.label),1)],10,Qo)),64))])]),e.createElementVNode("div",ll,[s[13]||(s[13]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",sl,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(I,o=>e.createElementVNode("div",{key:o.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(d).primaryColor===o.value}]),style:e.normalizeStyle({backgroundColor:o.value}),title:o.label,onClick:r=>Ie(o.value)},[e.unref(d).primaryColor===o.value?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,rl)),64))])]),e.createElementVNode("div",al,[s[18]||(s[18]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",il,[e.createElementVNode("div",cl,[s[15]||(s[15]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":C.value}]),onClick:he},[...s[14]||(s[14]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",dl,[s[17]||(s[17]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(d).isDark}]),onClick:me},[...s[16]||(s[16]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-5c8f8b91"]]),pl={class:"mix-top-menu"},fl={class:"mix-top-menu__logo"},ul={class:"mix-top-menu__logo-text"},hl={class:"mix-top-menu__menu-content"},gl={key:0,class:"mix-top-menu__menu-icon"},Nl={key:1,class:"mix-top-menu__menu-char"},_l={class:"mix-top-menu__menu-text"},El={class:"mix-top-menu__actions"},Vl={key:0,class:"mix-top-menu__search-dropdown"},kl={key:0,class:"mix-top-menu__search-results"},yl=["onClick"],wl={key:0,class:"mix-top-menu__search-icon-item"},xl={key:1,class:"mix-top-menu__search-char"},Cl={class:"mix-top-menu__search-item-title"},Bl={key:1,class:"mix-top-menu__search-item-parent"},bl={key:1,class:"mix-top-menu__search-empty"},Sl=["title"],$l={class:"mix-top-menu__avatar"},Il={class:"mix-top-menu__user-name"},Ll={key:0,class:"mix-top-menu__dropdown"},Ml={class:"mix-top-menu__dropdown-header"},Dl={class:"mix-top-menu__dropdown-avatar"},Tl={class:"mix-top-menu__dropdown-info"},Al={class:"mix-top-menu__dropdown-name"},Ul={class:"mix-top-menu__dropdown-role"},zl={class:"mix-top-menu__dropdown-menu"},Ol={class:"settings-drawer"},Fl={class:"settings-section"},Pl={class:"settings-layout-options"},Rl=["onClick"],ql={class:"layout-option__preview"},jl={key:0,class:"layout-preview-sidebar"},Hl={key:1,class:"layout-preview-top"},Gl={key:2,class:"layout-preview-mix"},Kl={class:"layout-option__label"},Wl={class:"settings-section"},Xl={class:"settings-color-options"},Yl=["title","onClick"],Jl={class:"settings-section"},Zl={class:"settings-switch-list"},Ql={class:"settings-switch-item"},vl={class:"settings-switch-item"},es=fe(e.defineComponent({__name:"MixTopMenu",setup(l){const c=ce.useRoute(),g=ce.useRouter(),p=xe(),d=be(),B=ke(),V=Te(),h=e.ref(""),w=(o,r="")=>{const u=[];return o.forEach(a=>{a.children&&a.children.length>0?u.push(...w(a.children,a.menuName)):u.push({...a,parentTitle:r,title:a.menuName,path:a.menuUrl})}),u},k=e.computed(()=>_.value.trim()?w(p.menuList).filter(r=>r.title.toLowerCase().includes(_.value.toLowerCase())):[]),y=e.computed(()=>{const o=p.menuList.find(r=>r.menuUrl===h.value);return(o==null?void 0:o.children)||[]}),M=e.computed(()=>p.menuList.find(o=>!!(c.path===o.menuUrl||o.children&&o.children.some(r=>c.path.startsWith(r.menuUrl)||c.path===r.menuUrl)))),$=()=>{M.value?h.value=M.value.menuUrl:p.menuList.length>0&&(h.value=p.menuList[0].menuUrl)},U=o=>{h.value=o;const r=p.menuList.find(u=>u.menuUrl===o);if(r)if(r.children&&r.children.length>0){const u=r.children[0].menuUrl;c.path!==u&&g.push(u)}else c.path!==o&&g.push(o)},Y=e.computed(()=>d.isDark?"#1d1e1f":"#fff"),T=e.computed(()=>d.isDark?"#cfd3dc":"#303133"),L=e.computed(()=>"#409eff"),C=e.ref(!1),x=e.ref(null),z=e.ref(!1),K=e.ref(!1),P=e.ref(!1),i=e.ref(!1),_=e.ref(""),G=e.ref(null);e.watch(()=>c.path,()=>{$(),d.setMixSubMenus(y.value)}),e.watch(()=>p.menuList,o=>{o&&o.length>0&&($(),d.setMixSubMenus(y.value))},{immediate:!0});const J=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),D=o=>{if(!o||o==="")return"";if(o.startsWith("tineco-icon-")){const u=o.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[u]||u}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[o]||o},ee=o=>o?o.charAt(0):"",Z=o=>J.has(o),q=()=>{d.toggleTheme(),K.value=!1},ne=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},se=()=>{z.value=!!document.fullscreenElement},Ee=()=>{C.value=!C.value},re=()=>{C.value=!1},ue=()=>{i.value=!1,_.value=""},he=o=>{g.push(o),ue()},me=()=>{K.value=!0},Se=o=>{P.value=o;const r=document.documentElement;o?r.classList.add("grey-mode"):r.classList.remove("grey-mode")},Ve=()=>{Se(!P.value),K.value=!1},$e=()=>{d.toggleTheme(),K.value=!1},I=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],Ie=e.computed(()=>d.layout),Le=o=>{d.setLayout(o),K.value=!1},Ce=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],W=o=>{d.setPrimaryColor(o),K.value=!1},O=()=>{re(),g.push("/profile")},n=()=>{re(),g.push("/change-password")},t=()=>{re(),V.logout(),B.clearUserInfo(),p.clearMenu(),g.push("/login")},s=o=>{x.value&&!x.value.contains(o.target)&&re(),G.value&&!G.value.contains(o.target)&&ue()},f=o=>{o.key==="Escape"&&(ue(),re())};return e.onMounted(()=>{document.addEventListener("click",s),document.addEventListener("fullscreenchange",se),document.addEventListener("keydown",f),P.value=document.documentElement.classList.contains("grey-mode"),$()}),e.onUnmounted(()=>{document.removeEventListener("click",s),document.removeEventListener("fullscreenchange",se),document.removeEventListener("keydown",f)}),(o,r)=>{var u;return e.openBlock(),e.createElementBlock("div",pl,[e.createElementVNode("div",fl,[r[3]||(r[3]=e.createElementVNode("img",{src:ve,alt:"Logo",class:"mix-top-menu__logo-img"},null,-1)),e.createElementVNode("span",ul,e.toDisplayString(e.unref(d).appName),1)]),e.createVNode(e.unref(Ne.Menu),{"model-value":h.value,mode:"horizontal","background-color":Y.value,"text-color":T.value,"active-text-color":L.value,class:"mix-top-menu__menu",onSelect:U},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p).menuList,a=>(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:a.menuUrl,index:a.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",hl,[a.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",gl,[Z(D(a.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:D(a.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Nl,e.toDisplayString(ee(a.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",_l,e.toDisplayString(a.menuName),1)])]),_:2},1032,["index"]))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e.createElementVNode("div",El,[e.createElementVNode("div",{class:"mix-top-menu__search",ref_key:"searchRef",ref:G},[e.createVNode(e.unref(A.Icon),{name:"search",size:14,class:"mix-top-menu__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":r[0]||(r[0]=a=>_.value=a),type:"text",class:"mix-top-menu__search-input",placeholder:"搜索菜单...",onFocus:r[1]||(r[1]=a=>i.value=!0)},null,544),[[e.vModelText,_.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[i.value&&(k.value.length>0||_.value)?(e.openBlock(),e.createElementBlock("div",Vl,[k.value.length>0?(e.openBlock(),e.createElementBlock("div",kl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,a=>(e.openBlock(),e.createElementBlock("div",{key:a.path,class:"mix-top-menu__search-item",onClick:m=>he(a.path)},[a.title!=="首页"?(e.openBlock(),e.createElementBlock("span",wl,[Z(D(a.icon))?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:D(a.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",xl,e.toDisplayString(ee(a.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Cl,e.toDisplayString(a.title),1),a.parentTitle?(e.openBlock(),e.createElementBlock("span",Bl,e.toDisplayString(a.parentTitle),1)):e.createCommentVNode("",!0)],8,yl))),128))])):(e.openBlock(),e.createElementBlock("div",bl," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:ne,title:z.value?"退出全屏":"全屏"},[e.createVNode(e.unref(A.Icon),{name:z.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Sl),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:me,title:"换肤设置"},[e.createVNode(e.unref(A.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:q,title:"切换主题"},[e.createVNode(e.unref(A.Icon),{name:e.unref(d).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"mix-top-menu__user",ref_key:"dropdownRef",ref:x},[e.createElementVNode("div",{class:"mix-top-menu__user-trigger",onClick:e.withModifiers(Ee,["stop"])},[e.createElementVNode("div",$l,[e.createElementVNode("span",null,e.toDisplayString(((u=e.unref(B).userName)==null?void 0:u.charAt(0))||"U"),1)]),e.createElementVNode("span",Il,e.toDisplayString(e.unref(B).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["mix-top-menu__user-arrow",{"is-active":C.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var a;return[C.value?(e.openBlock(),e.createElementBlock("div",Ll,[e.createElementVNode("div",Ml,[e.createElementVNode("div",Dl,[e.createElementVNode("span",null,e.toDisplayString(((a=e.unref(B).userName)==null?void 0:a.charAt(0))||"U"),1)]),e.createElementVNode("div",Tl,[e.createElementVNode("div",Al,e.toDisplayString(e.unref(B).userName),1),e.createElementVNode("div",Ul,e.toDisplayString(e.unref(B).departmentName),1)])]),r[8]||(r[8]=e.createElementVNode("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",zl,[e.createElementVNode("div",{class:"mix-top-menu__dropdown-item",onClick:O},[e.createVNode(e.unref(A.Icon),{name:"user",size:16}),r[4]||(r[4]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"mix-top-menu__dropdown-item",onClick:n},[e.createVNode(e.unref(A.Icon),{name:"lock",size:16}),r[5]||(r[5]=e.createElementVNode("span",null,"修改密码",-1))]),r[7]||(r[7]=e.createElementVNode("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"mix-top-menu__dropdown-item mix-top-menu__dropdown-item--danger",onClick:t},[e.createVNode(e.unref(A.Icon),{name:"logout",size:16}),r[6]||(r[6]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(oe.Drawer),{modelValue:K.value,"onUpdate:modelValue":r[2]||(r[2]=a=>K.value=a),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Ol,[e.createElementVNode("div",Fl,[r[12]||(r[12]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",Pl,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(I,a=>e.createElementVNode("div",{key:a.value,class:e.normalizeClass(["layout-option",{"is-active":Ie.value===a.value}]),onClick:m=>Le(a.value)},[e.createElementVNode("div",ql,[a.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",jl,[...r[9]||(r[9]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):a.value==="top"?(e.openBlock(),e.createElementBlock("div",Hl,[...r[10]||(r[10]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Gl,[...r[11]||(r[11]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",Kl,e.toDisplayString(a.label),1)],10,Rl)),64))])]),e.createElementVNode("div",Wl,[r[13]||(r[13]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",Xl,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Ce,a=>e.createElementVNode("div",{key:a.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(d).primaryColor===a.value}]),style:e.normalizeStyle({backgroundColor:a.value}),title:a.label,onClick:m=>W(a.value)},[e.unref(d).primaryColor===a.value?(e.openBlock(),e.createBlock(e.unref(A.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,Yl)),64))])]),e.createElementVNode("div",Jl,[r[18]||(r[18]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",Zl,[e.createElementVNode("div",Ql,[r[15]||(r[15]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":P.value}]),onClick:Ve},[...r[14]||(r[14]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",vl,[r[17]||(r[17]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(d).isDark}]),onClick:$e},[...r[16]||(r[16]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-25806305"]]),ts={key:0,class:"layout layout--sidebar"},ns={class:"layout__main"},os={class:"layout__header"},ls={class:"layout__content"},ss={key:1,class:"layout layout--top"},rs={class:"layout__top-menu"},as={class:"layout__main"},is={class:"layout__content"},cs={key:2,class:"layout layout--mix"},ds={class:"layout__mix-top-menu"},ms={class:"layout__mix-body"},ps={class:"layout__content"},dt=fe(e.defineComponent({__name:"index",setup(l){const c=be(),g=xe(),p=e.computed(()=>c.isCollapsed?"64px":"210px"),d=e.computed(()=>c.layout),B=e.computed(()=>d.value==="mix"),V=e.computed(()=>d.value==="sidebar"?g.menuList:d.value==="mix"?c.mixSubMenus:[]),h=e.computed(()=>B.value?V.value.length>0:!1);return(w,k)=>{const y=e.resolveComponent("router-view");return e.openBlock(),e.createElementBlock(e.Fragment,null,[d.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",ts,[e.createElementVNode("aside",{class:"layout__aside",style:e.normalizeStyle({width:p.value})},[e.createVNode(ct,{"menu-list":V.value,"show-logo":!0,"show-user":!0},null,8,["menu-list"])],4),e.createElementVNode("div",ns,[e.createElementVNode("header",os,[e.createVNode(Lt)]),e.createElementVNode("main",ls,[e.createVNode(y)])])])):e.createCommentVNode("",!0),d.value==="top"?(e.openBlock(),e.createElementBlock("div",ss,[e.createElementVNode("div",rs,[e.createVNode(ml)]),e.createElementVNode("div",as,[e.createElementVNode("main",is,[e.createVNode(y)])])])):e.createCommentVNode("",!0),d.value==="mix"?(e.openBlock(),e.createElementBlock("div",cs,[e.createElementVNode("div",ds,[e.createVNode(es)]),e.createElementVNode("div",ms,[h.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:"layout__aside",style:e.normalizeStyle({width:p.value})},[e.createVNode(ct,{"menu-list":V.value,"show-logo":!1,"show-user":!1},null,8,["menu-list"])],4)):e.createCommentVNode("",!0),e.createElementVNode("main",ps,[e.createVNode(y)])])])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-24c73186"]]),fs=Object.freeze(Object.defineProperty({__proto__:null,default:dt},Symbol.toStringTag,{value:"Module"})),us={class:"tabs-wrapper"},hs={class:"tab-label"},gs=["onClick"],Ns=fe(e.defineComponent({__name:"Tabs",setup(l){const c=ce.useRoute(),g=ce.useRouter(),p=e.computed(()=>{const h=[];return c.matched.forEach(w=>{var k;(k=w.meta)!=null&&k.affix&&h.push({name:w.name,title:w.meta.title,path:w.path,affix:!0})}),h}),d=e.computed(()=>c.path),B=h=>{g.push(h)},V=h=>{const w=p.value.find(k=>k.path===h);if(!(w!=null&&w.affix)&&h===d.value){const k=p.value.findIndex(M=>M.path===h),y=p.value[k-1]||p.value[k+1];y&&g.push(y.path)}};return(h,w)=>(e.openBlock(),e.createElementBlock("div",us,[e.createVNode(e.unref(Ne.Tabs),{modelValue:d.value,"onUpdate:modelValue":w[0]||(w[0]=k=>d.value=k),type:"card",onTabClick:B},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,k=>(e.openBlock(),e.createBlock(e.unref(Ne.TabPane),{key:k.path,name:k.path,label:k.title,closable:!k.affix},{label:e.withCtx(()=>[e.createElementVNode("span",hs,[e.createTextVNode(e.toDisplayString(k.title)+" ",1),k.affix?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",{key:0,class:"tab-close",onClick:e.withModifiers(y=>V(k.path),["stop"])}," ✕ ",8,gs))])]),_:2},1032,["name","label","closable"]))),128))]),_:1},8,["modelValue"])]))}}),[["__scopeId","data-v-9156d8cd"]]),_s={},Es={class:"footer"};function Vs(l,c){return e.openBlock(),e.createElementBlock("div",Es,[...c[0]||(c[0]=[e.createElementVNode("span",null,"Copyright © 2024 Xto Demo. All Rights Reserved.",-1)])])}const ks=fe(_s,[["render",Vs],["__scopeId","data-v-4852826a"]]);var ys=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ws(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var Ge={exports:{}},Mt={exports:{}},Dt={exports:{}};(function(l){(function(c){var g,p=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,d=Math.ceil,B=Math.floor,V="[BigNumber Error] ",h=V+"Number primitive has more than 15 significant digits: ",w=1e14,k=14,y=9007199254740991,M=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],$=1e7,U=1e9;function Y(i){var _,G,J,D=I.prototype={constructor:I,toString:null,valueOf:null},ee=new I(1),Z=20,q=4,ne=-7,se=21,Ee=-1e7,re=1e7,ue=!1,he=1,me=0,Se={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},Ve="0123456789abcdefghijklmnopqrstuvwxyz",$e=!0;function I(n,t){var s,f,o,r,u,a,m,E,N=this;if(!(N instanceof I))return new I(n,t);if(t==null){if(n&&n._isBigNumber===!0){N.s=n.s,!n.c||n.e>re?N.c=N.e=null:n.e<Ee?N.c=[N.e=0]:(N.e=n.e,N.c=n.c.slice());return}if((a=typeof n=="number")&&n*0==0){if(N.s=1/n<0?(n=-n,-1):1,n===~~n){for(r=0,u=n;u>=10;u/=10,r++);r>re?N.c=N.e=null:(N.e=r,N.c=[n]);return}E=String(n)}else{if(!p.test(E=String(n)))return J(N,E,a);N.s=E.charCodeAt(0)==45?(E=E.slice(1),-1):1}(r=E.indexOf("."))>-1&&(E=E.replace(".","")),(u=E.search(/e/i))>0?(r<0&&(r=u),r+=+E.slice(u+1),E=E.substring(0,u)):r<0&&(r=E.length)}else{if(x(t,2,Ve.length,"Base"),t==10&&$e)return N=new I(n),W(N,Z+N.e+1,q);if(E=String(n),a=typeof n=="number"){if(n*0!=0)return J(N,E,a,t);if(N.s=1/n<0?(E=E.slice(1),-1):1,I.DEBUG&&E.replace(/^0\.0*|\./,"").length>15)throw Error(h+n)}else N.s=E.charCodeAt(0)===45?(E=E.slice(1),-1):1;for(s=Ve.slice(0,t),r=u=0,m=E.length;u<m;u++)if(s.indexOf(f=E.charAt(u))<0){if(f=="."){if(u>r){r=m;continue}}else if(!o&&(E==E.toUpperCase()&&(E=E.toLowerCase())||E==E.toLowerCase()&&(E=E.toUpperCase()))){o=!0,u=-1,r=0;continue}return J(N,String(n),a,t)}a=!1,E=G(E,t,10,N.s),(r=E.indexOf("."))>-1?E=E.replace(".",""):r=E.length}for(u=0;E.charCodeAt(u)===48;u++);for(m=E.length;E.charCodeAt(--m)===48;);if(E=E.slice(u,++m)){if(m-=u,a&&I.DEBUG&&m>15&&(n>y||n!==B(n)))throw Error(h+N.s*n);if((r=r-u-1)>re)N.c=N.e=null;else if(r<Ee)N.c=[N.e=0];else{if(N.e=r,N.c=[],u=(r+1)%k,r<0&&(u+=k),u<m){for(u&&N.c.push(+E.slice(0,u)),m-=k;u<m;)N.c.push(+E.slice(u,u+=k));u=k-(E=E.slice(u)).length}else u-=m;for(;u--;E+="0");N.c.push(+E)}}else N.c=[N.e=0]}I.clone=Y,I.ROUND_UP=0,I.ROUND_DOWN=1,I.ROUND_CEIL=2,I.ROUND_FLOOR=3,I.ROUND_HALF_UP=4,I.ROUND_HALF_DOWN=5,I.ROUND_HALF_EVEN=6,I.ROUND_HALF_CEIL=7,I.ROUND_HALF_FLOOR=8,I.EUCLID=9,I.config=I.set=function(n){var t,s;if(n!=null)if(typeof n=="object"){if(n.hasOwnProperty(t="DECIMAL_PLACES")&&(s=n[t],x(s,0,U,t),Z=s),n.hasOwnProperty(t="ROUNDING_MODE")&&(s=n[t],x(s,0,8,t),q=s),n.hasOwnProperty(t="EXPONENTIAL_AT")&&(s=n[t],s&&s.pop?(x(s[0],-U,0,t),x(s[1],0,U,t),ne=s[0],se=s[1]):(x(s,-U,U,t),ne=-(se=s<0?-s:s))),n.hasOwnProperty(t="RANGE"))if(s=n[t],s&&s.pop)x(s[0],-U,-1,t),x(s[1],1,U,t),Ee=s[0],re=s[1];else if(x(s,-U,U,t),s)Ee=-(re=s<0?-s:s);else throw Error(V+t+" cannot be zero: "+s);if(n.hasOwnProperty(t="CRYPTO"))if(s=n[t],s===!!s)if(s)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))ue=s;else throw ue=!s,Error(V+"crypto unavailable");else ue=s;else throw Error(V+t+" not true or false: "+s);if(n.hasOwnProperty(t="MODULO_MODE")&&(s=n[t],x(s,0,9,t),he=s),n.hasOwnProperty(t="POW_PRECISION")&&(s=n[t],x(s,0,U,t),me=s),n.hasOwnProperty(t="FORMAT"))if(s=n[t],typeof s=="object")Se=s;else throw Error(V+t+" not an object: "+s);if(n.hasOwnProperty(t="ALPHABET"))if(s=n[t],typeof s=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(s))$e=s.slice(0,10)=="0123456789",Ve=s;else throw Error(V+t+" invalid: "+s)}else throw Error(V+"Object expected: "+n);return{DECIMAL_PLACES:Z,ROUNDING_MODE:q,EXPONENTIAL_AT:[ne,se],RANGE:[Ee,re],CRYPTO:ue,MODULO_MODE:he,POW_PRECISION:me,FORMAT:Se,ALPHABET:Ve}},I.isBigNumber=function(n){if(!n||n._isBigNumber!==!0)return!1;if(!I.DEBUG)return!0;var t,s,f=n.c,o=n.e,r=n.s;e:if({}.toString.call(f)=="[object Array]"){if((r===1||r===-1)&&o>=-U&&o<=U&&o===B(o)){if(f[0]===0){if(o===0&&f.length===1)return!0;break e}if(t=(o+1)%k,t<1&&(t+=k),String(f[0]).length==t){for(t=0;t<f.length;t++)if(s=f[t],s<0||s>=w||s!==B(s))break e;if(s!==0)return!0}}}else if(f===null&&o===null&&(r===null||r===1||r===-1))return!0;throw Error(V+"Invalid BigNumber: "+n)},I.maximum=I.max=function(){return Le(arguments,-1)},I.minimum=I.min=function(){return Le(arguments,1)},I.random=function(){var n=9007199254740992,t=Math.random()*n&2097151?function(){return B(Math.random()*n)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(s){var f,o,r,u,a,m=0,E=[],N=new I(ee);if(s==null?s=Z:x(s,0,U),u=d(s/k),ue)if(crypto.getRandomValues){for(f=crypto.getRandomValues(new Uint32Array(u*=2));m<u;)a=f[m]*131072+(f[m+1]>>>11),a>=9e15?(o=crypto.getRandomValues(new Uint32Array(2)),f[m]=o[0],f[m+1]=o[1]):(E.push(a%1e14),m+=2);m=u/2}else if(crypto.randomBytes){for(f=crypto.randomBytes(u*=7);m<u;)a=(f[m]&31)*281474976710656+f[m+1]*1099511627776+f[m+2]*4294967296+f[m+3]*16777216+(f[m+4]<<16)+(f[m+5]<<8)+f[m+6],a>=9e15?crypto.randomBytes(7).copy(f,m):(E.push(a%1e14),m+=7);m=u/7}else throw ue=!1,Error(V+"crypto unavailable");if(!ue)for(;m<u;)a=t(),a<9e15&&(E[m++]=a%1e14);for(u=E[--m],s%=k,u&&s&&(a=M[k-s],E[m]=B(u/a)*a);E[m]===0;E.pop(),m--);if(m<0)E=[r=0];else{for(r=-1;E[0]===0;E.splice(0,1),r-=k);for(m=1,a=E[0];a>=10;a/=10,m++);m<k&&(r-=k-m)}return N.e=r,N.c=E,N}}(),I.sum=function(){for(var n=1,t=arguments,s=new I(t[0]);n<t.length;)s=s.plus(t[n++]);return s},G=function(){var n="0123456789";function t(s,f,o,r){for(var u,a=[0],m,E=0,N=s.length;E<N;){for(m=a.length;m--;a[m]*=f);for(a[0]+=r.indexOf(s.charAt(E++)),u=0;u<a.length;u++)a[u]>o-1&&(a[u+1]==null&&(a[u+1]=0),a[u+1]+=a[u]/o|0,a[u]%=o)}return a.reverse()}return function(s,f,o,r,u){var a,m,E,N,S,R,j,v,ae=s.indexOf("."),de=Z,Q=q;for(ae>=0&&(N=me,me=0,s=s.replace(".",""),v=new I(f),R=v.pow(s.length-ae),me=N,v.c=t(P(L(R.c),R.e,"0"),10,o,n),v.e=v.c.length),j=t(s,f,o,u?(a=Ve,n):(a=n,Ve)),E=N=j.length;j[--N]==0;j.pop());if(!j[0])return a.charAt(0);if(ae<0?--E:(R.c=j,R.e=E,R.s=r,R=_(R,v,de,Q,o),j=R.c,S=R.r,E=R.e),m=E+de+1,ae=j[m],N=o/2,S=S||m<0||j[m+1]!=null,S=Q<4?(ae!=null||S)&&(Q==0||Q==(R.s<0?3:2)):ae>N||ae==N&&(Q==4||S||Q==6&&j[m-1]&1||Q==(R.s<0?8:7)),m<1||!j[0])s=S?P(a.charAt(1),-de,a.charAt(0)):a.charAt(0);else{if(j.length=m,S)for(--o;++j[--m]>o;)j[m]=0,m||(++E,j=[1].concat(j));for(N=j.length;!j[--N];);for(ae=0,s="";ae<=N;s+=a.charAt(j[ae++]));s=P(s,E,a.charAt(0))}return s}}(),_=function(){function n(f,o,r){var u,a,m,E,N=0,S=f.length,R=o%$,j=o/$|0;for(f=f.slice();S--;)m=f[S]%$,E=f[S]/$|0,u=j*m+E*R,a=R*m+u%$*$+N,N=(a/r|0)+(u/$|0)+j*E,f[S]=a%r;return N&&(f=[N].concat(f)),f}function t(f,o,r,u){var a,m;if(r!=u)m=r>u?1:-1;else for(a=m=0;a<r;a++)if(f[a]!=o[a]){m=f[a]>o[a]?1:-1;break}return m}function s(f,o,r,u){for(var a=0;r--;)f[r]-=a,a=f[r]<o[r]?1:0,f[r]=a*u+f[r]-o[r];for(;!f[0]&&f.length>1;f.splice(0,1));}return function(f,o,r,u,a){var m,E,N,S,R,j,v,ae,de,Q,te,pe,Xe,ht,gt,Be,Re,ye=f.s==o.s?1:-1,ge=f.c,ie=o.c;if(!ge||!ge[0]||!ie||!ie[0])return new I(!f.s||!o.s||(ge?ie&&ge[0]==ie[0]:!ie)?NaN:ge&&ge[0]==0||!ie?ye*0:ye/0);for(ae=new I(ye),de=ae.c=[],E=f.e-o.e,ye=r+E+1,a||(a=w,E=T(f.e/k)-T(o.e/k),ye=ye/k|0),N=0;ie[N]==(ge[N]||0);N++);if(ie[N]>(ge[N]||0)&&E--,ye<0)de.push(1),S=!0;else{for(ht=ge.length,Be=ie.length,N=0,ye+=2,R=B(a/(ie[0]+1)),R>1&&(ie=n(ie,R,a),ge=n(ge,R,a),Be=ie.length,ht=ge.length),Xe=Be,Q=ge.slice(0,Be),te=Q.length;te<Be;Q[te++]=0);Re=ie.slice(),Re=[0].concat(Re),gt=ie[0],ie[1]>=a/2&>++;do{if(R=0,m=t(ie,Q,Be,te),m<0){if(pe=Q[0],Be!=te&&(pe=pe*a+(Q[1]||0)),R=B(pe/gt),R>1)for(R>=a&&(R=a-1),j=n(ie,R,a),v=j.length,te=Q.length;t(j,Q,v,te)==1;)R--,s(j,Be<v?Re:ie,v,a),v=j.length,m=1;else R==0&&(m=R=1),j=ie.slice(),v=j.length;if(v<te&&(j=[0].concat(j)),s(Q,j,te,a),te=Q.length,m==-1)for(;t(ie,Q,Be,te)<1;)R++,s(Q,Be<te?Re:ie,te,a),te=Q.length}else m===0&&(R++,Q=[0]);de[N++]=R,Q[0]?Q[te++]=ge[Xe]||0:(Q=[ge[Xe]],te=1)}while((Xe++<ht||Q[0]!=null)&&ye--);S=Q[0]!=null,de[0]||de.splice(0,1)}if(a==w){for(N=1,ye=de[0];ye>=10;ye/=10,N++);W(ae,r+(ae.e=N+E*k-1)+1,u,S)}else ae.e=E,ae.r=+S;return ae}}();function Ie(n,t,s,f){var o,r,u,a,m;if(s==null?s=q:x(s,0,8),!n.c)return n.toString();if(o=n.c[0],u=n.e,t==null)m=L(n.c),m=f==1||f==2&&(u<=ne||u>=se)?K(m,u):P(m,u,"0");else if(n=W(new I(n),t,s),r=n.e,m=L(n.c),a=m.length,f==1||f==2&&(t<=r||r<=ne)){for(;a<t;m+="0",a++);m=K(m,r)}else if(t-=u+(f===2&&r>u),m=P(m,r,"0"),r+1>a){if(--t>0)for(m+=".";t--;m+="0");}else if(t+=r-a,t>0)for(r+1==a&&(m+=".");t--;m+="0");return n.s<0&&o?"-"+m:m}function Le(n,t){for(var s,f,o=1,r=new I(n[0]);o<n.length;o++)f=new I(n[o]),(!f.s||(s=C(r,f))===t||s===0&&r.s===t)&&(r=f);return r}function Ce(n,t,s){for(var f=1,o=t.length;!t[--o];t.pop());for(o=t[0];o>=10;o/=10,f++);return(s=f+s*k-1)>re?n.c=n.e=null:s<Ee?n.c=[n.e=0]:(n.e=s,n.c=t),n}J=function(){var n=/^(-?)0([xbo])(?=\w[\w.]*$)/i,t=/^([^.]+)\.$/,s=/^\.([^.]+)$/,f=/^-?(Infinity|NaN)$/,o=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(r,u,a,m){var E,N=a?u:u.replace(o,"");if(f.test(N))r.s=isNaN(N)?null:N<0?-1:1;else{if(!a&&(N=N.replace(n,function(S,R,j){return E=(j=j.toLowerCase())=="x"?16:j=="b"?2:8,!m||m==E?R:S}),m&&(E=m,N=N.replace(t,"$1").replace(s,"0.$1")),u!=N))return new I(N,E);if(I.DEBUG)throw Error(V+"Not a"+(m?" base "+m:"")+" number: "+u);r.s=null}r.c=r.e=null}}();function W(n,t,s,f){var o,r,u,a,m,E,N,S=n.c,R=M;if(S){e:{for(o=1,a=S[0];a>=10;a/=10,o++);if(r=t-o,r<0)r+=k,u=t,m=S[E=0],N=B(m/R[o-u-1]%10);else if(E=d((r+1)/k),E>=S.length)if(f){for(;S.length<=E;S.push(0));m=N=0,o=1,r%=k,u=r-k+1}else break e;else{for(m=a=S[E],o=1;a>=10;a/=10,o++);r%=k,u=r-k+o,N=u<0?0:B(m/R[o-u-1]%10)}if(f=f||t<0||S[E+1]!=null||(u<0?m:m%R[o-u-1]),f=s<4?(N||f)&&(s==0||s==(n.s<0?3:2)):N>5||N==5&&(s==4||f||s==6&&(r>0?u>0?m/R[o-u]:0:S[E-1])%10&1||s==(n.s<0?8:7)),t<1||!S[0])return S.length=0,f?(t-=n.e+1,S[0]=R[(k-t%k)%k],n.e=-t||0):S[0]=n.e=0,n;if(r==0?(S.length=E,a=1,E--):(S.length=E+1,a=R[k-r],S[E]=u>0?B(m/R[o-u]%R[u])*a:0),f)for(;;)if(E==0){for(r=1,u=S[0];u>=10;u/=10,r++);for(u=S[0]+=a,a=1;u>=10;u/=10,a++);r!=a&&(n.e++,S[0]==w&&(S[0]=1));break}else{if(S[E]+=a,S[E]!=w)break;S[E--]=0,a=1}for(r=S.length;S[--r]===0;S.pop());}n.e>re?n.c=n.e=null:n.e<Ee&&(n.c=[n.e=0])}return n}function O(n){var t,s=n.e;return s===null?n.toString():(t=L(n.c),t=s<=ne||s>=se?K(t,s):P(t,s,"0"),n.s<0?"-"+t:t)}return D.absoluteValue=D.abs=function(){var n=new I(this);return n.s<0&&(n.s=1),n},D.comparedTo=function(n,t){return C(this,new I(n,t))},D.decimalPlaces=D.dp=function(n,t){var s,f,o,r=this;if(n!=null)return x(n,0,U),t==null?t=q:x(t,0,8),W(new I(r),n+r.e+1,t);if(!(s=r.c))return null;if(f=((o=s.length-1)-T(this.e/k))*k,o=s[o])for(;o%10==0;o/=10,f--);return f<0&&(f=0),f},D.dividedBy=D.div=function(n,t){return _(this,new I(n,t),Z,q)},D.dividedToIntegerBy=D.idiv=function(n,t){return _(this,new I(n,t),0,1)},D.exponentiatedBy=D.pow=function(n,t){var s,f,o,r,u,a,m,E,N,S=this;if(n=new I(n),n.c&&!n.isInteger())throw Error(V+"Exponent not an integer: "+O(n));if(t!=null&&(t=new I(t)),a=n.e>14,!S.c||!S.c[0]||S.c[0]==1&&!S.e&&S.c.length==1||!n.c||!n.c[0])return N=new I(Math.pow(+O(S),a?n.s*(2-z(n)):+O(n))),t?N.mod(t):N;if(m=n.s<0,t){if(t.c?!t.c[0]:!t.s)return new I(NaN);f=!m&&S.isInteger()&&t.isInteger(),f&&(S=S.mod(t))}else{if(n.e>9&&(S.e>0||S.e<-1||(S.e==0?S.c[0]>1||a&&S.c[1]>=24e7:S.c[0]<8e13||a&&S.c[0]<=9999975e7)))return r=S.s<0&&z(n)?-0:0,S.e>-1&&(r=1/r),new I(m?1/r:r);me&&(r=d(me/k+2))}for(a?(s=new I(.5),m&&(n.s=1),E=z(n)):(o=Math.abs(+O(n)),E=o%2),N=new I(ee);;){if(E){if(N=N.times(S),!N.c)break;r?N.c.length>r&&(N.c.length=r):f&&(N=N.mod(t))}if(o){if(o=B(o/2),o===0)break;E=o%2}else if(n=n.times(s),W(n,n.e+1,1),n.e>14)E=z(n);else{if(o=+O(n),o===0)break;E=o%2}S=S.times(S),r?S.c&&S.c.length>r&&(S.c.length=r):f&&(S=S.mod(t))}return f?N:(m&&(N=ee.div(N)),t?N.mod(t):r?W(N,me,q,u):N)},D.integerValue=function(n){var t=new I(this);return n==null?n=q:x(n,0,8),W(t,t.e+1,n)},D.isEqualTo=D.eq=function(n,t){return C(this,new I(n,t))===0},D.isFinite=function(){return!!this.c},D.isGreaterThan=D.gt=function(n,t){return C(this,new I(n,t))>0},D.isGreaterThanOrEqualTo=D.gte=function(n,t){return(t=C(this,new I(n,t)))===1||t===0},D.isInteger=function(){return!!this.c&&T(this.e/k)>this.c.length-2},D.isLessThan=D.lt=function(n,t){return C(this,new I(n,t))<0},D.isLessThanOrEqualTo=D.lte=function(n,t){return(t=C(this,new I(n,t)))===-1||t===0},D.isNaN=function(){return!this.s},D.isNegative=function(){return this.s<0},D.isPositive=function(){return this.s>0},D.isZero=function(){return!!this.c&&this.c[0]==0},D.minus=function(n,t){var s,f,o,r,u=this,a=u.s;if(n=new I(n,t),t=n.s,!a||!t)return new I(NaN);if(a!=t)return n.s=-t,u.plus(n);var m=u.e/k,E=n.e/k,N=u.c,S=n.c;if(!m||!E){if(!N||!S)return N?(n.s=-t,n):new I(S?u:NaN);if(!N[0]||!S[0])return S[0]?(n.s=-t,n):new I(N[0]?u:q==3?-0:0)}if(m=T(m),E=T(E),N=N.slice(),a=m-E){for((r=a<0)?(a=-a,o=N):(E=m,o=S),o.reverse(),t=a;t--;o.push(0));o.reverse()}else for(f=(r=(a=N.length)<(t=S.length))?a:t,a=t=0;t<f;t++)if(N[t]!=S[t]){r=N[t]<S[t];break}if(r&&(o=N,N=S,S=o,n.s=-n.s),t=(f=S.length)-(s=N.length),t>0)for(;t--;N[s++]=0);for(t=w-1;f>a;){if(N[--f]<S[f]){for(s=f;s&&!N[--s];N[s]=t);--N[s],N[f]+=w}N[f]-=S[f]}for(;N[0]==0;N.splice(0,1),--E);return N[0]?Ce(n,N,E):(n.s=q==3?-1:1,n.c=[n.e=0],n)},D.modulo=D.mod=function(n,t){var s,f,o=this;return n=new I(n,t),!o.c||!n.s||n.c&&!n.c[0]?new I(NaN):!n.c||o.c&&!o.c[0]?new I(o):(he==9?(f=n.s,n.s=1,s=_(o,n,0,3),n.s=f,s.s*=f):s=_(o,n,0,he),n=o.minus(s.times(n)),!n.c[0]&&he==1&&(n.s=o.s),n)},D.multipliedBy=D.times=function(n,t){var s,f,o,r,u,a,m,E,N,S,R,j,v,ae,de,Q=this,te=Q.c,pe=(n=new I(n,t)).c;if(!te||!pe||!te[0]||!pe[0])return!Q.s||!n.s||te&&!te[0]&&!pe||pe&&!pe[0]&&!te?n.c=n.e=n.s=null:(n.s*=Q.s,!te||!pe?n.c=n.e=null:(n.c=[0],n.e=0)),n;for(f=T(Q.e/k)+T(n.e/k),n.s*=Q.s,m=te.length,S=pe.length,m<S&&(v=te,te=pe,pe=v,o=m,m=S,S=o),o=m+S,v=[];o--;v.push(0));for(ae=w,de=$,o=S;--o>=0;){for(s=0,R=pe[o]%de,j=pe[o]/de|0,u=m,r=o+u;r>o;)E=te[--u]%de,N=te[u]/de|0,a=j*E+N*R,E=R*E+a%de*de+v[r]+s,s=(E/ae|0)+(a/de|0)+j*N,v[r--]=E%ae;v[r]=s}return s?++f:v.splice(0,1),Ce(n,v,f)},D.negated=function(){var n=new I(this);return n.s=-n.s||null,n},D.plus=function(n,t){var s,f=this,o=f.s;if(n=new I(n,t),t=n.s,!o||!t)return new I(NaN);if(o!=t)return n.s=-t,f.minus(n);var r=f.e/k,u=n.e/k,a=f.c,m=n.c;if(!r||!u){if(!a||!m)return new I(o/0);if(!a[0]||!m[0])return m[0]?n:new I(a[0]?f:o*0)}if(r=T(r),u=T(u),a=a.slice(),o=r-u){for(o>0?(u=r,s=m):(o=-o,s=a),s.reverse();o--;s.push(0));s.reverse()}for(o=a.length,t=m.length,o-t<0&&(s=m,m=a,a=s,t=o),o=0;t;)o=(a[--t]=a[t]+m[t]+o)/w|0,a[t]=w===a[t]?0:a[t]%w;return o&&(a=[o].concat(a),++u),Ce(n,a,u)},D.precision=D.sd=function(n,t){var s,f,o,r=this;if(n!=null&&n!==!!n)return x(n,1,U),t==null?t=q:x(t,0,8),W(new I(r),n,t);if(!(s=r.c))return null;if(o=s.length-1,f=o*k+1,o=s[o]){for(;o%10==0;o/=10,f--);for(o=s[0];o>=10;o/=10,f++);}return n&&r.e+1>f&&(f=r.e+1),f},D.shiftedBy=function(n){return x(n,-y,y),this.times("1e"+n)},D.squareRoot=D.sqrt=function(){var n,t,s,f,o,r=this,u=r.c,a=r.s,m=r.e,E=Z+4,N=new I("0.5");if(a!==1||!u||!u[0])return new I(!a||a<0&&(!u||u[0])?NaN:u?r:1/0);if(a=Math.sqrt(+O(r)),a==0||a==1/0?(t=L(u),(t.length+m)%2==0&&(t+="0"),a=Math.sqrt(+t),m=T((m+1)/2)-(m<0||m%2),a==1/0?t="5e"+m:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+m),s=new I(t)):s=new I(a+""),s.c[0]){for(m=s.e,a=m+E,a<3&&(a=0);;)if(o=s,s=N.times(o.plus(_(r,o,E,1))),L(o.c).slice(0,a)===(t=L(s.c)).slice(0,a))if(s.e<m&&--a,t=t.slice(a-3,a+1),t=="9999"||!f&&t=="4999"){if(!f&&(W(o,o.e+Z+2,0),o.times(o).eq(r))){s=o;break}E+=4,a+=4,f=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(W(s,s.e+Z+2,1),n=!s.times(s).eq(r));break}}return W(s,s.e+Z+1,q,n)},D.toExponential=function(n,t){return n!=null&&(x(n,0,U),n++),Ie(this,n,t,1)},D.toFixed=function(n,t){return n!=null&&(x(n,0,U),n=n+this.e+1),Ie(this,n,t)},D.toFormat=function(n,t,s){var f,o=this;if(s==null)n!=null&&t&&typeof t=="object"?(s=t,t=null):n&&typeof n=="object"?(s=n,n=t=null):s=Se;else if(typeof s!="object")throw Error(V+"Argument not an object: "+s);if(f=o.toFixed(n,t),o.c){var r,u=f.split("."),a=+s.groupSize,m=+s.secondaryGroupSize,E=s.groupSeparator||"",N=u[0],S=u[1],R=o.s<0,j=R?N.slice(1):N,v=j.length;if(m&&(r=a,a=m,m=r,v-=r),a>0&&v>0){for(r=v%a||a,N=j.substr(0,r);r<v;r+=a)N+=E+j.substr(r,a);m>0&&(N+=E+j.slice(r)),R&&(N="-"+N)}f=S?N+(s.decimalSeparator||"")+((m=+s.fractionGroupSize)?S.replace(new RegExp("\\d{"+m+"}\\B","g"),"$&"+(s.fractionGroupSeparator||"")):S):N}return(s.prefix||"")+f+(s.suffix||"")},D.toFraction=function(n){var t,s,f,o,r,u,a,m,E,N,S,R,j=this,v=j.c;if(n!=null&&(a=new I(n),!a.isInteger()&&(a.c||a.s!==1)||a.lt(ee)))throw Error(V+"Argument "+(a.isInteger()?"out of range: ":"not an integer: ")+O(a));if(!v)return new I(j);for(t=new I(ee),E=s=new I(ee),f=m=new I(ee),R=L(v),r=t.e=R.length-j.e-1,t.c[0]=M[(u=r%k)<0?k+u:u],n=!n||a.comparedTo(t)>0?r>0?t:E:a,u=re,re=1/0,a=new I(R),m.c[0]=0;N=_(a,t,0,1),o=s.plus(N.times(f)),o.comparedTo(n)!=1;)s=f,f=o,E=m.plus(N.times(o=E)),m=o,t=a.minus(N.times(o=t)),a=o;return o=_(n.minus(s),f,0,1),m=m.plus(o.times(E)),s=s.plus(o.times(f)),m.s=E.s=j.s,r=r*2,S=_(E,f,r,q).minus(j).abs().comparedTo(_(m,s,r,q).minus(j).abs())<1?[E,f]:[m,s],re=u,S},D.toNumber=function(){return+O(this)},D.toPrecision=function(n,t){return n!=null&&x(n,1,U),Ie(this,n,t,2)},D.toString=function(n){var t,s=this,f=s.s,o=s.e;return o===null?f?(t="Infinity",f<0&&(t="-"+t)):t="NaN":(n==null?t=o<=ne||o>=se?K(L(s.c),o):P(L(s.c),o,"0"):n===10&&$e?(s=W(new I(s),Z+o+1,q),t=P(L(s.c),s.e,"0")):(x(n,2,Ve.length,"Base"),t=G(P(L(s.c),o,"0"),10,n,f,!0)),f<0&&s.c[0]&&(t="-"+t)),t},D.valueOf=D.toJSON=function(){return O(this)},D._isBigNumber=!0,i!=null&&I.set(i),I}function T(i){var _=i|0;return i>0||i===_?_:_-1}function L(i){for(var _,G,J=1,D=i.length,ee=i[0]+"";J<D;){for(_=i[J++]+"",G=k-_.length;G--;_="0"+_);ee+=_}for(D=ee.length;ee.charCodeAt(--D)===48;);return ee.slice(0,D+1||1)}function C(i,_){var G,J,D=i.c,ee=_.c,Z=i.s,q=_.s,ne=i.e,se=_.e;if(!Z||!q)return null;if(G=D&&!D[0],J=ee&&!ee[0],G||J)return G?J?0:-q:Z;if(Z!=q)return Z;if(G=Z<0,J=ne==se,!D||!ee)return J?0:!D^G?1:-1;if(!J)return ne>se^G?1:-1;for(q=(ne=D.length)<(se=ee.length)?ne:se,Z=0;Z<q;Z++)if(D[Z]!=ee[Z])return D[Z]>ee[Z]^G?1:-1;return ne==se?0:ne>se^G?1:-1}function x(i,_,G,J){if(i<_||i>G||i!==B(i))throw Error(V+(J||"Argument")+(typeof i=="number"?i<_||i>G?" out of range: ":" not an integer: ":" not a primitive number: ")+String(i))}function z(i){var _=i.c.length-1;return T(i.e/k)==_&&i.c[_]%2!=0}function K(i,_){return(i.length>1?i.charAt(0)+"."+i.slice(1):i)+(_<0?"e":"e+")+_}function P(i,_,G){var J,D;if(_<0){for(D=G+".";++_;D+=G);i=D+i}else if(J=i.length,++_>J){for(D=G,_-=J;--_;D+=G);i+=D}else _<J&&(i=i.slice(0,_)+"."+i.slice(_));return i}g=Y(),g.default=g.BigNumber=g,l.exports?l.exports=g:(c||(c=typeof self<"u"&&self?self:window),c.BigNumber=g)})(ys)})(Dt);var Tt=Dt.exports;(function(l){var c=Tt,g=l.exports;(function(){var p=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,d,B,V={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},h;function w(y){return p.lastIndex=0,p.test(y)?'"'+y.replace(p,function(M){var $=V[M];return typeof $=="string"?$:"\\u"+("0000"+M.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+y+'"'}function k(y,M){var $,U,Y,T,L=d,C,x=M[y],z=x!=null&&(x instanceof c||c.isBigNumber(x));switch(x&&typeof x=="object"&&typeof x.toJSON=="function"&&(x=x.toJSON(y)),typeof h=="function"&&(x=h.call(M,y,x)),typeof x){case"string":return z?x:w(x);case"number":return isFinite(x)?String(x):"null";case"boolean":case"null":case"bigint":return String(x);case"object":if(!x)return"null";if(d+=B,C=[],Object.prototype.toString.apply(x)==="[object Array]"){for(T=x.length,$=0;$<T;$+=1)C[$]=k($,x)||"null";return Y=C.length===0?"[]":d?`[
|
|
2
|
-
`+
|
|
3
|
-
`+
|
|
4
|
-
`+L+"]":"["+C.join(",")+"]",
|
|
5
|
-
`+
|
|
6
|
-
`+
|
|
7
|
-
`+L+"}":"{"+C.join(",")+"}",
|
|
8
|
-
`,r:"\r",t:" "},B,V=function(T){throw{name:"SyntaxError",message:T,at:g,text:B}},h=function(T){return T&&T!==p&&V("Expected '"+T+"' instead of '"+p+"'"),p=B.charAt(g),g+=1,p},w=function(){var T,L="";for(p==="-"&&(L="-",h("-"));p>="0"&&p<="9";)L+=p,h();if(p===".")for(L+=".";h()&&p>="0"&&p<="9";)L+=p;if(p==="e"||p==="E")for(L+=p,h(),(p==="-"||p==="+")&&(L+=p,h());p>="0"&&p<="9";)L+=p,h();if(T=+L,!isFinite(T))V("Bad number");else return Ke==null&&(Ke=Tt),L.length>15?c.storeAsString?L:c.useNativeBigInt?BigInt(L):new Ke(L):c.alwaysParseAsBig?c.useNativeBigInt?BigInt(T):new Ke(T):T},k=function(){var T,L,C="",x;if(p==='"')for(var z=g;h();){if(p==='"')return g-1>z&&(C+=B.substring(z,g-1)),h(),C;if(p==="\\"){if(g-1>z&&(C+=B.substring(z,g-1)),h(),p==="u"){for(x=0,L=0;L<4&&(T=parseInt(h(),16),!!isFinite(T));L+=1)x=x*16+T;C+=String.fromCharCode(x)}else if(typeof d[p]=="string")C+=d[p];else break;z=g}}V("Bad string")},y=function(){for(;p&&p<=" ";)h()},M=function(){switch(p){case"t":return h("t"),h("r"),h("u"),h("e"),!0;case"f":return h("f"),h("a"),h("l"),h("s"),h("e"),!1;case"n":return h("n"),h("u"),h("l"),h("l"),null}V("Unexpected '"+p+"'")},$,U=function(){var T=[];if(p==="["){if(h("["),y(),p==="]")return h("]"),T;for(;p;){if(T.push($()),y(),p==="]")return h("]"),T;h(","),y()}}V("Bad array")},Y=function(){var T,L=Object.create(null);if(p==="{"){if(h("{"),y(),p==="}")return h("}"),L;for(;p;){if(T=k(),y(),h(":"),c.strict===!0&&Object.hasOwnProperty.call(L,T)&&V('Duplicate key "'+T+'"'),Cs.test(T)===!0?c.protoAction==="error"?V("Object contains forbidden prototype property"):c.protoAction==="ignore"?$():L[T]=$():Bs.test(T)===!0?c.constructorAction==="error"?V("Object contains forbidden constructor property"):c.constructorAction==="ignore"?$():L[T]=$():L[T]=$(),y(),p==="}")return h("}"),L;h(","),y()}}V("Bad object")};return $=function(){switch(y(),p){case"{":return Y();case"[":return U();case'"':return k();case"-":return w();default:return p>="0"&&p<="9"?w():M()}},function(T,L){var C;return B=T+"",g=0,p=" ",C=$(),y(),p&&V("Syntax error"),typeof L=="function"?function x(z,K){var P,i=z[K];return i&&typeof i=="object"&&Object.keys(i).forEach(function(_){P=x(i,_),P!==void 0?i[_]=P:delete i[_]}),L.call(z,K,i)}({"":C},""):C}},Ss=bs,At=xs.stringify,Ut=Ss;Ge.exports=function(l){return{parse:Ut(l),stringify:At}},Ge.exports.parse=Ut(),Ge.exports.stringify=At;var $s=Ge.exports;const Is=ws($s)({storeAsString:!0});let zt;function Ls(l){zt=l,Me&&(Me.defaults.baseURL=l)}const Me=(()=>{const l=Zt.create({timeout:3e4,headers:{"Content-Type":"application/json"},transformResponse:[c=>{if(typeof c=="string")try{return Is.parse(c)}catch{return c}return c}]});return l.interceptors.request.use(c=>{const g=zt||void 0;g&&!c.baseURL&&(c.baseURL=g);const p=Pe(),d=yt()||"Bearer";return p&&(c.headers.Authorization=`${d} ${p}`),c},c=>Promise.reject(c)),l.interceptors.response.use(c=>{const{data:g}=c;return g.code===200||g.code===0?g.data:g.code===9121?(oe.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login",Promise.reject(new Error(g.message||"EXPIRED OR INVALID TOKEN"))):(oe.Message.error(g.message||"请求失败"),Promise.reject(new Error(g.message||"请求失败")))},c=>{var p;const{response:g}=c;if(g){const{data:d}=g;if((d==null?void 0:d.code)===9121)return oe.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login",Promise.reject(c);switch(g.status){case 401:oe.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login";break;case 403:oe.Message.error("没有权限访问");break;case 404:oe.Message.error("请求资源不存在");break;case 500:oe.Message.error("服务器错误");break;default:oe.Message.error(((p=g.data)==null?void 0:p.message)||"请求失败")}}else oe.Message.error("网络连接失败");return Promise.reject(c)}),l})(),le={get(l,c){return Me.get(l,c)},post(l,c,g){return Me.post(l,c,g)},put(l,c,g){return Me.put(l,c,g)},patch(l,c,g){return Me.patch(l,c,g)},delete(l,c){return Me.delete(l,c)},download(l,c){return Me.get(l,{...c,responseType:"blob"})}};function Ot(l){return le.post("/user/v1.0/login/by-domain",l)}function Ms(){return le.put("/user/v1.0/user/logout")}function Ft(){return le.get("/user/v1.0/user/get-me")}function Ds(l){return le.post("/user/v1.0/refresh",{refreshToken:l})}const Ts={class:"login-page"},As={class:"login-form-section"},Us={class:"form-container"},zs={class:"input-wrapper"},Os={class:"input-wrapper"},Fs={class:"form-options"},Ps={key:0},Rs={key:1},Pt=fe(e.defineComponent({__name:"index",setup(l){const c=ce.useRouter(),g=ce.useRoute(),p=e.ref(!1),d=e.ref(!1),B=e.reactive({uid:"",password:""}),V={uid:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,message:"密码长度至少6位",trigger:"blur"}]},h=e.ref(),w=async()=>{var k;try{await((k=h.value)==null?void 0:k.validate()),p.value=!0;const y=await Ot({appId:Ue(),clientId:Je(),uid:B.uid,password:B.password,code:!0});at(y),oe.Message.success("登录成功");const M=g.query.redirect||"/";c.push(M)}catch(y){console.error("登录失败:",y)}finally{p.value=!1}};return(k,y)=>(e.openBlock(),e.createElementBlock("div",Ts,[y[10]||(y[10]=e.createStaticVNode('<div class="login-brand" data-v-102cb5d3><div class="brand-content" data-v-102cb5d3><div class="brand-logo" data-v-102cb5d3><div class="logo-icon" data-v-102cb5d3><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-102cb5d3><rect width="48" height="48" rx="12" fill="currentColor" data-v-102cb5d3></rect><path d="M14 24L20 30L34 16" stroke="white" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" data-v-102cb5d3></path></svg></div><span class="logo-text" data-v-102cb5d3>XTO</span></div><div class="brand-slogan" data-v-102cb5d3><h1 data-v-102cb5d3>企业级后台管理解决方案</h1><p data-v-102cb5d3>开箱即用的中后台前端/设计解决方案</p></div><div class="brand-features" data-v-102cb5d3><div class="feature-item" data-v-102cb5d3><div class="feature-icon" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-102cb5d3><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" data-v-102cb5d3></path></svg></div><div class="feature-text" data-v-102cb5d3><h4 data-v-102cb5d3>高性能</h4><p data-v-102cb5d3>极致的渲染性能与响应速度</p></div></div><div class="feature-item" data-v-102cb5d3><div class="feature-icon" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-102cb5d3><rect x="3" y="3" width="18" height="18" rx="2" data-v-102cb5d3></rect><path d="M9 9h6M9 12h6M9 15h4" data-v-102cb5d3></path></svg></div><div class="feature-text" data-v-102cb5d3><h4 data-v-102cb5d3>丰富组件</h4><p data-v-102cb5d3>60+ 高质量业务组件</p></div></div><div class="feature-item" data-v-102cb5d3><div class="feature-icon" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-102cb5d3><circle cx="12" cy="12" r="10" data-v-102cb5d3></circle><path d="M12 6v6l4 2" data-v-102cb5d3></path></svg></div><div class="feature-text" data-v-102cb5d3><h4 data-v-102cb5d3>持续更新</h4><p data-v-102cb5d3>活跃的社区与快速迭代</p></div></div></div><div class="brand-decoration" data-v-102cb5d3><div class="decoration-line" data-v-102cb5d3></div><div class="decoration-dots" data-v-102cb5d3><span data-v-102cb5d3></span><span data-v-102cb5d3></span><span data-v-102cb5d3></span></div></div></div><div class="brand-bg" data-v-102cb5d3><div class="bg-grid" data-v-102cb5d3></div><div class="bg-glow" data-v-102cb5d3></div><div class="bg-pattern" data-v-102cb5d3></div></div></div>',1)),e.createElementVNode("div",As,[e.createElementVNode("div",Us,[y[7]||(y[7]=e.createElementVNode("div",{class:"form-header"},[e.createElementVNode("h2",null,"欢迎登录"),e.createElementVNode("p",null,"请输入您的账户信息")],-1)),e.createVNode(e.unref(F.Form),{ref_key:"formRef",ref:h,model:B,rules:V,class:"login-form","label-width":"0"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.FormItem),{prop:"uid"},{default:e.withCtx(()=>[e.createElementVNode("div",zs,[y[3]||(y[3]=e.createElementVNode("label",{class:"input-label"},"用户名",-1)),e.createVNode(e.unref(F.Input),{modelValue:B.uid,"onUpdate:modelValue":y[0]||(y[0]=M=>B.uid=M),placeholder:"请输入用户名",size:"large"},{prefix:e.withCtx(()=>[e.createVNode(e.unref(A.Icon),{name:"user",size:18})]),_:1},8,["modelValue"])])]),_:1}),e.createVNode(e.unref(F.FormItem),{prop:"password"},{default:e.withCtx(()=>[e.createElementVNode("div",Os,[y[4]||(y[4]=e.createElementVNode("label",{class:"input-label"},"密码",-1)),e.createVNode(e.unref(F.Input),{modelValue:B.password,"onUpdate:modelValue":y[1]||(y[1]=M=>B.password=M),type:"password",placeholder:"请输入密码",size:"large","show-password":"",onKeyup:e.withKeys(w,["enter"])},{prefix:e.withCtx(()=>[e.createVNode(e.unref(A.Icon),{name:"lock",size:18})]),_:1},8,["modelValue"])])]),_:1}),e.createElementVNode("div",Fs,[e.createVNode(e.unref(F.Checkbox),{modelValue:d.value,"onUpdate:modelValue":y[2]||(y[2]=M=>d.value=M)},{default:e.withCtx(()=>[...y[5]||(y[5]=[e.createTextVNode("记住我",-1)])]),_:1},8,["modelValue"]),y[6]||(y[6]=e.createElementVNode("a",{href:"#",class:"forgot-link"},"忘记密码?",-1))]),e.createVNode(e.unref(F.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",size:"large",loading:p.value,class:"login-btn",onClick:w},{default:e.withCtx(()=>[p.value?(e.openBlock(),e.createElementBlock("span",Rs,"登录中...")):(e.openBlock(),e.createElementBlock("span",Ps,"登 录"))]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"]),y[8]||(y[8]=e.createStaticVNode('<div class="form-footer" data-v-102cb5d3><p data-v-102cb5d3>其他登录方式</p><div class="social-login" data-v-102cb5d3><button class="social-btn" title="企业微信" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="currentColor" data-v-102cb5d3><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z" data-v-102cb5d3></path></svg></button><button class="social-btn" title="钉钉" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="currentColor" data-v-102cb5d3><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19-.14.75-.42 1-.68 1.03-.58.05-1.02-.38-1.58-.75-.88-.58-1.38-.94-2.23-1.5-.99-.65-.35-1.01.22-1.59.15-.15 2.71-2.48 2.76-2.69a.2.2 0 00-.05-.18c-.06-.05-.14-.03-.21-.02-.09.02-1.49.95-4.22 2.79-.4.27-.76.41-1.08.4-.36-.01-1.04-.2-1.55-.37-.63-.2-1.12-.31-1.08-.66.02-.18.27-.36.74-.55 2.92-1.27 4.86-2.11 5.83-2.51 2.78-1.16 3.35-1.36 3.73-1.36.08 0 .27.02.39.12.1.08.13.19.14.27-.01.06.01.24 0 .38z" data-v-102cb5d3></path></svg></button><button class="social-btn" title="飞书" data-v-102cb5d3><svg viewBox="0 0 24 24" fill="currentColor" data-v-102cb5d3><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z" data-v-102cb5d3></path></svg></button></div></div>',1))]),y[9]||(y[9]=e.createElementVNode("div",{class:"copyright"},[e.createElementVNode("p",null,"© 2024 XTO Team. All rights reserved.")],-1))])]))}}),[["__scopeId","data-v-102cb5d3"]]),qs=Object.freeze(Object.defineProperty({__proto__:null,default:Pt},Symbol.toStringTag,{value:"Module"})),js={class:"error-page"},Hs={class:"error-container"},Gs={class:"error-content"},Ks={class:"error-actions"},Rt=fe(e.defineComponent({__name:"404",setup(l){const c=ce.useRouter(),g=()=>{c.push("/")};return(p,d)=>(e.openBlock(),e.createElementBlock("div",js,[e.createElementVNode("div",Hs,[d[7]||(d[7]=e.createElementVNode("div",{class:"error-bg"},[e.createElementVNode("div",{class:"bg-circle circle-1"}),e.createElementVNode("div",{class:"bg-circle circle-2"}),e.createElementVNode("div",{class:"bg-circle circle-3"})],-1)),e.createElementVNode("div",Gs,[d[5]||(d[5]=e.createStaticVNode('<div class="error-code" data-v-1b083153><span class="code-digit" data-v-1b083153>4</span><span class="code-zero" data-v-1b083153><span class="zero-inner" data-v-1b083153>0</span></span><span class="code-digit" data-v-1b083153>4</span></div><div class="error-illustration" data-v-1b083153><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-1b083153><rect x="40" y="20" width="120" height="80" rx="8" fill="var(--color-fill)" stroke="var(--color-border)" stroke-width="2" data-v-1b083153></rect><rect x="50" y="30" width="100" height="60" rx="4" fill="var(--bg-color)" data-v-1b083153></rect><line x1="60" y1="45" x2="140" y2="45" stroke="var(--color-border-light)" stroke-width="2" data-v-1b083153></line><line x1="60" y1="55" x2="120" y2="55" stroke="var(--color-border-light)" stroke-width="2" data-v-1b083153></line><line x1="60" y1="65" x2="100" y2="65" stroke="var(--color-border-light)" stroke-width="2" data-v-1b083153></line><text x="100" y="75" text-anchor="middle" fill="var(--color-primary)" font-size="24" font-weight="600" data-v-1b083153>?</text><circle cx="150" cy="35" r="12" stroke="var(--color-primary)" stroke-width="2" fill="none" data-v-1b083153></circle><line x1="158" y1="43" x2="168" y2="53" stroke="var(--color-primary)" stroke-width="2" stroke-linecap="round" data-v-1b083153></line></svg></div><h1 class="error-title" data-v-1b083153>页面不存在</h1><p class="error-desc" data-v-1b083153>抱歉,您访问的页面不存在或已被删除</p>',4)),e.createElementVNode("div",Ks,[e.createVNode(e.unref(A.Button),{type:"primary",size:"large",onClick:g},{icon:e.withCtx(()=>[...d[1]||(d[1]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z"}),e.createElementVNode("polyline",{points:"9,22 9,12 15,12 15,22"})],-1)])]),default:e.withCtx(()=>[d[2]||(d[2]=e.createTextVNode(" 返回首页 ",-1))]),_:1}),e.createVNode(e.unref(A.Button),{size:"large",onClick:d[0]||(d[0]=B=>e.unref(c).go(-1))},{icon:e.withCtx(()=>[...d[3]||(d[3]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M19 12H5M12 19l-7-7 7-7"})],-1)])]),default:e.withCtx(()=>[d[4]||(d[4]=e.createTextVNode(" 返回上一页 ",-1))]),_:1})]),d[6]||(d[6]=e.createElementVNode("div",{class:"error-tip"},[e.createElementVNode("p",null,"您可以尝试:"),e.createElementVNode("ul",null,[e.createElementVNode("li",null,"检查您输入的网址是否正确"),e.createElementVNode("li",null,"返回首页重新浏览"),e.createElementVNode("li",null,"联系管理员反馈问题")])],-1))])])]))}}),[["__scopeId","data-v-1b083153"]]),qt=Object.freeze(Object.defineProperty({__proto__:null,default:Rt},Symbol.toStringTag,{value:"Module"})),Ws={class:"error-page"},Xs={class:"error-container"},Ys={class:"error-content"},Js={class:"error-actions"},Zs=fe(e.defineComponent({__name:"403",setup(l){const c=ce.useRouter(),g=()=>{c.push("/")};return(p,d)=>(e.openBlock(),e.createElementBlock("div",Ws,[e.createElementVNode("div",Xs,[d[7]||(d[7]=e.createElementVNode("div",{class:"error-bg"},[e.createElementVNode("div",{class:"bg-circle circle-1"}),e.createElementVNode("div",{class:"bg-circle circle-2"}),e.createElementVNode("div",{class:"bg-circle circle-3"})],-1)),e.createElementVNode("div",Ys,[d[5]||(d[5]=e.createStaticVNode('<div class="error-code" data-v-d167f981><span class="code-digit" data-v-d167f981>4</span><span class="code-zero warning" data-v-d167f981><span class="zero-inner" data-v-d167f981>0</span></span><span class="code-digit" data-v-d167f981>3</span></div><div class="error-illustration" data-v-d167f981><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-d167f981><path d="M100 15 L150 35 L150 70 C150 95 100 110 100 110 C100 110 50 95 50 70 L50 35 Z" fill="var(--color-warning-lighter)" stroke="var(--color-warning)" stroke-width="2" data-v-d167f981></path><rect x="85" y="55" width="30" height="25" rx="4" fill="var(--color-warning)" data-v-d167f981></rect><path d="M92 55 V48 A8 8 0 0 1 108 48 V55" fill="none" stroke="var(--color-warning)" stroke-width="3" data-v-d167f981></path><circle cx="100" cy="67" r="6" fill="none" stroke="#fff" stroke-width="2" data-v-d167f981></circle><line x1="96" y1="63" x2="104" y2="71" stroke="#fff" stroke-width="2" data-v-d167f981></line></svg></div><h1 class="error-title" data-v-d167f981>无访问权限</h1><p class="error-desc" data-v-d167f981>抱歉,您没有权限访问此页面,请联系管理员获取权限</p>',4)),e.createElementVNode("div",Js,[e.createVNode(e.unref(A.Button),{type:"primary",size:"large",onClick:g},{icon:e.withCtx(()=>[...d[1]||(d[1]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z"}),e.createElementVNode("polyline",{points:"9,22 9,12 15,12 15,22"})],-1)])]),default:e.withCtx(()=>[d[2]||(d[2]=e.createTextVNode(" 返回首页 ",-1))]),_:1}),e.createVNode(e.unref(A.Button),{size:"large",onClick:d[0]||(d[0]=B=>e.unref(c).go(-1))},{icon:e.withCtx(()=>[...d[3]||(d[3]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M19 12H5M12 19l-7-7 7-7"})],-1)])]),default:e.withCtx(()=>[d[4]||(d[4]=e.createTextVNode(" 返回上一页 ",-1))]),_:1})]),d[6]||(d[6]=e.createElementVNode("div",{class:"error-tip"},[e.createElementVNode("p",null,"可能的原因:"),e.createElementVNode("ul",null,[e.createElementVNode("li",null,"您的账号权限不足"),e.createElementVNode("li",null,"该页面需要特定角色才能访问"),e.createElementVNode("li",null,"您的登录状态已过期")])],-1))])])]))}}),[["__scopeId","data-v-d167f981"]]);function Qs(){const l=be(),c=ke(),g=Te(),p=e.computed(()=>c.userName||""),d=e.computed(()=>c.userInfo),B=e.computed(()=>l.appName),V=e.computed(()=>g.isLoggedIn),h=e.computed(()=>l.isDark),w=e.computed(()=>l.theme),k=e.computed(()=>l.isCollapsed),y=e.computed(()=>l.layout);return{userName:p,userInfo:d,appName:B,isLoggedIn:V,isDark:h,theme:w,isCollapsed:k,layout:y,toggleTheme:()=>{l.toggleTheme()},toggleCollapse:()=>{l.toggleCollapse()}}}function vs(){const l=ke();return{isLoggedIn:e.computed(()=>l.isLoggedIn)}}function er(l,c={}){const{rules:g,onSubmit:p}=c,d=e.ref(),B=e.reactive({...l}),V=e.ref(!1),h=e.ref(!1),w=e.ref(!1),k=()=>{$(),w.value=!1,h.value=!0},y=Y=>{Object.assign(B,Y),w.value=!0,h.value=!0},M=()=>{h.value=!1,$()},$=()=>{var Y;Object.keys(l).forEach(T=>{B[T]=l[T]}),(Y=d.value)==null||Y.resetFields()};return{formRef:d,formData:B,rules:g,loading:V,visible:h,isEdit:w,openAdd:k,openEdit:y,close:M,resetForm:$,handleSubmit:async()=>{var Y;try{await((Y=d.value)==null?void 0:Y.validate()),V.value=!0,await(p==null?void 0:p(B)),M()}catch(T){console.error(T)}finally{V.value=!1}}}}function tr(l){const{fetchData:c,defaultPageSize:g=10}=l,p=e.ref(!1),d=e.ref([]),B=e.ref(0),V=e.ref(1),h=e.ref(g),w=e.reactive({}),k=async()=>{p.value=!0;try{const L={...w,page:V.value,pageSize:h.value},C=await c(L);d.value=C.list,B.value=C.total}catch(L){console.error(L)}finally{p.value=!1}},y=()=>{V.value=1,k()},M=()=>{Object.keys(w).forEach(L=>{w[L]=void 0}),V.value=1,k()},$=L=>{V.value=L,k()},U=L=>{h.value=L,V.value=1,k()},Y=()=>{k()},T=e.computed(()=>({current:V.value,pageSize:h.value,total:B.value}));return{loading:p,data:d,total:B,currentPage:V,pageSize:h,searchParams:w,pagination:T,getData:k,handleSearch:y,handleReset:M,handlePageChange:$,handleSizeChange:U,refresh:Y}}const We=Ae.defineStore("locale",()=>{const l=H.get("locale")||"zh-CN",c=Ye.createLocaleProvider(l),g=e.ref(l),p=Ye.getSupportedLocales(),{t:d,messages:B,setLocale:V,mergeMessages:h}=Ye.useLocale(),w=e.computed(()=>{const $=p.find(U=>U.code===g.value);return($==null?void 0:$.name)||g.value});return{locale:g,localeName:w,locales:p,messages:B,t:d,changeLocale:$=>{g.value=$,V($),H.set("locale",$),c.setLocale($)},addMessages:$=>{h($)},initLocale:()=>{V(l)},provider:c}}),nr=Object.freeze(Object.defineProperty({__proto__:null,useLocaleStore:We},Symbol.toStringTag,{value:"Module"}));function or(){const l=We();return{locale:l.locale,localeName:l.localeName,locales:l.locales,t:l.t,messages:l.messages,setLocale:l.changeLocale,addMessages:l.addMessages}}function lr(){return We().t}function sr(l){const c=ke(),g=xe();return c.isLoggedIn?g.hasPermission(l):!1}function rr(l){return ke().isLoggedIn}function ar(){return!0}const mt=[{path:"/login",name:"Login",component:()=>Promise.resolve().then(()=>qs),meta:{title:"登录",hidden:!0}}],pt={path:"/",name:"Layout",component:()=>Promise.resolve().then(()=>fs),redirect:"/dashboard",children:[{path:"/dashboard",name:"Dashboard",component:()=>Promise.resolve().then(()=>Wt),meta:{title:"仪表盘",icon:"dashboard",keepAlive:!0,affix:!0}},{path:"/system/user",name:"SystemUser",component:()=>Promise.resolve().then(()=>Xt),meta:{title:"用户管理",icon:"user",keepAlive:!0}},{path:"/system/role",name:"SystemRole",component:()=>Promise.resolve().then(()=>Yt),meta:{title:"角色管理",icon:"role",keepAlive:!0}},{path:"/system/menu",name:"SystemMenu",component:()=>Promise.resolve().then(()=>Jt),meta:{title:"菜单管理",icon:"menu",keepAlive:!0}},{path:"/:pathMatch(.*)*",name:"CatchAll",component:()=>Promise.resolve().then(()=>qt),meta:{title:"404",hidden:!0}}]},ir=[{path:"/dashboard",name:"Dashboard",component:()=>Promise.resolve().then(()=>Wt),meta:{title:"仪表盘",icon:"dashboard",keepAlive:!0,affix:!0}},{path:"/system",name:"System",redirect:"/system/user",meta:{title:"系统管理",icon:"setting"},children:[{path:"user",name:"SystemUser",component:()=>Promise.resolve().then(()=>Xt),meta:{title:"用户管理",icon:"user",keepAlive:!0}},{path:"role",name:"SystemRole",component:()=>Promise.resolve().then(()=>Yt),meta:{title:"角色管理",icon:"role",keepAlive:!0}},{path:"menu",name:"SystemMenu",component:()=>Promise.resolve().then(()=>Jt),meta:{title:"菜单管理",icon:"menu",keepAlive:!0}}]}],jt=[{menuCode:"dashboard",menuName:"仪表盘",menuUrl:"/dashboard",icon:"dashboard",closable:!0,isDefault:!0,isOut:!1},{menuCode:"system",menuName:"系统管理",menuUrl:"/system",icon:"setting",closable:!1,isDefault:!1,isOut:!1,children:[{menuCode:"system_user",menuName:"用户管理",menuUrl:"/system/user",icon:"user",closable:!0,isDefault:!1,isOut:!1},{menuCode:"system_role",menuName:"角色管理",menuUrl:"/system/role",icon:"role",closable:!0,isDefault:!1,isOut:!1},{menuCode:"system_menu",menuName:"菜单管理",menuUrl:"/system/menu",icon:"menu",closable:!0,isDefault:!1,isOut:!1}]}],ft=ce.createRouter({history:ce.createWebHistory(),routes:[...mt,pt],scrollBehavior:()=>({left:0,top:0})}),cr=["/login"];ft.beforeEach(async(l,c,g)=>{const p=be();if(p.initTheme(),it())if(l.path==="/login")g({path:"/"});else{const d=ke();d.isLoggedIn||(d.setUserInfo({appId:Ue(),userId:"1",userName:"管理员",departmentName:"技术部",email:"admin@example.com",mobilePhone:"13800138000",positionName:"管理员",avatar:""}),xe().setMenuList(jt)),l.name&&l.meta.keepAlive&&p.addCachedView(l.name),g()}else cr.includes(l.path)?g():g("/login")});function dr(){const l=ce.createRouter({history:ce.createWebHistory(),routes:[...mt,pt]});ft.matcher=l.matcher}function mr(l,c={}){const g=c.indexPath||"/dashboard",p={path:"/:pathMatch(.*)*",name:"CatchAll",component:()=>Promise.resolve().then(()=>qt),meta:{title:"404"}};return{path:"/",name:"Layout",component:dt,redirect:g,children:[...l,p]}}function pr(l,c={}){return ce.createRouter({history:ce.createWebHistory(c.base),routes:l,scrollBehavior:()=>({left:0,top:0})})}function fr(l){return le.get("/role/list",{params:l})}function ur(l){return le.get(`/role/${l}`)}function hr(l){return le.post("/role",l)}function gr(l,c){return le.put(`/role/${l}`,c)}function Nr(l){return le.delete(`/role/${l}`)}function _r(l,c){return le.patch(`/role/${l}/status`,{status:c})}function Er(){return le.get("/user/v1.0/menu/list")}function Ht(l){const c=l||Ue();return le.get(`/user/v1.0/menu/get-menu?appId=${c}`)}function Vr(l){return le.post("/menu",l)}function kr(l,c){return le.put(`/menu/${l}`,c)}function yr(l){return le.delete(`/menu/${l}`)}const wr=["/login","/404","/403"];function xr(l,c={}){const g=c.whiteList||wr,p=c.loginPath||"/login",d=c.homePath||"/";l.beforeEach(async(B,V,h)=>{const w=be(),k=ke(),y=xe();if(w.initTheme(),Pe())if(B.path===p)h({path:d});else if(k.isLoggedIn)B.name&&B.meta.keepAlive&&w.addCachedView(B.name),h();else try{if(c.fetchUserInfo){const $=await c.fetchUserInfo();k.setUserInfo($)}else{const $=await Ft();k.setUserInfo($)}if(c.fetchMenu){const $=await c.fetchMenu();y.setMenuList($)}else{const $=await Ht(c.appId);y.setMenuList($)}c.onLoginSuccess&&c.onLoginSuccess(),B.name&&B.meta.keepAlive&&w.addCachedView(B.name),h({...B,replace:!0})}catch($){console.error("获取用户信息失败:",$),k.clearUserInfo(),y.clearMenu(),De(),h({path:p,query:{redirect:B.fullPath}})}else g.includes(B.path)?h():h({path:p,query:{redirect:B.fullPath}})}),l.afterEach(()=>{})}function Cr(l){return le.get("/user/list",{params:l})}function Br(l){return le.get(`/user/${l}`)}function br(l){return le.post("/user",l)}function Sr(l,c){return le.put(`/user/${l}`,c)}function $r(l){return le.delete(`/user/${l}`)}function Ir(l){return le.post("/user/batch-delete",{ids:l})}function Lr(l,c){return le.patch(`/user/${l}/status`,{status:c})}function Mr(l){return le.post(`/user/${l}/reset-password`)}var X=(l=>(l[l.ENABLED=1]="ENABLED",l[l.DISABLED=0]="DISABLED",l))(X||{}),Gt=(l=>(l[l.UNKNOWN=0]="UNKNOWN",l[l.MALE=1]="MALE",l[l.FEMALE=2]="FEMALE",l))(Gt||{}),_e=(l=>(l[l.DIRECTORY=0]="DIRECTORY",l[l.MENU=1]="MENU",l[l.BUTTON=2]="BUTTON",l))(_e||{});const Dr={1:"启用",0:"禁用"},Tr={0:"未知",1:"男",2:"女"},Ar={0:"目录",1:"菜单",2:"按钮"},ut=[{label:"启用",value:1},{label:"禁用",value:0}],Ur=[{label:"未知",value:0},{label:"男",value:1},{label:"女",value:2}],Kt=[{label:"目录",value:0},{label:"菜单",value:1},{label:"按钮",value:2}],zr={mounted(l,c){var V,h;const g=ke(),p=xe();if(!g.isLoggedIn){(V=l.parentNode)==null||V.removeChild(l);return}const d=c.value,B=Array.isArray(d)?d:[d];p.hasPermission(B)||(h=l.parentNode)==null||h.removeChild(l)}};function Or(l){return Nt({appId:l.appId,clientId:l.clientId,apiBaseUrl:l.apiBaseUrl}),l.locale&&Promise.resolve().then(()=>nr).then(({useLocaleStore:c})=>{c().changeLocale(l.locale)}),{config:{appName:l.appName||"XTO App",appId:Ue(),clientId:Je(),apiBaseUrl:_t(),indexPath:l.indexPath||"/dashboard",loginPath:l.loginPath||"/login",locale:l.locale||"zh-CN"}}}const Fr={class:"dashboard"},Pr={class:"stats-section"},Rr={class:"stat-content"},qr={class:"stat-title"},jr={key:0,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Hr={key:1,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Gr={class:"main-section"},Kr={class:"quick-section"},Wr={class:"quick-grid"},Xr={class:"quick-icon"},Yr={class:"quick-info"},Jr={class:"quick-title"},Zr={class:"quick-desc"},Qr={class:"activity-section"},vr={class:"activity-list"},ea={class:"activity-content"},ta={class:"activity-main"},na={class:"activity-user"},oa={class:"activity-action"},la={class:"activity-time"},sa={class:"system-section"},ra={class:"system-grid"},aa={class:"system-info-list"},ia={class:"info-label"},ca={class:"info-value"},da={class:"system-status"},ma={class:"status-item"},pa={class:"status-item"},fa={class:"status-item"},Wt=Object.freeze(Object.defineProperty({__proto__:null,default:fe(e.defineComponent({__name:"index",setup(l){const c=e.ref([{title:"用户总数",value:1234,icon:"👥",color:"#1677ff",trend:"+12.5%",trendUp:!0},{title:"今日访问",value:567,icon:"👀",color:"#52c41a",trend:"+8.2%",trendUp:!0},{title:"订单数量",value:890,icon:"📦",color:"#faad14",trend:"-3.1%",trendUp:!1},{title:"销售金额",value:123456,icon:"💰",color:"#ff4d4f",trend:"+15.8%",trendUp:!0}]),g=e.ref([{user:"张三",action:"登录系统",time:"2分钟前",type:"success",avatar:"张"},{user:"李四",action:"修改了用户信息",time:"5分钟前",type:"warning",avatar:"李"},{user:"王五",action:"创建了新订单",time:"10分钟前",type:"info",avatar:"王"},{user:"赵六",action:"删除了测试数据",time:"30分钟前",type:"danger",avatar:"赵"},{user:"钱七",action:"更新了系统配置",time:"1小时前",type:"primary",avatar:"钱"}]),p=e.ref([{title:"用户管理",path:"/system/user",icon:"👤",desc:"管理系统用户"},{title:"角色管理",path:"/system/role",icon:"👥",desc:"角色权限配置"},{title:"菜单管理",path:"/system/menu",icon:"📋",desc:"菜单路由管理"},{title:"系统设置",path:"/system",icon:"⚙️",desc:"系统参数配置"}]),d=e.ref([{label:"系统版本",value:"v1.0.0"},{label:"Vue 版本",value:"3.4.21"},{label:"构建工具",value:"Vite 5"},{label:"UI 组件库",value:"XTO UI"}]);return(B,V)=>{const h=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Fr,[e.createElementVNode("div",Pr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.title,class:"stat-card"},[e.createElementVNode("div",{class:"stat-icon",style:e.normalizeStyle({background:`linear-gradient(135deg, ${w.color}20 0%, ${w.color}10 100%)`})},[e.createElementVNode("span",null,e.toDisplayString(w.icon),1)],4),e.createElementVNode("div",Rr,[e.createElementVNode("div",qr,e.toDisplayString(w.title),1),e.createElementVNode("div",{class:"stat-value",style:e.normalizeStyle({color:w.color})},e.toDisplayString(w.value.toLocaleString()),5),e.createElementVNode("div",{class:e.normalizeClass(["stat-trend",{up:w.trendUp,down:!w.trendUp}])},[w.trendUp?(e.openBlock(),e.createElementBlock("svg",jr,[...V[0]||(V[0]=[e.createElementVNode("path",{d:"M7 17l5-5 5 5M7 7l5 5 5-5"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",Hr,[...V[1]||(V[1]=[e.createElementVNode("path",{d:"M7 7l5 5 5-5M7 17l5-5 5 5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(w.trend),1)],2)]),e.createElementVNode("div",{class:"stat-decoration",style:e.normalizeStyle({background:`linear-gradient(135deg, ${w.color}08 0%, transparent 100%)`})},null,4)]))),128))]),e.createElementVNode("div",Gr,[e.createElementVNode("div",Kr,[V[3]||(V[3]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"快捷入口"),e.createElementVNode("span",{class:"section-badge"},"4 个入口")],-1)),e.createElementVNode("div",Wr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,w=>(e.openBlock(),e.createBlock(h,{key:w.path,to:w.path,class:"quick-card"},{default:e.withCtx(()=>[e.createElementVNode("div",Xr,e.toDisplayString(w.icon),1),e.createElementVNode("div",Yr,[e.createElementVNode("div",Jr,e.toDisplayString(w.title),1),e.createElementVNode("div",Zr,e.toDisplayString(w.desc),1)]),V[2]||(V[2]=e.createElementVNode("div",{class:"quick-arrow"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M9 18l6-6-6-6"})])],-1))]),_:2},1032,["to"]))),128))])]),e.createElementVNode("div",Qr,[V[4]||(V[4]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"最近活动"),e.createElementVNode("a",{href:"#",class:"section-link"},"查看全部")],-1)),e.createElementVNode("div",vr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(w,k)=>(e.openBlock(),e.createElementBlock("div",{key:k,class:"activity-item"},[e.createElementVNode("div",{class:e.normalizeClass(["activity-avatar",w.type])},e.toDisplayString(w.avatar),3),e.createElementVNode("div",ea,[e.createElementVNode("div",ta,[e.createElementVNode("span",na,e.toDisplayString(w.user),1),e.createElementVNode("span",oa,e.toDisplayString(w.action),1)]),e.createElementVNode("div",la,e.toDisplayString(w.time),1)]),e.createElementVNode("div",{class:e.normalizeClass(["activity-dot",w.type])},null,2)]))),128))])])]),e.createElementVNode("div",sa,[V[8]||(V[8]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"系统信息")],-1)),e.createElementVNode("div",ra,[e.createElementVNode("div",aa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.label,class:"info-item"},[e.createElementVNode("span",ia,e.toDisplayString(w.label),1),e.createElementVNode("span",ca,e.toDisplayString(w.value),1)]))),128))]),e.createElementVNode("div",da,[e.createElementVNode("div",ma,[V[5]||(V[5]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"服务器状态"),e.createElementVNode("span",{class:"status-value"},"75%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:75,status:"success"})]),e.createElementVNode("div",pa,[V[6]||(V[6]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"内存使用"),e.createElementVNode("span",{class:"status-value"},"45%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:45})]),e.createElementVNode("div",fa,[V[7]||(V[7]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"CPU 使用率"),e.createElementVNode("span",{class:"status-value"},"32%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:32})])])])])])}}}),[["__scopeId","data-v-545d4c27"]])},Symbol.toStringTag,{value:"Module"})),ua={class:"user-page"},ha={class:"search-section"},ga={class:"table-section"},Na={class:"table-toolbar"},_a={class:"toolbar-left"},Ea={class:"toolbar-right"},Va={class:"table-count"},ka={class:"table-wrapper"},ya={class:"data-table"},wa={key:0},xa={key:1},Ca={class:"col-id"},Ba={class:"id-badge"},ba={class:"col-user"},Sa={class:"user-info"},$a={class:"user-avatar"},Ia={class:"user-detail"},La={class:"user-nickname"},Ma={class:"user-username"},Da={class:"col-contact"},Ta={class:"contact-info"},Aa={class:"contact-email"},Ua={class:"contact-phone"},za={class:"col-roles"},Oa={class:"role-tags"},Fa={class:"col-status"},Pa={class:"status-switch"},Ra={class:"col-time"},qa={class:"time-text"},ja={class:"col-actions"},Ha={class:"pagination-wrapper"},Ga={class:"status-field"},Ka={class:"status-label"},Xt=Object.freeze(Object.defineProperty({__proto__:null,default:fe(e.defineComponent({__name:"index",setup(l){const c=[{id:1,username:"admin",nickname:"管理员",email:"admin@example.com",phone:"13800138001",status:X.ENABLED,roles:["admin"],createTime:"2024-01-01 10:00:00"},{id:2,username:"zhangsan",nickname:"张三",email:"zhangsan@example.com",phone:"13800138002",status:X.ENABLED,roles:["editor"],createTime:"2024-01-02 10:00:00"},{id:3,username:"lisi",nickname:"李四",email:"lisi@example.com",phone:"13800138003",status:X.DISABLED,roles:["viewer"],createTime:"2024-01-03 10:00:00"},{id:4,username:"wangwu",nickname:"王五",email:"wangwu@example.com",phone:"13800138004",status:X.ENABLED,roles:["editor"],createTime:"2024-01-04 10:00:00"},{id:5,username:"zhaoliu",nickname:"赵六",email:"zhaoliu@example.com",phone:"13800138005",status:X.ENABLED,roles:["viewer"],createTime:"2024-01-05 10:00:00"}],g=e.ref(!1),p=e.ref([]),d=e.ref(0),B=e.ref(1),V=e.ref(10),h=e.reactive({keyword:"",status:void 0}),w=e.ref(!1),k=e.computed(()=>y.id?"编辑用户":"新增用户"),y=e.reactive({id:0,username:"",nickname:"",email:"",phone:"",status:X.ENABLED,roles:[]}),M={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],nickname:[{required:!0,message:"请输入昵称",trigger:"blur"}],email:[{required:!0,message:"请输入邮箱",trigger:"blur"},{type:"email",message:"请输入正确的邮箱格式",trigger:"blur"}]},$=e.ref(),U=()=>{g.value=!0,setTimeout(()=>{let P=[...c];h.keyword&&(P=P.filter(i=>i.username.includes(h.keyword)||i.nickname.includes(h.keyword))),h.status!==void 0&&(P=P.filter(i=>i.status===h.status)),d.value=P.length,p.value=P.slice((B.value-1)*V.value,B.value*V.value),g.value=!1},300)},Y=()=>{B.value=1,U()},T=()=>{h.keyword="",h.status=void 0,B.value=1,U()},L=()=>{Object.assign(y,{id:0,username:"",nickname:"",email:"",phone:"",status:X.ENABLED,roles:[]}),w.value=!0},C=P=>{Object.assign(y,P),w.value=!0},x=P=>{oe.Message.success("删除成功"),U()},z=async()=>{var P;try{await((P=$.value)==null?void 0:P.validate()),oe.Message.success(y.id?"编辑成功":"新增成功"),w.value=!1,U()}catch(i){console.error(i)}},K=P=>{oe.Message.success(`已${P.status===X.ENABLED?"启用":"禁用"}用户 ${P.username}`)};return e.onMounted(()=>{U()}),(P,i)=>(e.openBlock(),e.createElementBlock("div",ua,[e.createElementVNode("div",ha,[e.createVNode(e.unref(F.Form),{model:h,inline:"",class:"search-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.FormItem),{label:"关键词"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:h.keyword,"onUpdate:modelValue":i[0]||(i[0]=_=>h.keyword=_),placeholder:"用户名/昵称",clearable:"",onKeyup:e.withKeys(Y,["enter"])},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Select),{modelValue:h.status,"onUpdate:modelValue":i[1]||(i[1]=_=>h.status=_),options:e.unref(ut),placeholder:"请选择",clearable:""},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(F.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",onClick:Y},{icon:e.withCtx(()=>[...i[11]||(i[11]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"M21 21l-4.35-4.35"})],-1)])]),default:e.withCtx(()=>[i[12]||(i[12]=e.createTextVNode(" 搜索 ",-1))]),_:1}),e.createVNode(e.unref(A.Button),{onClick:T},{icon:e.withCtx(()=>[...i[13]||(i[13]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 12a9 9 0 109-9 9.75 9.75 0 00-6.74 2.74L3 8"}),e.createElementVNode("path",{d:"M3 3v5h5"})],-1)])]),default:e.withCtx(()=>[i[14]||(i[14]=e.createTextVNode(" 重置 ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),e.createElementVNode("div",ga,[e.createElementVNode("div",Na,[e.createElementVNode("div",_a,[e.createVNode(e.unref(A.Button),{type:"primary",onClick:L},{icon:e.withCtx(()=>[...i[15]||(i[15]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[i[16]||(i[16]=e.createTextVNode(" 新增用户 ",-1))]),_:1})]),e.createElementVNode("div",Ea,[e.createElementVNode("span",Va,"共 "+e.toDisplayString(d.value)+" 条数据",1)])]),e.createElementVNode("div",ka,[e.createElementVNode("table",ya,[i[23]||(i[23]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-id"},"ID"),e.createElementVNode("th",{class:"col-user"},"用户信息"),e.createElementVNode("th",{class:"col-contact"},"联系方式"),e.createElementVNode("th",{class:"col-roles"},"角色"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-time"},"创建时间"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",wa,[...i[17]||(i[17]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):p.value.length===0?(e.openBlock(),e.createElementBlock("tr",xa,[...i[18]||(i[18]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(p.value,_=>(e.openBlock(),e.createElementBlock("tr",{key:_.id,class:"data-row"},[e.createElementVNode("td",Ca,[e.createElementVNode("span",Ba,e.toDisplayString(_.id),1)]),e.createElementVNode("td",ba,[e.createElementVNode("div",Sa,[e.createElementVNode("div",$a,e.toDisplayString(_.nickname.charAt(0)),1),e.createElementVNode("div",Ia,[e.createElementVNode("span",La,e.toDisplayString(_.nickname),1),e.createElementVNode("span",Ma,"@"+e.toDisplayString(_.username),1)])])]),e.createElementVNode("td",Da,[e.createElementVNode("div",Ta,[e.createElementVNode("span",Aa,e.toDisplayString(_.email),1),e.createElementVNode("span",Ua,e.toDisplayString(_.phone),1)])]),e.createElementVNode("td",za,[e.createElementVNode("div",Oa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.roles,G=>(e.openBlock(),e.createBlock(e.unref(we.Tag),{key:G,size:"small",type:G==="admin"?"primary":"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(G),1)]),_:2},1032,["type"]))),128))])]),e.createElementVNode("td",Fa,[e.createElementVNode("div",Pa,[e.createVNode(e.unref(F.Switch),{"model-value":_.status===e.unref(X).ENABLED,"onUpdate:modelValue":G=>{_.status=G?e.unref(X).ENABLED:e.unref(X).DISABLED,K(_)}},null,8,["model-value","onUpdate:modelValue"]),e.createElementVNode("span",{class:e.normalizeClass(["status-text",{enabled:_.status===e.unref(X).ENABLED}])},e.toDisplayString(_.status===e.unref(X).ENABLED?"已启用":"已禁用"),3)])]),e.createElementVNode("td",Ra,[e.createElementVNode("span",qa,e.toDisplayString(_.createTime),1)]),e.createElementVNode("td",ja,[e.createVNode(e.unref(A.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",link:"",size:"small",onClick:G=>C(_)},{icon:e.withCtx(()=>[...i[19]||(i[19]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[i[20]||(i[20]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(oe.Popconfirm),{title:"确定删除该用户吗?",onConfirm:G=>x(_.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"danger",link:"",size:"small"},{icon:e.withCtx(()=>[...i[21]||(i[21]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("polyline",{points:"3,6 5,6 21,6"}),e.createElementVNode("path",{d:"M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2"}),e.createElementVNode("line",{x1:"10",y1:"11",x2:"10",y2:"17"}),e.createElementVNode("line",{x1:"14",y1:"11",x2:"14",y2:"17"})],-1)])]),default:e.withCtx(()=>[i[22]||(i[22]=e.createTextVNode(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:2},1024)])]))),128))])])]),e.createElementVNode("div",Ha,[e.createVNode(e.unref(we.Pagination),{"current-page":B.value,"onUpdate:currentPage":i[2]||(i[2]=_=>B.value=_),"page-size":V.value,"onUpdate:pageSize":i[3]||(i[3]=_=>V.value=_),total:d.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next",onCurrentChange:U,onSizeChange:U},null,8,["current-page","page-size","total"])])]),e.createVNode(e.unref(oe.Modal),{modelValue:w.value,"onUpdate:modelValue":i[10]||(i[10]=_=>w.value=_),title:k.value,width:"520px",class:"user-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(A.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{onClick:i[9]||(i[9]=_=>w.value=!1)},{default:e.withCtx(()=>[...i[24]||(i[24]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(A.Button),{type:"primary",onClick:z},{default:e.withCtx(()=>[...i[25]||(i[25]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(F.Form),{ref_key:"formRef",ref:$,model:y,rules:M,"label-width":"80px",class:"user-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.FormItem),{label:"用户名",prop:"username"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.username,"onUpdate:modelValue":i[4]||(i[4]=_=>y.username=_),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"昵称",prop:"nickname"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.nickname,"onUpdate:modelValue":i[5]||(i[5]=_=>y.nickname=_),placeholder:"请输入昵称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"邮箱",prop:"email"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.email,"onUpdate:modelValue":i[6]||(i[6]=_=>y.email=_),placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"手机号",prop:"phone"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.phone,"onUpdate:modelValue":i[7]||(i[7]=_=>y.phone=_),placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",Ga,[e.createVNode(e.unref(F.Switch),{modelValue:y.status,"onUpdate:modelValue":i[8]||(i[8]=_=>y.status=_),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",Ka,e.toDisplayString(y.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-5d3ed390"]])},Symbol.toStringTag,{value:"Module"})),Wa={class:"role-page"},Xa={class:"search-section"},Ya={class:"table-section"},Ja={class:"table-toolbar"},Za={class:"toolbar-left"},Qa={class:"toolbar-right"},va={class:"table-count"},ei={class:"table-wrapper"},ti={class:"data-table"},ni={key:0},oi={key:1},li={class:"col-id"},si={class:"id-badge"},ri={class:"col-name"},ai={class:"role-name"},ii={class:"col-code"},ci={class:"col-desc"},di={class:"desc-text"},mi={class:"col-status"},pi={class:"status-switch"},fi={class:"col-time"},ui={class:"time-text"},hi={class:"col-actions"},gi={class:"pagination-wrapper"},Ni={class:"status-field"},_i={class:"status-label"},Yt=Object.freeze(Object.defineProperty({__proto__:null,default:fe(e.defineComponent({__name:"index",setup(l){const c=[{id:1,name:"超级管理员",code:"admin",description:"拥有所有权限",status:X.ENABLED,permissions:["*"],createTime:"2024-01-01 10:00:00"},{id:2,name:"编辑",code:"editor",description:"内容编辑权限",status:X.ENABLED,permissions:["user:read","user:write"],createTime:"2024-01-02 10:00:00"},{id:3,name:"访客",code:"viewer",description:"只读权限",status:X.ENABLED,permissions:["user:read"],createTime:"2024-01-03 10:00:00"}],g=e.ref(!1),p=e.ref([]),d=e.ref(0),B=e.ref(1),V=e.ref(10),h=e.reactive({keyword:"",status:void 0}),w=e.ref(!1),k=e.computed(()=>y.id?"编辑角色":"新增角色"),y=e.reactive({id:0,name:"",code:"",description:"",status:X.ENABLED,permissions:[]}),M={name:[{required:!0,message:"请输入角色名称",trigger:"blur"}],code:[{required:!0,message:"请输入角色编码",trigger:"blur"}]},$=e.ref(),U=()=>{g.value=!0,setTimeout(()=>{let P=[...c];h.keyword&&(P=P.filter(i=>i.name.includes(h.keyword)||i.code.includes(h.keyword))),h.status!==void 0&&(P=P.filter(i=>i.status===h.status)),d.value=P.length,p.value=P.slice((B.value-1)*V.value,B.value*V.value),g.value=!1},300)},Y=()=>{B.value=1,U()},T=()=>{h.keyword="",h.status=void 0,B.value=1,U()},L=()=>{Object.assign(y,{id:0,name:"",code:"",description:"",status:X.ENABLED,permissions:[]}),w.value=!0},C=P=>{Object.assign(y,P),w.value=!0},x=P=>{oe.Message.success("删除成功"),U()},z=async()=>{var P;try{await((P=$.value)==null?void 0:P.validate()),oe.Message.success(y.id?"编辑成功":"新增成功"),w.value=!1,U()}catch(i){console.error(i)}},K=P=>{oe.Message.success(`已${P.status===X.ENABLED?"启用":"禁用"}角色 ${P.name}`)};return e.onMounted(()=>{U()}),(P,i)=>(e.openBlock(),e.createElementBlock("div",Wa,[e.createElementVNode("div",Xa,[e.createVNode(e.unref(F.Form),{model:h,inline:"",class:"search-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.FormItem),{label:"关键词"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:h.keyword,"onUpdate:modelValue":i[0]||(i[0]=_=>h.keyword=_),placeholder:"角色名称/编码",clearable:"",onKeyup:e.withKeys(Y,["enter"])},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Select),{modelValue:h.status,"onUpdate:modelValue":i[1]||(i[1]=_=>h.status=_),options:e.unref(ut),placeholder:"请选择",clearable:""},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(F.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",onClick:Y},{icon:e.withCtx(()=>[...i[10]||(i[10]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"M21 21l-4.35-4.35"})],-1)])]),default:e.withCtx(()=>[i[11]||(i[11]=e.createTextVNode(" 搜索 ",-1))]),_:1}),e.createVNode(e.unref(A.Button),{onClick:T},{icon:e.withCtx(()=>[...i[12]||(i[12]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 12a9 9 0 109-9 9.75 9.75 0 00-6.74 2.74L3 8"}),e.createElementVNode("path",{d:"M3 3v5h5"})],-1)])]),default:e.withCtx(()=>[i[13]||(i[13]=e.createTextVNode(" 重置 ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),e.createElementVNode("div",Ya,[e.createElementVNode("div",Ja,[e.createElementVNode("div",Za,[e.createVNode(e.unref(A.Button),{type:"primary",onClick:L},{icon:e.withCtx(()=>[...i[14]||(i[14]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[i[15]||(i[15]=e.createTextVNode(" 新增角色 ",-1))]),_:1})]),e.createElementVNode("div",Qa,[e.createElementVNode("span",va,"共 "+e.toDisplayString(d.value)+" 条数据",1)])]),e.createElementVNode("div",ei,[e.createElementVNode("table",ti,[i[22]||(i[22]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-id"},"ID"),e.createElementVNode("th",{class:"col-name"},"角色名称"),e.createElementVNode("th",{class:"col-code"},"角色编码"),e.createElementVNode("th",{class:"col-desc"},"描述"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-time"},"创建时间"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",ni,[...i[16]||(i[16]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):p.value.length===0?(e.openBlock(),e.createElementBlock("tr",oi,[...i[17]||(i[17]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(p.value,_=>(e.openBlock(),e.createElementBlock("tr",{key:_.id,class:"data-row"},[e.createElementVNode("td",li,[e.createElementVNode("span",si,e.toDisplayString(_.id),1)]),e.createElementVNode("td",ri,[e.createElementVNode("span",ai,e.toDisplayString(_.name),1)]),e.createElementVNode("td",ii,[e.createVNode(e.unref(we.Tag),{type:"primary",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(_.code),1)]),_:2},1024)]),e.createElementVNode("td",ci,[e.createElementVNode("span",di,e.toDisplayString(_.description),1)]),e.createElementVNode("td",mi,[e.createElementVNode("div",pi,[e.createVNode(e.unref(F.Switch),{"model-value":_.status===e.unref(X).ENABLED,"onUpdate:modelValue":G=>{_.status=G?e.unref(X).ENABLED:e.unref(X).DISABLED,K(_)}},null,8,["model-value","onUpdate:modelValue"]),e.createElementVNode("span",{class:e.normalizeClass(["status-text",{enabled:_.status===e.unref(X).ENABLED}])},e.toDisplayString(_.status===e.unref(X).ENABLED?"已启用":"已禁用"),3)])]),e.createElementVNode("td",fi,[e.createElementVNode("span",ui,e.toDisplayString(_.createTime),1)]),e.createElementVNode("td",hi,[e.createVNode(e.unref(A.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",link:"",size:"small",onClick:G=>C(_)},{icon:e.withCtx(()=>[...i[18]||(i[18]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[i[19]||(i[19]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(oe.Popconfirm),{title:"确定删除该角色吗?",onConfirm:G=>x(_.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"danger",link:"",size:"small"},{icon:e.withCtx(()=>[...i[20]||(i[20]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("polyline",{points:"3,6 5,6 21,6"}),e.createElementVNode("path",{d:"M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2"}),e.createElementVNode("line",{x1:"10",y1:"11",x2:"10",y2:"17"}),e.createElementVNode("line",{x1:"14",y1:"11",x2:"14",y2:"17"})],-1)])]),default:e.withCtx(()=>[i[21]||(i[21]=e.createTextVNode(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:2},1024)])]))),128))])])]),e.createElementVNode("div",gi,[e.createVNode(e.unref(we.Pagination),{"current-page":B.value,"onUpdate:currentPage":i[2]||(i[2]=_=>B.value=_),"page-size":V.value,"onUpdate:pageSize":i[3]||(i[3]=_=>V.value=_),total:d.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next",onCurrentChange:U,onSizeChange:U},null,8,["current-page","page-size","total"])])]),e.createVNode(e.unref(oe.Modal),{modelValue:w.value,"onUpdate:modelValue":i[9]||(i[9]=_=>w.value=_),title:k.value,width:"520px",class:"role-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(A.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{onClick:i[8]||(i[8]=_=>w.value=!1)},{default:e.withCtx(()=>[...i[23]||(i[23]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(A.Button),{type:"primary",onClick:z},{default:e.withCtx(()=>[...i[24]||(i[24]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(F.Form),{ref_key:"formRef",ref:$,model:y,rules:M,"label-width":"80px",class:"role-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.FormItem),{label:"角色名称",prop:"name"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.name,"onUpdate:modelValue":i[4]||(i[4]=_=>y.name=_),placeholder:"请输入角色名称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"角色编码",prop:"code"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.code,"onUpdate:modelValue":i[5]||(i[5]=_=>y.code=_),placeholder:"请输入角色编码"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"描述"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:y.description,"onUpdate:modelValue":i[6]||(i[6]=_=>y.description=_),placeholder:"请输入描述"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",Ni,[e.createVNode(e.unref(F.Switch),{modelValue:y.status,"onUpdate:modelValue":i[7]||(i[7]=_=>y.status=_),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",_i,e.toDisplayString(y.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-de354764"]])},Symbol.toStringTag,{value:"Module"})),Ei={class:"menu-page"},Vi={class:"table-section"},ki={class:"table-toolbar"},yi={class:"toolbar-left"},wi={class:"toolbar-right"},xi={class:"table-count"},Ci={class:"table-wrapper"},Bi={class:"data-table"},bi={key:0},Si={key:1},$i={class:"data-row tree-row--level-0"},Ii={class:"col-name"},Li={class:"menu-info"},Mi={class:"menu-icon-wrapper"},Di=["onClick"],Ti={class:"col-icon"},Ai={class:"icon-text"},Ui={class:"col-path"},zi={class:"path-code"},Oi={class:"col-type"},Fi={class:"col-sort"},Pi={class:"sort-badge"},Ri={class:"col-status"},qi={class:"col-actions"},ji={class:"col-name"},Hi={class:"menu-info"},Gi={class:"menu-icon-wrapper"},Ki=["onClick"],Wi={class:"col-icon"},Xi={class:"icon-text"},Yi={class:"col-path"},Ji={class:"path-code"},Zi={class:"col-type"},Qi={class:"col-sort"},vi={class:"sort-badge"},ec={class:"col-status"},tc={class:"col-actions"},nc={class:"form-grid"},oc={class:"status-field"},lc={class:"status-label"},sc={class:"status-field"},rc={class:"status-label"},ac={class:"status-field"},ic={class:"status-label"},Jt=Object.freeze(Object.defineProperty({__proto__:null,default:fe(e.defineComponent({__name:"index",setup(l){const c=[{id:1,parentId:null,name:"Dashboard",path:"/dashboard",component:"dashboard/index",redirect:"",icon:"dashboard",title:"仪表盘",type:_e.MENU,sort:1,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:2,parentId:null,name:"System",path:"/system",component:"",redirect:"/system/user",icon:"setting",title:"系统管理",type:_e.DIRECTORY,sort:2,status:X.ENABLED,hidden:!1,keepAlive:!1,children:[{id:21,parentId:2,name:"SystemUser",path:"/system/user",component:"system/user/index",redirect:"",icon:"user",title:"用户管理",type:_e.MENU,sort:1,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:22,parentId:2,name:"SystemRole",path:"/system/role",component:"system/role/index",redirect:"",icon:"role",title:"角色管理",type:_e.MENU,sort:2,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:23,parentId:2,name:"SystemMenu",path:"/system/menu",component:"system/menu/index",redirect:"",icon:"menu",title:"菜单管理",type:_e.MENU,sort:3,status:X.ENABLED,hidden:!1,keepAlive:!0}]}],g=e.ref(!1),p=e.ref([]),d=e.ref(!1),B=e.computed(()=>V.id?"编辑菜单":"新增菜单"),V=e.reactive({id:0,parentId:null,name:"",path:"",component:"",redirect:"",icon:"",title:"",type:_e.MENU,sort:0,status:X.ENABLED,hidden:!1,keepAlive:!0}),h={name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],path:[{required:!0,message:"请输入路由路径",trigger:"blur"}],title:[{required:!0,message:"请输入菜单标题",trigger:"blur"}]},w=e.ref(),k=()=>{g.value=!0,setTimeout(()=>{p.value=c,g.value=!1},300)},y=(L=null)=>{Object.assign(V,{id:0,parentId:L,name:"",path:"",component:"",redirect:"",icon:"",title:"",type:_e.MENU,sort:0,status:X.ENABLED,hidden:!1,keepAlive:!0}),d.value=!0},M=L=>{Object.assign(V,L),d.value=!0},$=async()=>{var L;try{await((L=w.value)==null?void 0:L.validate()),oe.Message.success(V.id?"编辑成功":"新增成功"),d.value=!1,k()}catch(C){console.error(C)}},U=L=>({dashboard:"📊",system:"⚙️",user:"👤",role:"👥",menu:"📋",setting:"🔧"})[L||""]||"📄",Y=L=>{switch(L){case _e.DIRECTORY:return"primary";case _e.MENU:return"success";default:return"warning"}},T=L=>{switch(L){case _e.DIRECTORY:return"目录";case _e.MENU:return"菜单";default:return"按钮"}};return e.onMounted(()=>{k()}),(L,C)=>(e.openBlock(),e.createElementBlock("div",Ei,[e.createElementVNode("div",Vi,[e.createElementVNode("div",ki,[e.createElementVNode("div",yi,[e.createVNode(e.unref(A.Button),{type:"primary",onClick:C[0]||(C[0]=x=>y())},{icon:e.withCtx(()=>[...C[14]||(C[14]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[C[15]||(C[15]=e.createTextVNode(" 新增菜单 ",-1))]),_:1})]),e.createElementVNode("div",wi,[e.createElementVNode("span",xi,"共 "+e.toDisplayString(p.value.length)+" 个菜单",1)])]),e.createElementVNode("div",Ci,[e.createElementVNode("table",Bi,[C[26]||(C[26]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-name"},"菜单名称"),e.createElementVNode("th",{class:"col-icon"},"图标"),e.createElementVNode("th",{class:"col-path"},"路由路径"),e.createElementVNode("th",{class:"col-type"},"类型"),e.createElementVNode("th",{class:"col-sort"},"排序"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",bi,[...C[16]||(C[16]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):p.value.length===0?(e.openBlock(),e.createElementBlock("tr",Si,[...C[17]||(C[17]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(p.value,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.id},[e.createElementVNode("tr",$i,[e.createElementVNode("td",Ii,[e.createElementVNode("div",Li,[e.createElementVNode("span",Mi,e.toDisplayString(U(x.icon)),1),e.createElementVNode("span",{class:"menu-title",onClick:z=>M(x)},e.toDisplayString(x.title),9,Di)])]),e.createElementVNode("td",Ti,[e.createElementVNode("span",Ai,e.toDisplayString(U(x.icon)),1)]),e.createElementVNode("td",Ui,[e.createElementVNode("code",zi,e.toDisplayString(x.path),1)]),e.createElementVNode("td",Oi,[e.createVNode(e.unref(we.Tag),{type:Y(x.type),size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T(x.type)),1)]),_:2},1032,["type"])]),e.createElementVNode("td",Fi,[e.createElementVNode("span",Pi,e.toDisplayString(x.sort),1)]),e.createElementVNode("td",Ri,[e.createVNode(e.unref(we.Tag),{type:x.status===e.unref(X).ENABLED?"success":"danger",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.status===e.unref(X).ENABLED?"启用":"禁用"),1)]),_:2},1032,["type"])]),e.createElementVNode("td",qi,[e.createVNode(e.unref(A.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",link:"",size:"small",onClick:z=>y(x.id)},{icon:e.withCtx(()=>[...C[18]||(C[18]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[C[19]||(C[19]=e.createTextVNode(" 新增 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(A.Button),{type:"primary",link:"",size:"small",onClick:z=>M(x)},{icon:e.withCtx(()=>[...C[20]||(C[20]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[C[21]||(C[21]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:2},1024)])]),x.children?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(x.children,z=>(e.openBlock(),e.createElementBlock("tr",{key:z.id,class:"data-row tree-row--level-1"},[e.createElementVNode("td",ji,[e.createElementVNode("div",Hi,[C[22]||(C[22]=e.createElementVNode("span",{class:"tree-indent"},null,-1)),C[23]||(C[23]=e.createElementVNode("span",{class:"tree-line"},null,-1)),e.createElementVNode("span",Gi,e.toDisplayString(U(z.icon)),1),e.createElementVNode("span",{class:"menu-title",onClick:K=>M(z)},e.toDisplayString(z.title),9,Ki)])]),e.createElementVNode("td",Wi,[e.createElementVNode("span",Xi,e.toDisplayString(U(z.icon)),1)]),e.createElementVNode("td",Yi,[e.createElementVNode("code",Ji,e.toDisplayString(z.path),1)]),e.createElementVNode("td",Zi,[e.createVNode(e.unref(we.Tag),{type:Y(z.type),size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T(z.type)),1)]),_:2},1032,["type"])]),e.createElementVNode("td",Qi,[e.createElementVNode("span",vi,e.toDisplayString(z.sort),1)]),e.createElementVNode("td",ec,[e.createVNode(e.unref(we.Tag),{type:z.status===e.unref(X).ENABLED?"success":"danger",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(z.status===e.unref(X).ENABLED?"启用":"禁用"),1)]),_:2},1032,["type"])]),e.createElementVNode("td",tc,[e.createVNode(e.unref(A.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{type:"primary",link:"",size:"small",onClick:K=>M(z)},{icon:e.withCtx(()=>[...C[24]||(C[24]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[C[25]||(C[25]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:2},1024)])]))),128)):e.createCommentVNode("",!0)],64))),128))])])])]),e.createVNode(e.unref(oe.Modal),{modelValue:d.value,"onUpdate:modelValue":C[13]||(C[13]=x=>d.value=x),title:B.value,width:"600px",class:"menu-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(A.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(A.Button),{onClick:C[12]||(C[12]=x=>d.value=!1)},{default:e.withCtx(()=>[...C[27]||(C[27]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(A.Button),{type:"primary",onClick:$},{default:e.withCtx(()=>[...C[28]||(C[28]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(F.Form),{ref_key:"formRef",ref:w,model:V,rules:h,"label-width":"80px",class:"menu-form"},{default:e.withCtx(()=>[e.createElementVNode("div",nc,[e.createVNode(e.unref(F.FormItem),{label:"上级菜单",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.parentId,"onUpdate:modelValue":C[1]||(C[1]=x=>V.parentId=x),placeholder:"上级菜单ID",disabled:""},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"菜单类型"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Select),{modelValue:V.type,"onUpdate:modelValue":C[2]||(C[2]=x=>V.type=x),options:e.unref(Kt)},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"排序"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.InputNumber),{modelValue:V.sort,"onUpdate:modelValue":C[3]||(C[3]=x=>V.sort=x),min:0},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"菜单名称",prop:"name"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.name,"onUpdate:modelValue":C[4]||(C[4]=x=>V.name=x),placeholder:"请输入菜单名称(路由name)"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"菜单标题",prop:"title"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.title,"onUpdate:modelValue":C[5]||(C[5]=x=>V.title=x),placeholder:"请输入菜单标题"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"路由路径",prop:"path",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.path,"onUpdate:modelValue":C[6]||(C[6]=x=>V.path=x),placeholder:"请输入路由路径"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"组件路径",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.component,"onUpdate:modelValue":C[7]||(C[7]=x=>V.component=x),placeholder:"请输入组件路径"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"图标"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Input),{modelValue:V.icon,"onUpdate:modelValue":C[8]||(C[8]=x=>V.icon=x),placeholder:"请输入图标名称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",oc,[e.createVNode(e.unref(F.Switch),{modelValue:V.status,"onUpdate:modelValue":C[9]||(C[9]=x=>V.status=x),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",lc,e.toDisplayString(V.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"隐藏"},{default:e.withCtx(()=>[e.createElementVNode("div",sc,[e.createVNode(e.unref(F.Switch),{modelValue:V.hidden,"onUpdate:modelValue":C[10]||(C[10]=x=>V.hidden=x)},null,8,["modelValue"]),e.createElementVNode("span",rc,e.toDisplayString(V.hidden?"隐藏":"显示"),1)])]),_:1}),e.createVNode(e.unref(F.FormItem),{label:"缓存"},{default:e.withCtx(()=>[e.createElementVNode("div",ac,[e.createVNode(e.unref(F.Switch),{modelValue:V.keepAlive,"onUpdate:modelValue":C[11]||(C[11]=x=>V.keepAlive=x)},null,8,["modelValue"]),e.createElementVNode("span",ic,e.toDisplayString(V.keepAlive?"开启":"关闭"),1)])]),_:1})])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-e7cc9235"]])},Symbol.toStringTag,{value:"Module"}));b.Footer=ks,b.Forbidden=Zs,b.Gender=Gt,b.GenderOptions=Ur,b.GenderText=Tr,b.Header=Lt,b.Layout=dt,b.Login=Pt,b.MenuType=_e,b.MenuTypeOptions=Kt,b.MenuTypeText=Ar,b.NotFound=Rt,b.Sidebar=ct,b.Status=X,b.StatusOptions=ut,b.StatusText=Dr,b.Tabs=Ns,b.appConfig=Qt,b.batchDeleteUsers=Ir,b.clearToken=De,b.createLayoutRoute=mr,b.createMenu=Vr,b.createRole=hr,b.createRouter=pr,b.createTranslator=lr,b.createUser=br,b.createXtoApp=Or,b.defaultDynamicRoutes=ir,b.deleteMenu=yr,b.deleteRole=Nr,b.deleteUser=$r,b.getApiBaseUrl=_t,b.getAppId=Ue,b.getClientId=Je,b.getCode=ln,b.getMenuList=Er,b.getMenuTree=Ht,b.getRefreshTime=on,b.getRefreshToken=nn,b.getRoleDetail=ur,b.getRoleList=fr,b.getToken=Pe,b.getTokenExpire=Ct,b.getTokenType=yt,b.getUserDetail=Br,b.getUserInfo=Ft,b.getUserList=Cr,b.hasPermission=sr,b.hasRole=rr,b.hasToken=it,b.http=le,b.initAppConfig=Nt,b.isAdmin=ar,b.isTokenExpired=$t,b.layoutRoute=pt,b.local=H,b.localStorageUtil=Oe,b.login=Ot,b.logout=Ms,b.mockMenuData=jt,b.permissionDirective=zr,b.refreshToken=Ds,b.resetPassword=Mr,b.resetRouter=dr,b.router=ft,b.session=vt,b.sessionStorageUtil=Fe,b.setApiBaseUrl=Ls,b.setCode=St,b.setRefreshTime=bt,b.setRefreshToken=xt,b.setToken=kt,b.setTokenExpire=Bt,b.setTokenInfo=at,b.setTokenType=wt,b.setupRouterGuards=xr,b.staticRoutes=mt,b.updateMenu=kr,b.updateRole=gr,b.updateRoleStatus=_r,b.updateUser=Sr,b.updateUserStatus=Lr,b.useApp=Qs,b.useAppStore=be,b.useAuth=vs,b.useAuthStore=Te,b.useForm=er,b.useI18n=or,b.useLocaleStore=We,b.useMenuStore=xe,b.useTable=tr,b.useUserStore=ke,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(b,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("pinia"),require("vue-router"),require("@xto/navigation"),require("@xto/base"),require("@xto/feedback"),require("@xto/form"),require("axios"),require("@xto/core/locale"),require("@xto/data")):typeof define=="function"&&define.amd?define(["exports","vue","pinia","vue-router","@xto/navigation","@xto/base","@xto/feedback","@xto/form","axios","@xto/core/locale","@xto/data"],e):(b=typeof globalThis<"u"?globalThis:b||self,e(b.XtoFronted={},b.Vue,b.Pinia,b.VueRouter,b.navigation,b.base,b.feedback,b.form,b.axios,b.locale$1,b.data))})(this,function(b,e,Ae,ie,Ne,U,ne,O,Jt,Ye,we){"use strict";const qe=e.ref(""),je=e.ref(""),He=e.ref("");function gt(o){o.appId&&(qe.value=o.appId),o.clientId&&(je.value=o.clientId),o.apiBaseUrl&&(He.value=o.apiBaseUrl)}function Ue(){if(qe.value)return qe.value;try{return""}catch{return""}}function Je(){if(je.value)return je.value;try{return""}catch{return""}}function _t(){if(He.value)return He.value;try{return""}catch{return""}}const Zt={appId:qe,clientId:je,apiBaseUrl:He},ze="xto_",Nt=o=>({get(p){const g=o.getItem(ze+p);if(!g)return null;try{return JSON.parse(g)}catch{return g}},set(p,g){if(g==null){o.removeItem(ze+p);return}const f=typeof g=="string"?g:JSON.stringify(g);o.setItem(ze+p,f)},remove(p){o.removeItem(ze+p)},clear(){Object.keys(o).forEach(g=>{g.startsWith(ze)&&o.removeItem(g)})}}),Oe=Nt(window.localStorage),Fe=Nt(window.sessionStorage),G={get:Oe.get,set:Oe.set,remove:Oe.remove,clear:Oe.clear},Qt={get:Fe.get,set:Fe.set,remove:Fe.remove,clear:Fe.clear},be=Ae.defineStore("app",()=>{const o=e.ref(G.get("appName")||"XTO App"),p=e.ref(G.get("indexPath")||"/dashboard"),g=e.ref(G.get("isDark")||!1),f=e.ref(G.get("theme")||"light"),u=e.ref(G.get("layout")||"sidebar"),y=e.ref(G.get("isCollapsed")||!1),h=e.ref(G.get("showTabs")??!0),_=e.ref(G.get("showFooter")??!0),w=e.ref(G.get("showBreadcrumb")??!0),x=e.ref(G.get("primaryColor")||"#409eff"),k=e.ref([]),M=e.ref([]),S=e.computed(()=>g.value?"dark":"light"),z=q=>{o.value=q,G.set("appName",q)},K=q=>{p.value=q,G.set("indexPath",q)},A=()=>{g.value=!g.value,f.value=g.value?"dark":"light",C()},L=q=>{f.value=q,g.value=q==="dark",C()},C=()=>{const q=document.documentElement;g.value?q.classList.add("dark"):q.classList.remove("dark"),G.set("isDark",g.value),G.set("theme",f.value)},B=()=>{y.value=!y.value,G.set("isCollapsed",y.value)},R=q=>{u.value=q,G.set("layout",q)},Y=()=>{h.value=!h.value,G.set("showTabs",h.value)},T=()=>{_.value=!_.value,G.set("showFooter",_.value)},m=()=>{w.value=!w.value,G.set("showBreadcrumb",w.value)},V=q=>{x.value=q,document.documentElement.style.setProperty("--color-primary",q),G.set("primaryColor",q)},P=q=>{k.value.includes(q)||k.value.push(q)},J=q=>{const le=k.value.indexOf(q);le>-1&&k.value.splice(le,1)},D=()=>{k.value=[]},ee=q=>{M.value=q},Z=()=>{C(),x.value!=="#409eff"&&document.documentElement.style.setProperty("--color-primary",x.value)};return e.watch(g,C),{appName:o,indexPath:p,isDark:g,theme:f,layout:u,isCollapsed:y,showTabs:h,showFooter:_,showBreadcrumb:w,primaryColor:x,cachedViews:k,mixSubMenus:M,themeClass:S,setAppName:z,setIndexPath:K,toggleTheme:A,toggleCollapse:B,setTheme:L,setLayout:R,toggleTabs:Y,toggleFooter:T,toggleBreadcrumb:m,setPrimaryColor:V,addCachedView:P,removeCachedView:J,clearCachedViews:D,setMixSubMenus:ee,initTheme:Z}}),Ze="menu_list",Qe="permission_list",vt={menuCode:"home",menuName:"首页",menuUrl:"/dashboard",icon:"home",closable:!1,isDefault:!1,isOut:!1};function Et(o){return o.filter(p=>p.type!==1).map(p=>({...p,children:p.children?Et(p.children):void 0}))}function en(o){const p=[];function g(f){f.forEach(u=>{u.type===1&&u.menuCode&&p.push(u.menuCode),u.children&&g(u.children)})}return g(o),p}const xe=Ae.defineStore("menu",()=>{const o=e.ref(G.get(Ze)||[]),p=e.ref(G.get(Qe)||[]),g=e.computed(()=>o.value.length>0);return{menuList:o,permissions:p,hasMenu:g,setMenuList:h=>{p.value=en(h),G.set(Qe,p.value);const _=Et(h);o.value=[vt,..._],G.set(Ze,o.value)},clearMenu:()=>{o.value=[],p.value=[],G.remove(Ze),G.remove(Qe)},hasPermission:h=>Array.isArray(h)?h.some(_=>p.value.includes(_)):p.value.includes(h)}}),ve="user_info",ke=Ae.defineStore("user",()=>{const o=e.ref(G.get(ve)),p=e.computed(()=>!!o.value),g=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.userId)||""}),f=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.userName)||""}),u=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.departmentName)||""}),y=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.email)||""}),h=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.mobilePhone)||""}),_=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.positionName)||""}),w=e.computed(()=>{var M;return((M=o.value)==null?void 0:M.avatar)||""});return{userInfo:o,isLoggedIn:p,userId:g,userName:f,departmentName:u,email:y,mobilePhone:h,positionName:_,avatar:w,setUserInfo:M=>{o.value=M,G.set(ve,M)},clearUserInfo:()=>{o.value=null,G.remove(ve)}}}),et="token",tt="token_type",nt="refresh_token",ot="expires_time",lt="refresh_time",st="code",Pe=()=>G.get(et),Vt=o=>{G.set(et,o)},kt=()=>G.get(tt),yt=o=>{G.set(tt,o)},tn=()=>G.get(nt),wt=o=>{G.set(nt,o)},xt=()=>G.get(ot),Ct=o=>{G.set(ot,o)},nn=()=>G.get(lt),Bt=o=>{G.set(lt,o)},on=()=>G.get(st),bt=o=>{G.set(st,o)},rt=o=>{Vt(o.access_token),yt(o.token_type||"Bearer"),wt(o.refresh_token),Ct(o.expires_time),Bt(o.refresh_time),o.code&&bt(o.code)},De=()=>{G.remove(et),G.remove(tt),G.remove(nt),G.remove(ot),G.remove(lt),G.remove(st)},St=()=>{const o=xt();return o?Date.now()>o:!0},at=()=>!!Pe()&&!St(),Te=Ae.defineStore("auth",()=>{const o=e.ref(Pe()),p=e.computed(()=>at()),g=e.ref(""),f=e.ref(""),u=e.ref(""),y=e.ref("/login");return{token:o,isLoggedIn:p,baseUrl:g,appId:f,clientId:u,loginPath:y,login:S=>{o.value=S.access_token,rt(S)},logout:()=>{o.value=null,De()},setBaseUrl:S=>{g.value=S},setAppId:S=>{f.value=S},setClientId:S=>{u.value=S},setLoginPath:S=>{y.value=S}}}),ln={class:"menu-item__content"},sn={class:"menu-item__icon"},rn={key:1,class:"menu-item__char"},an={class:"menu-item__text"},cn={class:"menu-item__content"},dn={key:0,class:"menu-item__icon"},mn={key:1,class:"menu-item__char"},pn={class:"menu-item__text"},fn=e.defineComponent({__name:"SidebarMenuItem",props:{menu:{}},setup(o){const p=o,g=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),f=_=>{if(!_||_==="")return"";if(_.startsWith("tineco-icon-")){const x=_.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[x]||x}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[_]||_},u=_=>_?_.charAt(0):"",y=_=>g.has(_),h=e.computed(()=>p.menu.children&&p.menu.children.length>0);return(_,w)=>{const x=e.resolveComponent("SidebarMenuItem",!0);return h.value?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:o.menu.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",ln,[e.createElementVNode("span",sn,[y(f(o.menu.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:f(o.menu.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",rn,e.toDisplayString(u(o.menu.menuName)),1))]),e.createElementVNode("span",an,e.toDisplayString(o.menu.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.menu.children,k=>(e.openBlock(),e.createBlock(x,{key:k.menuUrl,menu:k},null,8,["menu"]))),128))]),_:1},8,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:o.menu.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",cn,[o.menu.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",dn,[y(f(o.menu.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:f(o.menu.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",mn,e.toDisplayString(u(o.menu.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",pn,e.toDisplayString(o.menu.menuName),1)])]),_:1},8,["index"]))}}}),ge=(o,p)=>{const g=o.__vccOpts||o;for(const[f,u]of p)g[f]=u;return g},un=ge(fn,[["__scopeId","data-v-27c9479b"]]),hn={key:0,class:"sidebar__logo"},gn=["src"],_n={key:1,class:"sidebar__user"},Nn={class:"sidebar__user-info"},En={class:"sidebar__user-name"},Vn={class:"sidebar__user-role"},$t="sidebar_opened_menus",it=ge(e.defineComponent({__name:"Sidebar",props:{menuList:{default:()=>[]},showLogo:{type:Boolean,default:!0},showUser:{type:Boolean,default:!0}},setup(o){const p="/",g=o,f=ie.useRoute(),u=ie.useRouter(),y=xe(),h=ke(),_=Te(),w=be(),x=e.computed(()=>g.menuList.length>0?g.menuList:y.menuList),k=e.computed(()=>w.isCollapsed),M=e.computed(()=>f.path),S=e.ref(G.get($t)||[]);e.watch(S,R=>{G.set($t,R)},{deep:!0});const z=(R,Y,T=[])=>{var m;for(const V of R){if(Y===V.menuUrl||Y.startsWith(V.menuUrl+"/"))return[...T,V.menuUrl];if((m=V.children)!=null&&m.length){const P=z(V.children,Y,[...T,V.menuUrl]);if(P)return P}}return null};e.watch([()=>f.path,x],([R,Y])=>{if(Y.length>0){const T=z(Y,R);if(T){const m=T.slice(0,-1),V=new Set([...S.value,...m]);S.value=Array.from(V)}}},{immediate:!0});const K=e.computed(()=>w.isDark?"#1d1e1f":"#fff"),A=e.computed(()=>w.isDark?"#cfd3dc":"#303133"),L=e.computed(()=>"#409eff"),C=R=>{R&&R!==f.path&&u.push(R)},B=()=>{_.logout(),h.clearUserInfo(),y.clearMenu(),u.push("/login")};return(R,Y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sidebar",{"sidebar--collapsed":k.value}])},[g.showLogo?(e.openBlock(),e.createElementBlock("div",hn,[e.createElementVNode("img",{src:`${e.unref(p)}vite.svg`,alt:"Logo",class:"sidebar__logo-img"},null,8,gn),e.withDirectives(e.createElementVNode("span",{class:"sidebar__logo-text"},e.toDisplayString(e.unref(w).appName),513),[[e.vShow,!k.value]])])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ne.Menu),{modelValue:M.value,"onUpdate:modelValue":Y[0]||(Y[0]=T=>M.value=T),openeds:S.value,"onUpdate:openeds":Y[1]||(Y[1]=T=>S.value=T),mode:"vertical",collapse:k.value,"collapse-transition":!1,"background-color":K.value,"text-color":A.value,"active-text-color":L.value,class:"sidebar__menu",onSelect:C},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,T=>(e.openBlock(),e.createBlock(un,{key:T.menuUrl,menu:T},null,8,["menu"]))),128))]),_:1},8,["modelValue","openeds","collapse","background-color","text-color","active-text-color"]),g.showUser&&!k.value?(e.openBlock(),e.createElementBlock("div",_n,[e.createElementVNode("div",Nn,[e.createElementVNode("span",En,e.toDisplayString(e.unref(h).userName),1),e.createElementVNode("span",Vn,e.toDisplayString(e.unref(h).departmentName),1)]),e.createVNode(e.unref(U.Button),{type:"text",size:"small",onClick:B},{default:e.withCtx(()=>[...Y[2]||(Y[2]=[e.createTextVNode("退出",-1)])]),_:1})])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-26e612d1"]]),kn={class:"header"},yn={class:"header__left"},wn={key:0,class:"header__breadcrumb"},xn={key:0,class:"breadcrumb-separator"},Cn={class:"header__right"},Bn={key:0,class:"header__search-dropdown"},bn={key:0,class:"header__search-results"},Sn=["onClick"],$n={key:0,class:"header__search-icon"},In={key:1,class:"header__search-char"},Mn={class:"header__search-item-title"},Ln={key:1,class:"header__search-item-parent"},Dn={key:1,class:"header__search-empty"},Tn=["title"],An={class:"header__avatar"},Un={class:"header__user-name"},zn={key:0,class:"header__dropdown"},On={class:"header__dropdown-header"},Fn={class:"header__dropdown-avatar"},Pn={class:"header__dropdown-info"},Rn={class:"header__dropdown-name"},qn={class:"header__dropdown-role"},jn={class:"header__dropdown-menu"},Hn={class:"settings-drawer"},Gn={class:"settings-section"},Kn={class:"settings-layout-options"},Wn=["onClick"],Xn={class:"layout-option__preview"},Yn={key:0,class:"layout-preview-sidebar"},Jn={key:1,class:"layout-preview-top"},Zn={key:2,class:"layout-preview-mix"},Qn={class:"layout-option__label"},vn={class:"settings-section"},eo={class:"settings-color-options"},to=["title","onClick"],no={class:"settings-section"},oo={class:"settings-switch-list"},lo={class:"settings-switch-item"},so={class:"settings-switch-item"},It=ge(e.defineComponent({__name:"Header",setup(o){const p=ie.useRoute(),g=ie.useRouter(),f=be(),u=ke(),y=Te(),h=xe(),_=e.ref(!1),w=e.ref(!1),x=e.ref(null),k=e.ref(!1),M=e.ref(!1),S=e.ref(""),z=e.ref(null),K=e.ref(!1),A=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],L=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],C=e.computed(()=>p.matched.filter(F=>F.meta&&F.meta.title).map(F=>({title:F.meta.title,path:F.path}))),B=(W,F="")=>{const t=[];return W.forEach(n=>{n.children&&n.children.length>0?t.push(...B(n.children,n.menuName)):t.push({...n,parentTitle:F,title:n.menuName,path:n.menuUrl})}),t},R=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),Y=W=>{if(!W||W==="")return"";if(W.startsWith("tineco-icon-")){const t=W.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[t]||t}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[W]||W},T=W=>W?W.charAt(0):"",m=W=>R.has(W),V=e.computed(()=>S.value.trim()?B(h.menuList).filter(F=>F.title.toLowerCase().includes(S.value.toLowerCase())):[]),P=e.computed(()=>f.layout),J=()=>{f.toggleCollapse()},D=()=>{f.toggleTheme()},ee=()=>{w.value=!0},Z=W=>{f.setLayout(W),w.value=!1},q=W=>{K.value=W;const F=document.documentElement;W?F.classList.add("grey-mode"):F.classList.remove("grey-mode")},le=()=>{q(!K.value),w.value=!1},se=()=>{f.toggleTheme(),w.value=!1},fe=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},de=()=>{k.value=!!document.fullscreenElement},me=()=>{_.value=!_.value},pe=()=>{_.value=!1},ue=()=>{M.value=!1,S.value=""},Se=W=>{g.push(W),ue()},Ve=W=>{f.setPrimaryColor(W),w.value=!1},$e=()=>{pe(),g.push("/profile")},I=()=>{pe(),g.push("/change-password")},Ie=()=>{pe(),y.logout(),u.clearUserInfo(),h.clearMenu(),g.push("/login")},Me=W=>{x.value&&!x.value.contains(W.target)&&pe(),z.value&&!z.value.contains(W.target)&&ue()},Ce=W=>{W.key==="Escape"&&(ue(),pe())};return e.onMounted(()=>{document.addEventListener("click",Me),document.addEventListener("fullscreenchange",de),document.addEventListener("keydown",Ce),f.initTheme(),K.value=document.documentElement.classList.contains("grey-mode")}),e.onUnmounted(()=>{document.removeEventListener("click",Me),document.removeEventListener("fullscreenchange",de),document.removeEventListener("keydown",Ce)}),(W,F)=>{var t;return e.openBlock(),e.createElementBlock("div",kn,[e.createElementVNode("div",yn,[e.createElementVNode("div",{class:"header__collapse",onClick:J},[e.createVNode(e.unref(U.Icon),{name:e.unref(f).isCollapsed?"menu-unfold":"menu-fold",size:18},null,8,["name"])]),e.unref(f).showBreadcrumb?(e.openBlock(),e.createElementBlock("div",wn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(n,s)=>(e.openBlock(),e.createElementBlock("span",{key:n.path},[s>0?(e.openBlock(),e.createElementBlock("span",xn,"/")):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass({"is-current":s===C.value.length-1})},e.toDisplayString(n.title),3)]))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Cn,[e.createElementVNode("div",{class:"header__search",ref_key:"searchRef",ref:z},[e.createVNode(e.unref(U.Icon),{name:"search",size:14,class:"header__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":F[0]||(F[0]=n=>S.value=n),type:"text",class:"header__search-input",placeholder:"搜索菜单...",onFocus:F[1]||(F[1]=n=>M.value=!0)},null,544),[[e.vModelText,S.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[M.value&&(V.value.length>0||S.value)?(e.openBlock(),e.createElementBlock("div",Bn,[V.value.length>0?(e.openBlock(),e.createElementBlock("div",bn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,n=>(e.openBlock(),e.createElementBlock("div",{key:n.path,class:"header__search-item",onClick:s=>Se(n.path)},[n.title!=="首页"?(e.openBlock(),e.createElementBlock("span",$n,[m(Y(n.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:Y(n.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",In,e.toDisplayString(T(n.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Mn,e.toDisplayString(n.title),1),n.parentTitle?(e.openBlock(),e.createElementBlock("span",Ln,e.toDisplayString(n.parentTitle),1)):e.createCommentVNode("",!0)],8,Sn))),128))])):(e.openBlock(),e.createElementBlock("div",Dn," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"header__action",onClick:fe,title:k.value?"退出全屏":"全屏"},[e.createVNode(e.unref(U.Icon),{name:k.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Tn),e.createElementVNode("div",{class:"header__action",onClick:ee,title:"换肤设置"},[e.createVNode(e.unref(U.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"header__action",onClick:D,title:"切换主题"},[e.createVNode(e.unref(U.Icon),{name:e.unref(f).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"header__user",ref_key:"dropdownRef",ref:x},[e.createElementVNode("div",{class:"header__user-trigger",onClick:e.withModifiers(me,["stop"])},[e.createElementVNode("div",An,[e.createElementVNode("span",null,e.toDisplayString(((t=e.unref(u).userName)==null?void 0:t.charAt(0))||"U"),1)]),e.createElementVNode("span",Un,e.toDisplayString(e.unref(u).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["header__user-arrow",{"is-active":_.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var n;return[_.value?(e.openBlock(),e.createElementBlock("div",zn,[e.createElementVNode("div",On,[e.createElementVNode("div",Fn,[e.createElementVNode("span",null,e.toDisplayString(((n=e.unref(u).userName)==null?void 0:n.charAt(0))||"U"),1)]),e.createElementVNode("div",Pn,[e.createElementVNode("div",Rn,e.toDisplayString(e.unref(u).userName),1),e.createElementVNode("div",qn,e.toDisplayString(e.unref(u).departmentName),1)])]),F[7]||(F[7]=e.createElementVNode("div",{class:"header__dropdown-divider"},null,-1)),e.createElementVNode("div",jn,[e.createElementVNode("div",{class:"header__dropdown-item",onClick:$e},[e.createVNode(e.unref(U.Icon),{name:"user",size:16}),F[3]||(F[3]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"header__dropdown-item",onClick:I},[e.createVNode(e.unref(U.Icon),{name:"lock",size:16}),F[4]||(F[4]=e.createElementVNode("span",null,"修改密码",-1))]),F[6]||(F[6]=e.createElementVNode("div",{class:"header__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"header__dropdown-item header__dropdown-item--danger",onClick:Ie},[e.createVNode(e.unref(U.Icon),{name:"logout",size:16}),F[5]||(F[5]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(ne.Drawer),{modelValue:w.value,"onUpdate:modelValue":F[2]||(F[2]=n=>w.value=n),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Hn,[e.createElementVNode("div",Gn,[F[11]||(F[11]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",Kn,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(A,n=>e.createElementVNode("div",{key:n.value,class:e.normalizeClass(["layout-option",{"is-active":P.value===n.value}]),onClick:s=>Z(n.value)},[e.createElementVNode("div",Xn,[n.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",Yn,[...F[8]||(F[8]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):n.value==="top"?(e.openBlock(),e.createElementBlock("div",Jn,[...F[9]||(F[9]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Zn,[...F[10]||(F[10]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",Qn,e.toDisplayString(n.label),1)],10,Wn)),64))])]),e.createElementVNode("div",vn,[F[12]||(F[12]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",eo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(L,n=>e.createElementVNode("div",{key:n.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(f).primaryColor===n.value}]),style:e.normalizeStyle({backgroundColor:n.value}),title:n.label,onClick:s=>Ve(n.value)},[e.unref(f).primaryColor===n.value?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,to)),64))])]),e.createElementVNode("div",no,[F[17]||(F[17]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",oo,[e.createElementVNode("div",lo,[F[14]||(F[14]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":K.value}]),onClick:le},[...F[13]||(F[13]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",so,[F[16]||(F[16]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(f).isDark}]),onClick:se},[...F[15]||(F[15]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-89179947"]]),ro={class:"top-menu"},ao={class:"top-menu__logo"},io=["src"],co={class:"top-menu__logo-text"},mo={class:"top-menu__menu-content"},po={key:0,class:"top-menu__menu-icon"},fo={key:1,class:"top-menu__menu-char"},uo={class:"top-menu__menu-text"},ho={class:"top-menu__menu-content"},go={class:"top-menu__menu-icon"},_o={key:1,class:"top-menu__menu-char"},No={class:"top-menu__menu-text"},Eo={class:"top-menu__menu-content"},Vo={class:"top-menu__menu-icon"},ko={key:1,class:"top-menu__menu-char"},yo={class:"top-menu__menu-text"},wo={class:"top-menu__menu-content"},xo={class:"top-menu__menu-icon"},Co={key:1,class:"top-menu__menu-char"},Bo={class:"top-menu__menu-text"},bo={class:"top-menu__menu-content"},So={key:0,class:"top-menu__menu-icon"},$o={key:1,class:"top-menu__menu-char"},Io={class:"top-menu__menu-text"},Mo={class:"top-menu__actions"},Lo={key:0,class:"top-menu__search-dropdown"},Do={key:0,class:"top-menu__search-results"},To=["onClick"],Ao={key:0,class:"top-menu__search-icon-item"},Uo={key:1,class:"top-menu__search-char"},zo={class:"top-menu__search-item-title"},Oo={key:1,class:"top-menu__search-item-parent"},Fo={key:1,class:"top-menu__search-empty"},Po=["title"],Ro={class:"top-menu__avatar"},qo={class:"top-menu__user-name"},jo={key:0,class:"top-menu__dropdown"},Ho={class:"top-menu__dropdown-header"},Go={class:"top-menu__dropdown-avatar"},Ko={class:"top-menu__dropdown-info"},Wo={class:"top-menu__dropdown-name"},Xo={class:"top-menu__dropdown-role"},Yo={class:"top-menu__dropdown-menu"},Jo={class:"settings-drawer"},Zo={class:"settings-section"},Qo={class:"settings-layout-options"},vo=["onClick"],el={class:"layout-option__preview"},tl={key:0,class:"layout-preview-sidebar"},nl={key:1,class:"layout-preview-top"},ol={key:2,class:"layout-preview-mix"},ll={class:"layout-option__label"},sl={class:"settings-section"},rl={class:"settings-color-options"},al=["title","onClick"],il={class:"settings-section"},cl={class:"settings-switch-list"},dl={class:"settings-switch-item"},ml={class:"settings-switch-item"},pl=ge(e.defineComponent({__name:"TopMenu",setup(o){const p="/",g=ie.useRoute(),f=ie.useRouter(),u=xe(),y=be(),h=ke(),_=Te(),w=e.computed(()=>g.path),x=(s,c="")=>{const d=[];return s.forEach(l=>{l.children&&l.children.length>0?d.push(...x(l.children,l.menuName)):d.push({...l,parentTitle:c,title:l.menuName,path:l.menuUrl})}),d},k=e.computed(()=>Y.value.trim()?x(u.menuList).filter(c=>c.title.toLowerCase().includes(Y.value.toLowerCase())):[]),M=e.computed(()=>y.isDark?"#1d1e1f":"#fff"),S=e.computed(()=>y.isDark?"#cfd3dc":"#303133"),z=e.computed(()=>"#409eff"),K=e.ref(!1),A=e.ref(null),L=e.ref(!1),C=e.ref(!1),B=e.ref(!1),R=e.ref(!1),Y=e.ref(""),T=e.ref(null),m=s=>{s&&s!==g.path&&f.push(s)},V=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),P=s=>{if(!s||s==="")return"";if(s.startsWith("tineco-icon-")){const d=s.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[d]||d}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[s]||s},J=s=>s?s.charAt(0):"",D=s=>V.has(s),ee=()=>{y.toggleTheme(),C.value=!1},Z=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},q=()=>{L.value=!!document.fullscreenElement},le=()=>{K.value=!K.value},se=()=>{K.value=!1},fe=()=>{R.value=!1,Y.value=""},de=s=>{f.push(s),fe()},me=()=>{C.value=!0},pe=s=>{B.value=s;const c=document.documentElement;s?c.classList.add("grey-mode"):c.classList.remove("grey-mode")},ue=()=>{pe(!B.value),C.value=!1},Se=()=>{y.toggleTheme(),C.value=!1},Ve=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],$e=e.computed(()=>y.layout),I=s=>{y.setLayout(s),C.value=!1},Ie=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],Me=s=>{y.setPrimaryColor(s),C.value=!1},Ce=()=>{se(),f.push("/profile")},W=()=>{se(),f.push("/change-password")},F=()=>{se(),_.logout(),h.clearUserInfo(),u.clearMenu(),f.push("/login")},t=s=>{A.value&&!A.value.contains(s.target)&&se(),T.value&&!T.value.contains(s.target)&&fe()},n=s=>{s.key==="Escape"&&(fe(),se())};return e.onMounted(()=>{document.addEventListener("click",t),document.addEventListener("fullscreenchange",q),document.addEventListener("keydown",n),B.value=document.documentElement.classList.contains("grey-mode")}),e.onUnmounted(()=>{document.removeEventListener("click",t),document.removeEventListener("fullscreenchange",q),document.removeEventListener("keydown",n)}),(s,c)=>{var d;return e.openBlock(),e.createElementBlock("div",ro,[e.createElementVNode("div",ao,[e.createElementVNode("img",{src:`${e.unref(p)}vite.svg`,alt:"Logo",class:"top-menu__logo-img"},null,8,io),e.createElementVNode("span",co,e.toDisplayString(e.unref(y).appName),1)]),e.createVNode(e.unref(Ne.Menu),{"model-value":w.value,mode:"horizontal","background-color":M.value,"text-color":S.value,"active-text-color":z.value,class:"top-menu__menu",onSelect:m},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u).menuList,l=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:l.menuUrl},[l.children&&l.children.length>0?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:l.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",mo,[l.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",po,[D(P(l.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(l.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",fo,e.toDisplayString(J(l.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",uo,e.toDisplayString(l.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.children,a=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:a.menuUrl},[a.children&&a.children.length>0?(e.openBlock(),e.createBlock(e.unref(Ne.SubMenu),{key:0,index:a.menuUrl},{title:e.withCtx(()=>[e.createElementVNode("span",ho,[e.createElementVNode("span",go,[D(P(a.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(a.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",_o,e.toDisplayString(J(a.menuName)),1))]),e.createElementVNode("span",No,e.toDisplayString(a.menuName),1)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.children,i=>(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:i.menuUrl,index:i.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",Eo,[e.createElementVNode("span",Vo,[D(P(i.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(i.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",ko,e.toDisplayString(J(i.menuName)),1))]),e.createElementVNode("span",yo,e.toDisplayString(i.menuName),1)])]),_:2},1032,["index"]))),128))]),_:2},1032,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:a.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",wo,[e.createElementVNode("span",xo,[D(P(a.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(a.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Co,e.toDisplayString(J(a.menuName)),1))]),e.createElementVNode("span",Bo,e.toDisplayString(a.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:2},1032,["index"])):(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:1,index:l.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",bo,[l.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",So,[D(P(l.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(l.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",$o,e.toDisplayString(J(l.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Io,e.toDisplayString(l.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e.createElementVNode("div",Mo,[e.createElementVNode("div",{class:"top-menu__search",ref_key:"searchRef",ref:T},[e.createVNode(e.unref(U.Icon),{name:"search",size:14,class:"top-menu__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=l=>Y.value=l),type:"text",class:"top-menu__search-input",placeholder:"搜索菜单...",onFocus:c[1]||(c[1]=l=>R.value=!0)},null,544),[[e.vModelText,Y.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[R.value&&(k.value.length>0||Y.value)?(e.openBlock(),e.createElementBlock("div",Lo,[k.value.length>0?(e.openBlock(),e.createElementBlock("div",Do,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,l=>(e.openBlock(),e.createElementBlock("div",{key:l.path,class:"top-menu__search-item",onClick:a=>de(l.path)},[l.title!=="首页"?(e.openBlock(),e.createElementBlock("span",Ao,[D(P(l.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:P(l.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Uo,e.toDisplayString(J(l.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",zo,e.toDisplayString(l.title),1),l.parentTitle?(e.openBlock(),e.createElementBlock("span",Oo,e.toDisplayString(l.parentTitle),1)):e.createCommentVNode("",!0)],8,To))),128))])):(e.openBlock(),e.createElementBlock("div",Fo," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"top-menu__action",onClick:Z,title:L.value?"退出全屏":"全屏"},[e.createVNode(e.unref(U.Icon),{name:L.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Po),e.createElementVNode("div",{class:"top-menu__action",onClick:me,title:"换肤设置"},[e.createVNode(e.unref(U.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"top-menu__action",onClick:ee,title:"切换主题"},[e.createVNode(e.unref(U.Icon),{name:e.unref(y).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"top-menu__user",ref_key:"dropdownRef",ref:A},[e.createElementVNode("div",{class:"top-menu__user-trigger",onClick:e.withModifiers(le,["stop"])},[e.createElementVNode("div",Ro,[e.createElementVNode("span",null,e.toDisplayString(((d=e.unref(h).userName)==null?void 0:d.charAt(0))||"U"),1)]),e.createElementVNode("span",qo,e.toDisplayString(e.unref(h).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["top-menu__user-arrow",{"is-active":K.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var l;return[K.value?(e.openBlock(),e.createElementBlock("div",jo,[e.createElementVNode("div",Ho,[e.createElementVNode("div",Go,[e.createElementVNode("span",null,e.toDisplayString(((l=e.unref(h).userName)==null?void 0:l.charAt(0))||"U"),1)]),e.createElementVNode("div",Ko,[e.createElementVNode("div",Wo,e.toDisplayString(e.unref(h).userName),1),e.createElementVNode("div",Xo,e.toDisplayString(e.unref(h).departmentName),1)])]),c[7]||(c[7]=e.createElementVNode("div",{class:"top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",Yo,[e.createElementVNode("div",{class:"top-menu__dropdown-item",onClick:Ce},[e.createVNode(e.unref(U.Icon),{name:"user",size:16}),c[3]||(c[3]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"top-menu__dropdown-item",onClick:W},[e.createVNode(e.unref(U.Icon),{name:"lock",size:16}),c[4]||(c[4]=e.createElementVNode("span",null,"修改密码",-1))]),c[6]||(c[6]=e.createElementVNode("div",{class:"top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"top-menu__dropdown-item top-menu__dropdown-item--danger",onClick:F},[e.createVNode(e.unref(U.Icon),{name:"logout",size:16}),c[5]||(c[5]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(ne.Drawer),{modelValue:C.value,"onUpdate:modelValue":c[2]||(c[2]=l=>C.value=l),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Jo,[e.createElementVNode("div",Zo,[c[11]||(c[11]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",Qo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Ve,l=>e.createElementVNode("div",{key:l.value,class:e.normalizeClass(["layout-option",{"is-active":$e.value===l.value}]),onClick:a=>I(l.value)},[e.createElementVNode("div",el,[l.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",tl,[...c[8]||(c[8]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):l.value==="top"?(e.openBlock(),e.createElementBlock("div",nl,[...c[9]||(c[9]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",ol,[...c[10]||(c[10]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",ll,e.toDisplayString(l.label),1)],10,vo)),64))])]),e.createElementVNode("div",sl,[c[12]||(c[12]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",rl,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Ie,l=>e.createElementVNode("div",{key:l.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(y).primaryColor===l.value}]),style:e.normalizeStyle({backgroundColor:l.value}),title:l.label,onClick:a=>Me(l.value)},[e.unref(y).primaryColor===l.value?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,al)),64))])]),e.createElementVNode("div",il,[c[17]||(c[17]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",cl,[e.createElementVNode("div",dl,[c[14]||(c[14]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":B.value}]),onClick:ue},[...c[13]||(c[13]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",ml,[c[16]||(c[16]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(y).isDark}]),onClick:Se},[...c[15]||(c[15]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-d167d518"]]),fl={class:"mix-top-menu"},ul={class:"mix-top-menu__logo"},hl=["src"],gl={class:"mix-top-menu__logo-text"},_l={class:"mix-top-menu__menu-content"},Nl={key:0,class:"mix-top-menu__menu-icon"},El={key:1,class:"mix-top-menu__menu-char"},Vl={class:"mix-top-menu__menu-text"},kl={class:"mix-top-menu__actions"},yl={key:0,class:"mix-top-menu__search-dropdown"},wl={key:0,class:"mix-top-menu__search-results"},xl=["onClick"],Cl={key:0,class:"mix-top-menu__search-icon-item"},Bl={key:1,class:"mix-top-menu__search-char"},bl={class:"mix-top-menu__search-item-title"},Sl={key:1,class:"mix-top-menu__search-item-parent"},$l={key:1,class:"mix-top-menu__search-empty"},Il=["title"],Ml={class:"mix-top-menu__avatar"},Ll={class:"mix-top-menu__user-name"},Dl={key:0,class:"mix-top-menu__dropdown"},Tl={class:"mix-top-menu__dropdown-header"},Al={class:"mix-top-menu__dropdown-avatar"},Ul={class:"mix-top-menu__dropdown-info"},zl={class:"mix-top-menu__dropdown-name"},Ol={class:"mix-top-menu__dropdown-role"},Fl={class:"mix-top-menu__dropdown-menu"},Pl={class:"settings-drawer"},Rl={class:"settings-section"},ql={class:"settings-layout-options"},jl=["onClick"],Hl={class:"layout-option__preview"},Gl={key:0,class:"layout-preview-sidebar"},Kl={key:1,class:"layout-preview-top"},Wl={key:2,class:"layout-preview-mix"},Xl={class:"layout-option__label"},Yl={class:"settings-section"},Jl={class:"settings-color-options"},Zl=["title","onClick"],Ql={class:"settings-section"},vl={class:"settings-switch-list"},es={class:"settings-switch-item"},ts={class:"settings-switch-item"},ns=ge(e.defineComponent({__name:"MixTopMenu",setup(o){const p="/",g=ie.useRoute(),f=ie.useRouter(),u=xe(),y=be(),h=ke(),_=Te(),w=e.ref(""),x=(l,a="")=>{const i=[];return l.forEach(r=>{r.children&&r.children.length>0?i.push(...x(r.children,r.menuName)):i.push({...r,parentTitle:a,title:r.menuName,path:r.menuUrl})}),i},k=e.computed(()=>P.value.trim()?x(u.menuList).filter(a=>a.title.toLowerCase().includes(P.value.toLowerCase())):[]),M=e.computed(()=>{const l=u.menuList.find(a=>a.menuUrl===w.value);return(l==null?void 0:l.children)||[]}),S=e.computed(()=>u.menuList.find(l=>!!(g.path===l.menuUrl||l.children&&l.children.some(a=>g.path.startsWith(a.menuUrl)||g.path===a.menuUrl)))),z=()=>{S.value?w.value=S.value.menuUrl:u.menuList.length>0&&(w.value=u.menuList[0].menuUrl)},K=l=>{w.value=l;const a=u.menuList.find(i=>i.menuUrl===l);if(a)if(a.children&&a.children.length>0){const i=a.children[0].menuUrl;g.path!==i&&f.push(i)}else g.path!==l&&f.push(l)},A=e.computed(()=>y.isDark?"#1d1e1f":"#fff"),L=e.computed(()=>y.isDark?"#cfd3dc":"#303133"),C=e.computed(()=>"#409eff"),B=e.ref(!1),R=e.ref(null),Y=e.ref(!1),T=e.ref(!1),m=e.ref(!1),V=e.ref(!1),P=e.ref(""),J=e.ref(null);e.watch(()=>g.path,()=>{z(),y.setMixSubMenus(M.value)}),e.watch(()=>u.menuList,l=>{l&&l.length>0&&(z(),y.setMixSubMenus(M.value))},{immediate:!0});const D=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),ee=l=>{if(!l||l==="")return"";if(l.startsWith("tineco-icon-")){const i=l.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[i]||i}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[l]||l},Z=l=>l?l.charAt(0):"",q=l=>D.has(l),le=()=>{y.toggleTheme(),T.value=!1},se=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},fe=()=>{Y.value=!!document.fullscreenElement},de=()=>{B.value=!B.value},me=()=>{B.value=!1},pe=()=>{V.value=!1,P.value=""},ue=l=>{f.push(l),pe()},Se=()=>{T.value=!0},Ve=l=>{m.value=l;const a=document.documentElement;l?a.classList.add("grey-mode"):a.classList.remove("grey-mode")},$e=()=>{Ve(!m.value),T.value=!1},I=()=>{y.toggleTheme(),T.value=!1},Ie=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],Me=e.computed(()=>y.layout),Ce=l=>{y.setLayout(l),T.value=!1},W=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],F=l=>{y.setPrimaryColor(l),T.value=!1},t=()=>{me(),f.push("/profile")},n=()=>{me(),f.push("/change-password")},s=()=>{me(),_.logout(),h.clearUserInfo(),u.clearMenu(),f.push("/login")},c=l=>{R.value&&!R.value.contains(l.target)&&me(),J.value&&!J.value.contains(l.target)&&pe()},d=l=>{l.key==="Escape"&&(pe(),me())};return e.onMounted(()=>{document.addEventListener("click",c),document.addEventListener("fullscreenchange",fe),document.addEventListener("keydown",d),m.value=document.documentElement.classList.contains("grey-mode"),z()}),e.onUnmounted(()=>{document.removeEventListener("click",c),document.removeEventListener("fullscreenchange",fe),document.removeEventListener("keydown",d)}),(l,a)=>{var i;return e.openBlock(),e.createElementBlock("div",fl,[e.createElementVNode("div",ul,[e.createElementVNode("img",{src:`${e.unref(p)}vite.svg`,alt:"Logo",class:"mix-top-menu__logo-img"},null,8,hl),e.createElementVNode("span",gl,e.toDisplayString(e.unref(y).appName),1)]),e.createVNode(e.unref(Ne.Menu),{"model-value":w.value,mode:"horizontal","background-color":A.value,"text-color":L.value,"active-text-color":C.value,class:"mix-top-menu__menu",onSelect:K},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u).menuList,r=>(e.openBlock(),e.createBlock(e.unref(Ne.MenuItem),{key:r.menuUrl,index:r.menuUrl},{default:e.withCtx(()=>[e.createElementVNode("span",_l,[r.menuName!=="首页"?(e.openBlock(),e.createElementBlock("span",Nl,[q(ee(r.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:ee(r.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",El,e.toDisplayString(Z(r.menuName)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",Vl,e.toDisplayString(r.menuName),1)])]),_:2},1032,["index"]))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e.createElementVNode("div",kl,[e.createElementVNode("div",{class:"mix-top-menu__search",ref_key:"searchRef",ref:J},[e.createVNode(e.unref(U.Icon),{name:"search",size:14,class:"mix-top-menu__search-icon"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":a[0]||(a[0]=r=>P.value=r),type:"text",class:"mix-top-menu__search-input",placeholder:"搜索菜单...",onFocus:a[1]||(a[1]=r=>V.value=!0)},null,544),[[e.vModelText,P.value]]),e.createVNode(e.Transition,{name:"search-dropdown"},{default:e.withCtx(()=>[V.value&&(k.value.length>0||P.value)?(e.openBlock(),e.createElementBlock("div",yl,[k.value.length>0?(e.openBlock(),e.createElementBlock("div",wl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,r=>(e.openBlock(),e.createElementBlock("div",{key:r.path,class:"mix-top-menu__search-item",onClick:E=>ue(r.path)},[r.title!=="首页"?(e.openBlock(),e.createElementBlock("span",Cl,[q(ee(r.icon))?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:ee(r.icon),size:16},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",Bl,e.toDisplayString(Z(r.title)),1))])):e.createCommentVNode("",!0),e.createElementVNode("span",bl,e.toDisplayString(r.title),1),r.parentTitle?(e.openBlock(),e.createElementBlock("span",Sl,e.toDisplayString(r.parentTitle),1)):e.createCommentVNode("",!0)],8,xl))),128))])):(e.openBlock(),e.createElementBlock("div",$l," 未找到匹配的菜单 "))])):e.createCommentVNode("",!0)]),_:1})],512),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:se,title:Y.value?"退出全屏":"全屏"},[e.createVNode(e.unref(U.Icon),{name:Y.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,Il),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:Se,title:"换肤设置"},[e.createVNode(e.unref(U.Icon),{name:"skin",size:16})]),e.createElementVNode("div",{class:"mix-top-menu__action",onClick:le,title:"切换主题"},[e.createVNode(e.unref(U.Icon),{name:e.unref(y).isDark?"sun":"moon",size:16},null,8,["name"])]),e.createElementVNode("div",{class:"mix-top-menu__user",ref_key:"dropdownRef",ref:R},[e.createElementVNode("div",{class:"mix-top-menu__user-trigger",onClick:e.withModifiers(de,["stop"])},[e.createElementVNode("div",Ml,[e.createElementVNode("span",null,e.toDisplayString(((i=e.unref(h).userName)==null?void 0:i.charAt(0))||"U"),1)]),e.createElementVNode("span",Ll,e.toDisplayString(e.unref(h).userName),1),e.createElementVNode("span",{class:e.normalizeClass(["mix-top-menu__user-arrow",{"is-active":B.value}])},"▼",2)]),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>{var r;return[B.value?(e.openBlock(),e.createElementBlock("div",Dl,[e.createElementVNode("div",Tl,[e.createElementVNode("div",Al,[e.createElementVNode("span",null,e.toDisplayString(((r=e.unref(h).userName)==null?void 0:r.charAt(0))||"U"),1)]),e.createElementVNode("div",Ul,[e.createElementVNode("div",zl,e.toDisplayString(e.unref(h).userName),1),e.createElementVNode("div",Ol,e.toDisplayString(e.unref(h).departmentName),1)])]),a[7]||(a[7]=e.createElementVNode("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",Fl,[e.createElementVNode("div",{class:"mix-top-menu__dropdown-item",onClick:t},[e.createVNode(e.unref(U.Icon),{name:"user",size:16}),a[3]||(a[3]=e.createElementVNode("span",null,"个人信息",-1))]),e.createElementVNode("div",{class:"mix-top-menu__dropdown-item",onClick:n},[e.createVNode(e.unref(U.Icon),{name:"lock",size:16}),a[4]||(a[4]=e.createElementVNode("span",null,"修改密码",-1))]),a[6]||(a[6]=e.createElementVNode("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e.createElementVNode("div",{class:"mix-top-menu__dropdown-item mix-top-menu__dropdown-item--danger",onClick:s},[e.createVNode(e.unref(U.Icon),{name:"logout",size:16}),a[5]||(a[5]=e.createElementVNode("span",null,"退出登录",-1))])])])):e.createCommentVNode("",!0)]}),_:1})],512)]),e.createVNode(e.unref(ne.Drawer),{modelValue:T.value,"onUpdate:modelValue":a[2]||(a[2]=r=>T.value=r),title:"换肤设置",direction:"rtl",size:"320px"},{default:e.withCtx(()=>[e.createElementVNode("div",Pl,[e.createElementVNode("div",Rl,[a[11]||(a[11]=e.createElementVNode("div",{class:"settings-title"},"布局模式",-1)),e.createElementVNode("div",ql,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Ie,r=>e.createElementVNode("div",{key:r.value,class:e.normalizeClass(["layout-option",{"is-active":Me.value===r.value}]),onClick:E=>Ce(r.value)},[e.createElementVNode("div",Hl,[r.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",Gl,[...a[8]||(a[8]=[e.createElementVNode("div",{class:"preview-aside"},null,-1),e.createElementVNode("div",{class:"preview-main"},[e.createElementVNode("div",{class:"preview-header"}),e.createElementVNode("div",{class:"preview-content"})],-1)])])):r.value==="top"?(e.openBlock(),e.createElementBlock("div",Kl,[...a[9]||(a[9]=[e.createElementVNode("div",{class:"preview-header-full"},null,-1),e.createElementVNode("div",{class:"preview-content-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Wl,[...a[10]||(a[10]=[e.createElementVNode("div",{class:"preview-header-mix"},[e.createElementVNode("div",{class:"preview-mix-left"})],-1),e.createElementVNode("div",{class:"preview-mix-body"},[e.createElementVNode("div",{class:"preview-mix-aside"}),e.createElementVNode("div",{class:"preview-mix-content"})],-1)])]))]),e.createElementVNode("span",Xl,e.toDisplayString(r.label),1)],10,jl)),64))])]),e.createElementVNode("div",Yl,[a[12]||(a[12]=e.createElementVNode("div",{class:"settings-title"},"主题色",-1)),e.createElementVNode("div",Jl,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(W,r=>e.createElementVNode("div",{key:r.value,class:e.normalizeClass(["color-option",{"is-active":e.unref(y).primaryColor===r.value}]),style:e.normalizeStyle({backgroundColor:r.value}),title:r.label,onClick:E=>F(r.value)},[e.unref(y).primaryColor===r.value?(e.openBlock(),e.createBlock(e.unref(U.Icon),{key:0,name:"check",size:12,color:"#fff"})):e.createCommentVNode("",!0)],14,Zl)),64))])]),e.createElementVNode("div",Ql,[a[17]||(a[17]=e.createElementVNode("div",{class:"settings-title"},"功能设置",-1)),e.createElementVNode("div",vl,[e.createElementVNode("div",es,[a[14]||(a[14]=e.createElementVNode("span",null,"灰色模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":m.value}]),onClick:$e},[...a[13]||(a[13]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)]),e.createElementVNode("div",ts,[a[16]||(a[16]=e.createElementVNode("span",null,"暗黑模式",-1)),e.createElementVNode("div",{class:e.normalizeClass(["switch-wrapper",{"is-checked":e.unref(y).isDark}]),onClick:I},[...a[15]||(a[15]=[e.createElementVNode("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-4c1ab09d"]]),os={key:0,class:"layout layout--sidebar"},ls={class:"layout__main"},ss={class:"layout__header"},rs={class:"layout__content"},as={key:1,class:"layout layout--top"},is={class:"layout__top-menu"},cs={class:"layout__main"},ds={class:"layout__content"},ms={key:2,class:"layout layout--mix"},ps={class:"layout__mix-top-menu"},fs={class:"layout__mix-body"},us={class:"layout__content"},ct=ge(e.defineComponent({__name:"index",setup(o){const p=be(),g=xe(),f=e.computed(()=>p.isCollapsed?"64px":"210px"),u=e.computed(()=>p.layout),y=e.computed(()=>u.value==="mix"),h=e.computed(()=>u.value==="sidebar"?g.menuList:u.value==="mix"?p.mixSubMenus:[]),_=e.computed(()=>y.value?h.value.length>0:!1);return(w,x)=>{const k=e.resolveComponent("router-view");return e.openBlock(),e.createElementBlock(e.Fragment,null,[u.value==="sidebar"?(e.openBlock(),e.createElementBlock("div",os,[e.createElementVNode("aside",{class:"layout__aside",style:e.normalizeStyle({width:f.value})},[e.createVNode(it,{"menu-list":h.value,"show-logo":!0,"show-user":!0},null,8,["menu-list"])],4),e.createElementVNode("div",ls,[e.createElementVNode("header",ss,[e.createVNode(It)]),e.createElementVNode("main",rs,[e.createVNode(k)])])])):e.createCommentVNode("",!0),u.value==="top"?(e.openBlock(),e.createElementBlock("div",as,[e.createElementVNode("div",is,[e.createVNode(pl)]),e.createElementVNode("div",cs,[e.createElementVNode("main",ds,[e.createVNode(k)])])])):e.createCommentVNode("",!0),u.value==="mix"?(e.openBlock(),e.createElementBlock("div",ms,[e.createElementVNode("div",ps,[e.createVNode(ns)]),e.createElementVNode("div",fs,[_.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:"layout__aside",style:e.normalizeStyle({width:f.value})},[e.createVNode(it,{"menu-list":h.value,"show-logo":!1,"show-user":!1},null,8,["menu-list"])],4)):e.createCommentVNode("",!0),e.createElementVNode("main",us,[e.createVNode(k)])])])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-fb6a0b14"]]),hs=Object.freeze(Object.defineProperty({__proto__:null,default:ct},Symbol.toStringTag,{value:"Module"})),gs={class:"tabs-wrapper"},_s={class:"tab-label"},Ns=["onClick"],Es=ge(e.defineComponent({__name:"Tabs",setup(o){const p=ie.useRoute(),g=ie.useRouter(),f=e.computed(()=>{const _=[];return p.matched.forEach(w=>{var x;(x=w.meta)!=null&&x.affix&&_.push({name:w.name,title:w.meta.title,path:w.path,affix:!0})}),_}),u=e.computed(()=>p.path),y=_=>{g.push(_)},h=_=>{const w=f.value.find(x=>x.path===_);if(!(w!=null&&w.affix)&&_===u.value){const x=f.value.findIndex(M=>M.path===_),k=f.value[x-1]||f.value[x+1];k&&g.push(k.path)}};return(_,w)=>(e.openBlock(),e.createElementBlock("div",gs,[e.createVNode(e.unref(Ne.Tabs),{modelValue:u.value,"onUpdate:modelValue":w[0]||(w[0]=x=>u.value=x),type:"card",onTabClick:y},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,x=>(e.openBlock(),e.createBlock(e.unref(Ne.TabPane),{key:x.path,name:x.path,label:x.title,closable:!x.affix},{label:e.withCtx(()=>[e.createElementVNode("span",_s,[e.createTextVNode(e.toDisplayString(x.title)+" ",1),x.affix?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",{key:0,class:"tab-close",onClick:e.withModifiers(k=>h(x.path),["stop"])}," ✕ ",8,Ns))])]),_:2},1032,["name","label","closable"]))),128))]),_:1},8,["modelValue"])]))}}),[["__scopeId","data-v-9156d8cd"]]),Vs={},ks={class:"footer"};function ys(o,p){return e.openBlock(),e.createElementBlock("div",ks,[...p[0]||(p[0]=[e.createElementVNode("span",null,"Copyright © 2024 Xto Demo. All Rights Reserved.",-1)])])}const ws=ge(Vs,[["render",ys],["__scopeId","data-v-4852826a"]]);var xs=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Cs(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var Ge={exports:{}},Mt={exports:{}},Lt={exports:{}};(function(o){(function(p){var g,f=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,u=Math.ceil,y=Math.floor,h="[BigNumber Error] ",_=h+"Number primitive has more than 15 significant digits: ",w=1e14,x=14,k=9007199254740991,M=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],S=1e7,z=1e9;function K(m){var V,P,J,D=I.prototype={constructor:I,toString:null,valueOf:null},ee=new I(1),Z=20,q=4,le=-7,se=21,fe=-1e7,de=1e7,me=!1,pe=1,ue=0,Se={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},Ve="0123456789abcdefghijklmnopqrstuvwxyz",$e=!0;function I(t,n){var s,c,d,l,a,i,r,E,N=this;if(!(N instanceof I))return new I(t,n);if(n==null){if(t&&t._isBigNumber===!0){N.s=t.s,!t.c||t.e>de?N.c=N.e=null:t.e<fe?N.c=[N.e=0]:(N.e=t.e,N.c=t.c.slice());return}if((i=typeof t=="number")&&t*0==0){if(N.s=1/t<0?(t=-t,-1):1,t===~~t){for(l=0,a=t;a>=10;a/=10,l++);l>de?N.c=N.e=null:(N.e=l,N.c=[t]);return}E=String(t)}else{if(!f.test(E=String(t)))return J(N,E,i);N.s=E.charCodeAt(0)==45?(E=E.slice(1),-1):1}(l=E.indexOf("."))>-1&&(E=E.replace(".","")),(a=E.search(/e/i))>0?(l<0&&(l=a),l+=+E.slice(a+1),E=E.substring(0,a)):l<0&&(l=E.length)}else{if(B(n,2,Ve.length,"Base"),n==10&&$e)return N=new I(t),W(N,Z+N.e+1,q);if(E=String(t),i=typeof t=="number"){if(t*0!=0)return J(N,E,i,n);if(N.s=1/t<0?(E=E.slice(1),-1):1,I.DEBUG&&E.replace(/^0\.0*|\./,"").length>15)throw Error(_+t)}else N.s=E.charCodeAt(0)===45?(E=E.slice(1),-1):1;for(s=Ve.slice(0,n),l=a=0,r=E.length;a<r;a++)if(s.indexOf(c=E.charAt(a))<0){if(c=="."){if(a>l){l=r;continue}}else if(!d&&(E==E.toUpperCase()&&(E=E.toLowerCase())||E==E.toLowerCase()&&(E=E.toUpperCase()))){d=!0,a=-1,l=0;continue}return J(N,String(t),i,n)}i=!1,E=P(E,n,10,N.s),(l=E.indexOf("."))>-1?E=E.replace(".",""):l=E.length}for(a=0;E.charCodeAt(a)===48;a++);for(r=E.length;E.charCodeAt(--r)===48;);if(E=E.slice(a,++r)){if(r-=a,i&&I.DEBUG&&r>15&&(t>k||t!==y(t)))throw Error(_+N.s*t);if((l=l-a-1)>de)N.c=N.e=null;else if(l<fe)N.c=[N.e=0];else{if(N.e=l,N.c=[],a=(l+1)%x,l<0&&(a+=x),a<r){for(a&&N.c.push(+E.slice(0,a)),r-=x;a<r;)N.c.push(+E.slice(a,a+=x));a=x-(E=E.slice(a)).length}else a-=r;for(;a--;E+="0");N.c.push(+E)}}else N.c=[N.e=0]}I.clone=K,I.ROUND_UP=0,I.ROUND_DOWN=1,I.ROUND_CEIL=2,I.ROUND_FLOOR=3,I.ROUND_HALF_UP=4,I.ROUND_HALF_DOWN=5,I.ROUND_HALF_EVEN=6,I.ROUND_HALF_CEIL=7,I.ROUND_HALF_FLOOR=8,I.EUCLID=9,I.config=I.set=function(t){var n,s;if(t!=null)if(typeof t=="object"){if(t.hasOwnProperty(n="DECIMAL_PLACES")&&(s=t[n],B(s,0,z,n),Z=s),t.hasOwnProperty(n="ROUNDING_MODE")&&(s=t[n],B(s,0,8,n),q=s),t.hasOwnProperty(n="EXPONENTIAL_AT")&&(s=t[n],s&&s.pop?(B(s[0],-z,0,n),B(s[1],0,z,n),le=s[0],se=s[1]):(B(s,-z,z,n),le=-(se=s<0?-s:s))),t.hasOwnProperty(n="RANGE"))if(s=t[n],s&&s.pop)B(s[0],-z,-1,n),B(s[1],1,z,n),fe=s[0],de=s[1];else if(B(s,-z,z,n),s)fe=-(de=s<0?-s:s);else throw Error(h+n+" cannot be zero: "+s);if(t.hasOwnProperty(n="CRYPTO"))if(s=t[n],s===!!s)if(s)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))me=s;else throw me=!s,Error(h+"crypto unavailable");else me=s;else throw Error(h+n+" not true or false: "+s);if(t.hasOwnProperty(n="MODULO_MODE")&&(s=t[n],B(s,0,9,n),pe=s),t.hasOwnProperty(n="POW_PRECISION")&&(s=t[n],B(s,0,z,n),ue=s),t.hasOwnProperty(n="FORMAT"))if(s=t[n],typeof s=="object")Se=s;else throw Error(h+n+" not an object: "+s);if(t.hasOwnProperty(n="ALPHABET"))if(s=t[n],typeof s=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(s))$e=s.slice(0,10)=="0123456789",Ve=s;else throw Error(h+n+" invalid: "+s)}else throw Error(h+"Object expected: "+t);return{DECIMAL_PLACES:Z,ROUNDING_MODE:q,EXPONENTIAL_AT:[le,se],RANGE:[fe,de],CRYPTO:me,MODULO_MODE:pe,POW_PRECISION:ue,FORMAT:Se,ALPHABET:Ve}},I.isBigNumber=function(t){if(!t||t._isBigNumber!==!0)return!1;if(!I.DEBUG)return!0;var n,s,c=t.c,d=t.e,l=t.s;e:if({}.toString.call(c)=="[object Array]"){if((l===1||l===-1)&&d>=-z&&d<=z&&d===y(d)){if(c[0]===0){if(d===0&&c.length===1)return!0;break e}if(n=(d+1)%x,n<1&&(n+=x),String(c[0]).length==n){for(n=0;n<c.length;n++)if(s=c[n],s<0||s>=w||s!==y(s))break e;if(s!==0)return!0}}}else if(c===null&&d===null&&(l===null||l===1||l===-1))return!0;throw Error(h+"Invalid BigNumber: "+t)},I.maximum=I.max=function(){return Me(arguments,-1)},I.minimum=I.min=function(){return Me(arguments,1)},I.random=function(){var t=9007199254740992,n=Math.random()*t&2097151?function(){return y(Math.random()*t)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(s){var c,d,l,a,i,r=0,E=[],N=new I(ee);if(s==null?s=Z:B(s,0,z),a=u(s/x),me)if(crypto.getRandomValues){for(c=crypto.getRandomValues(new Uint32Array(a*=2));r<a;)i=c[r]*131072+(c[r+1]>>>11),i>=9e15?(d=crypto.getRandomValues(new Uint32Array(2)),c[r]=d[0],c[r+1]=d[1]):(E.push(i%1e14),r+=2);r=a/2}else if(crypto.randomBytes){for(c=crypto.randomBytes(a*=7);r<a;)i=(c[r]&31)*281474976710656+c[r+1]*1099511627776+c[r+2]*4294967296+c[r+3]*16777216+(c[r+4]<<16)+(c[r+5]<<8)+c[r+6],i>=9e15?crypto.randomBytes(7).copy(c,r):(E.push(i%1e14),r+=7);r=a/7}else throw me=!1,Error(h+"crypto unavailable");if(!me)for(;r<a;)i=n(),i<9e15&&(E[r++]=i%1e14);for(a=E[--r],s%=x,a&&s&&(i=M[x-s],E[r]=y(a/i)*i);E[r]===0;E.pop(),r--);if(r<0)E=[l=0];else{for(l=-1;E[0]===0;E.splice(0,1),l-=x);for(r=1,i=E[0];i>=10;i/=10,r++);r<x&&(l-=x-r)}return N.e=l,N.c=E,N}}(),I.sum=function(){for(var t=1,n=arguments,s=new I(n[0]);t<n.length;)s=s.plus(n[t++]);return s},P=function(){var t="0123456789";function n(s,c,d,l){for(var a,i=[0],r,E=0,N=s.length;E<N;){for(r=i.length;r--;i[r]*=c);for(i[0]+=l.indexOf(s.charAt(E++)),a=0;a<i.length;a++)i[a]>d-1&&(i[a+1]==null&&(i[a+1]=0),i[a+1]+=i[a]/d|0,i[a]%=d)}return i.reverse()}return function(s,c,d,l,a){var i,r,E,N,$,j,H,v,re=s.indexOf("."),ce=Z,Q=q;for(re>=0&&(N=ue,ue=0,s=s.replace(".",""),v=new I(c),j=v.pow(s.length-re),ue=N,v.c=n(T(L(j.c),j.e,"0"),10,d,t),v.e=v.c.length),H=n(s,c,d,a?(i=Ve,t):(i=t,Ve)),E=N=H.length;H[--N]==0;H.pop());if(!H[0])return i.charAt(0);if(re<0?--E:(j.c=H,j.e=E,j.s=l,j=V(j,v,ce,Q,d),H=j.c,$=j.r,E=j.e),r=E+ce+1,re=H[r],N=d/2,$=$||r<0||H[r+1]!=null,$=Q<4?(re!=null||$)&&(Q==0||Q==(j.s<0?3:2)):re>N||re==N&&(Q==4||$||Q==6&&H[r-1]&1||Q==(j.s<0?8:7)),r<1||!H[0])s=$?T(i.charAt(1),-ce,i.charAt(0)):i.charAt(0);else{if(H.length=r,$)for(--d;++H[--r]>d;)H[r]=0,r||(++E,H=[1].concat(H));for(N=H.length;!H[--N];);for(re=0,s="";re<=N;s+=i.charAt(H[re++]));s=T(s,E,i.charAt(0))}return s}}(),V=function(){function t(c,d,l){var a,i,r,E,N=0,$=c.length,j=d%S,H=d/S|0;for(c=c.slice();$--;)r=c[$]%S,E=c[$]/S|0,a=H*r+E*j,i=j*r+a%S*S+N,N=(i/l|0)+(a/S|0)+H*E,c[$]=i%l;return N&&(c=[N].concat(c)),c}function n(c,d,l,a){var i,r;if(l!=a)r=l>a?1:-1;else for(i=r=0;i<l;i++)if(c[i]!=d[i]){r=c[i]>d[i]?1:-1;break}return r}function s(c,d,l,a){for(var i=0;l--;)c[l]-=i,i=c[l]<d[l]?1:0,c[l]=i*a+c[l]-d[l];for(;!c[0]&&c.length>1;c.splice(0,1));}return function(c,d,l,a,i){var r,E,N,$,j,H,v,re,ce,Q,te,he,Xe,ut,ht,Be,Re,ye=c.s==d.s?1:-1,_e=c.c,ae=d.c;if(!_e||!_e[0]||!ae||!ae[0])return new I(!c.s||!d.s||(_e?ae&&_e[0]==ae[0]:!ae)?NaN:_e&&_e[0]==0||!ae?ye*0:ye/0);for(re=new I(ye),ce=re.c=[],E=c.e-d.e,ye=l+E+1,i||(i=w,E=A(c.e/x)-A(d.e/x),ye=ye/x|0),N=0;ae[N]==(_e[N]||0);N++);if(ae[N]>(_e[N]||0)&&E--,ye<0)ce.push(1),$=!0;else{for(ut=_e.length,Be=ae.length,N=0,ye+=2,j=y(i/(ae[0]+1)),j>1&&(ae=t(ae,j,i),_e=t(_e,j,i),Be=ae.length,ut=_e.length),Xe=Be,Q=_e.slice(0,Be),te=Q.length;te<Be;Q[te++]=0);Re=ae.slice(),Re=[0].concat(Re),ht=ae[0],ae[1]>=i/2&&ht++;do{if(j=0,r=n(ae,Q,Be,te),r<0){if(he=Q[0],Be!=te&&(he=he*i+(Q[1]||0)),j=y(he/ht),j>1)for(j>=i&&(j=i-1),H=t(ae,j,i),v=H.length,te=Q.length;n(H,Q,v,te)==1;)j--,s(H,Be<v?Re:ae,v,i),v=H.length,r=1;else j==0&&(r=j=1),H=ae.slice(),v=H.length;if(v<te&&(H=[0].concat(H)),s(Q,H,te,i),te=Q.length,r==-1)for(;n(ae,Q,Be,te)<1;)j++,s(Q,Be<te?Re:ae,te,i),te=Q.length}else r===0&&(j++,Q=[0]);ce[N++]=j,Q[0]?Q[te++]=_e[Xe]||0:(Q=[_e[Xe]],te=1)}while((Xe++<ut||Q[0]!=null)&&ye--);$=Q[0]!=null,ce[0]||ce.splice(0,1)}if(i==w){for(N=1,ye=ce[0];ye>=10;ye/=10,N++);W(re,l+(re.e=N+E*x-1)+1,a,$)}else re.e=E,re.r=+$;return re}}();function Ie(t,n,s,c){var d,l,a,i,r;if(s==null?s=q:B(s,0,8),!t.c)return t.toString();if(d=t.c[0],a=t.e,n==null)r=L(t.c),r=c==1||c==2&&(a<=le||a>=se)?Y(r,a):T(r,a,"0");else if(t=W(new I(t),n,s),l=t.e,r=L(t.c),i=r.length,c==1||c==2&&(n<=l||l<=le)){for(;i<n;r+="0",i++);r=Y(r,l)}else if(n-=a+(c===2&&l>a),r=T(r,l,"0"),l+1>i){if(--n>0)for(r+=".";n--;r+="0");}else if(n+=l-i,n>0)for(l+1==i&&(r+=".");n--;r+="0");return t.s<0&&d?"-"+r:r}function Me(t,n){for(var s,c,d=1,l=new I(t[0]);d<t.length;d++)c=new I(t[d]),(!c.s||(s=C(l,c))===n||s===0&&l.s===n)&&(l=c);return l}function Ce(t,n,s){for(var c=1,d=n.length;!n[--d];n.pop());for(d=n[0];d>=10;d/=10,c++);return(s=c+s*x-1)>de?t.c=t.e=null:s<fe?t.c=[t.e=0]:(t.e=s,t.c=n),t}J=function(){var t=/^(-?)0([xbo])(?=\w[\w.]*$)/i,n=/^([^.]+)\.$/,s=/^\.([^.]+)$/,c=/^-?(Infinity|NaN)$/,d=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(l,a,i,r){var E,N=i?a:a.replace(d,"");if(c.test(N))l.s=isNaN(N)?null:N<0?-1:1;else{if(!i&&(N=N.replace(t,function($,j,H){return E=(H=H.toLowerCase())=="x"?16:H=="b"?2:8,!r||r==E?j:$}),r&&(E=r,N=N.replace(n,"$1").replace(s,"0.$1")),a!=N))return new I(N,E);if(I.DEBUG)throw Error(h+"Not a"+(r?" base "+r:"")+" number: "+a);l.s=null}l.c=l.e=null}}();function W(t,n,s,c){var d,l,a,i,r,E,N,$=t.c,j=M;if($){e:{for(d=1,i=$[0];i>=10;i/=10,d++);if(l=n-d,l<0)l+=x,a=n,r=$[E=0],N=y(r/j[d-a-1]%10);else if(E=u((l+1)/x),E>=$.length)if(c){for(;$.length<=E;$.push(0));r=N=0,d=1,l%=x,a=l-x+1}else break e;else{for(r=i=$[E],d=1;i>=10;i/=10,d++);l%=x,a=l-x+d,N=a<0?0:y(r/j[d-a-1]%10)}if(c=c||n<0||$[E+1]!=null||(a<0?r:r%j[d-a-1]),c=s<4?(N||c)&&(s==0||s==(t.s<0?3:2)):N>5||N==5&&(s==4||c||s==6&&(l>0?a>0?r/j[d-a]:0:$[E-1])%10&1||s==(t.s<0?8:7)),n<1||!$[0])return $.length=0,c?(n-=t.e+1,$[0]=j[(x-n%x)%x],t.e=-n||0):$[0]=t.e=0,t;if(l==0?($.length=E,i=1,E--):($.length=E+1,i=j[x-l],$[E]=a>0?y(r/j[d-a]%j[a])*i:0),c)for(;;)if(E==0){for(l=1,a=$[0];a>=10;a/=10,l++);for(a=$[0]+=i,i=1;a>=10;a/=10,i++);l!=i&&(t.e++,$[0]==w&&($[0]=1));break}else{if($[E]+=i,$[E]!=w)break;$[E--]=0,i=1}for(l=$.length;$[--l]===0;$.pop());}t.e>de?t.c=t.e=null:t.e<fe&&(t.c=[t.e=0])}return t}function F(t){var n,s=t.e;return s===null?t.toString():(n=L(t.c),n=s<=le||s>=se?Y(n,s):T(n,s,"0"),t.s<0?"-"+n:n)}return D.absoluteValue=D.abs=function(){var t=new I(this);return t.s<0&&(t.s=1),t},D.comparedTo=function(t,n){return C(this,new I(t,n))},D.decimalPlaces=D.dp=function(t,n){var s,c,d,l=this;if(t!=null)return B(t,0,z),n==null?n=q:B(n,0,8),W(new I(l),t+l.e+1,n);if(!(s=l.c))return null;if(c=((d=s.length-1)-A(this.e/x))*x,d=s[d])for(;d%10==0;d/=10,c--);return c<0&&(c=0),c},D.dividedBy=D.div=function(t,n){return V(this,new I(t,n),Z,q)},D.dividedToIntegerBy=D.idiv=function(t,n){return V(this,new I(t,n),0,1)},D.exponentiatedBy=D.pow=function(t,n){var s,c,d,l,a,i,r,E,N,$=this;if(t=new I(t),t.c&&!t.isInteger())throw Error(h+"Exponent not an integer: "+F(t));if(n!=null&&(n=new I(n)),i=t.e>14,!$.c||!$.c[0]||$.c[0]==1&&!$.e&&$.c.length==1||!t.c||!t.c[0])return N=new I(Math.pow(+F($),i?t.s*(2-R(t)):+F(t))),n?N.mod(n):N;if(r=t.s<0,n){if(n.c?!n.c[0]:!n.s)return new I(NaN);c=!r&&$.isInteger()&&n.isInteger(),c&&($=$.mod(n))}else{if(t.e>9&&($.e>0||$.e<-1||($.e==0?$.c[0]>1||i&&$.c[1]>=24e7:$.c[0]<8e13||i&&$.c[0]<=9999975e7)))return l=$.s<0&&R(t)?-0:0,$.e>-1&&(l=1/l),new I(r?1/l:l);ue&&(l=u(ue/x+2))}for(i?(s=new I(.5),r&&(t.s=1),E=R(t)):(d=Math.abs(+F(t)),E=d%2),N=new I(ee);;){if(E){if(N=N.times($),!N.c)break;l?N.c.length>l&&(N.c.length=l):c&&(N=N.mod(n))}if(d){if(d=y(d/2),d===0)break;E=d%2}else if(t=t.times(s),W(t,t.e+1,1),t.e>14)E=R(t);else{if(d=+F(t),d===0)break;E=d%2}$=$.times($),l?$.c&&$.c.length>l&&($.c.length=l):c&&($=$.mod(n))}return c?N:(r&&(N=ee.div(N)),n?N.mod(n):l?W(N,ue,q,a):N)},D.integerValue=function(t){var n=new I(this);return t==null?t=q:B(t,0,8),W(n,n.e+1,t)},D.isEqualTo=D.eq=function(t,n){return C(this,new I(t,n))===0},D.isFinite=function(){return!!this.c},D.isGreaterThan=D.gt=function(t,n){return C(this,new I(t,n))>0},D.isGreaterThanOrEqualTo=D.gte=function(t,n){return(n=C(this,new I(t,n)))===1||n===0},D.isInteger=function(){return!!this.c&&A(this.e/x)>this.c.length-2},D.isLessThan=D.lt=function(t,n){return C(this,new I(t,n))<0},D.isLessThanOrEqualTo=D.lte=function(t,n){return(n=C(this,new I(t,n)))===-1||n===0},D.isNaN=function(){return!this.s},D.isNegative=function(){return this.s<0},D.isPositive=function(){return this.s>0},D.isZero=function(){return!!this.c&&this.c[0]==0},D.minus=function(t,n){var s,c,d,l,a=this,i=a.s;if(t=new I(t,n),n=t.s,!i||!n)return new I(NaN);if(i!=n)return t.s=-n,a.plus(t);var r=a.e/x,E=t.e/x,N=a.c,$=t.c;if(!r||!E){if(!N||!$)return N?(t.s=-n,t):new I($?a:NaN);if(!N[0]||!$[0])return $[0]?(t.s=-n,t):new I(N[0]?a:q==3?-0:0)}if(r=A(r),E=A(E),N=N.slice(),i=r-E){for((l=i<0)?(i=-i,d=N):(E=r,d=$),d.reverse(),n=i;n--;d.push(0));d.reverse()}else for(c=(l=(i=N.length)<(n=$.length))?i:n,i=n=0;n<c;n++)if(N[n]!=$[n]){l=N[n]<$[n];break}if(l&&(d=N,N=$,$=d,t.s=-t.s),n=(c=$.length)-(s=N.length),n>0)for(;n--;N[s++]=0);for(n=w-1;c>i;){if(N[--c]<$[c]){for(s=c;s&&!N[--s];N[s]=n);--N[s],N[c]+=w}N[c]-=$[c]}for(;N[0]==0;N.splice(0,1),--E);return N[0]?Ce(t,N,E):(t.s=q==3?-1:1,t.c=[t.e=0],t)},D.modulo=D.mod=function(t,n){var s,c,d=this;return t=new I(t,n),!d.c||!t.s||t.c&&!t.c[0]?new I(NaN):!t.c||d.c&&!d.c[0]?new I(d):(pe==9?(c=t.s,t.s=1,s=V(d,t,0,3),t.s=c,s.s*=c):s=V(d,t,0,pe),t=d.minus(s.times(t)),!t.c[0]&&pe==1&&(t.s=d.s),t)},D.multipliedBy=D.times=function(t,n){var s,c,d,l,a,i,r,E,N,$,j,H,v,re,ce,Q=this,te=Q.c,he=(t=new I(t,n)).c;if(!te||!he||!te[0]||!he[0])return!Q.s||!t.s||te&&!te[0]&&!he||he&&!he[0]&&!te?t.c=t.e=t.s=null:(t.s*=Q.s,!te||!he?t.c=t.e=null:(t.c=[0],t.e=0)),t;for(c=A(Q.e/x)+A(t.e/x),t.s*=Q.s,r=te.length,$=he.length,r<$&&(v=te,te=he,he=v,d=r,r=$,$=d),d=r+$,v=[];d--;v.push(0));for(re=w,ce=S,d=$;--d>=0;){for(s=0,j=he[d]%ce,H=he[d]/ce|0,a=r,l=d+a;l>d;)E=te[--a]%ce,N=te[a]/ce|0,i=H*E+N*j,E=j*E+i%ce*ce+v[l]+s,s=(E/re|0)+(i/ce|0)+H*N,v[l--]=E%re;v[l]=s}return s?++c:v.splice(0,1),Ce(t,v,c)},D.negated=function(){var t=new I(this);return t.s=-t.s||null,t},D.plus=function(t,n){var s,c=this,d=c.s;if(t=new I(t,n),n=t.s,!d||!n)return new I(NaN);if(d!=n)return t.s=-n,c.minus(t);var l=c.e/x,a=t.e/x,i=c.c,r=t.c;if(!l||!a){if(!i||!r)return new I(d/0);if(!i[0]||!r[0])return r[0]?t:new I(i[0]?c:d*0)}if(l=A(l),a=A(a),i=i.slice(),d=l-a){for(d>0?(a=l,s=r):(d=-d,s=i),s.reverse();d--;s.push(0));s.reverse()}for(d=i.length,n=r.length,d-n<0&&(s=r,r=i,i=s,n=d),d=0;n;)d=(i[--n]=i[n]+r[n]+d)/w|0,i[n]=w===i[n]?0:i[n]%w;return d&&(i=[d].concat(i),++a),Ce(t,i,a)},D.precision=D.sd=function(t,n){var s,c,d,l=this;if(t!=null&&t!==!!t)return B(t,1,z),n==null?n=q:B(n,0,8),W(new I(l),t,n);if(!(s=l.c))return null;if(d=s.length-1,c=d*x+1,d=s[d]){for(;d%10==0;d/=10,c--);for(d=s[0];d>=10;d/=10,c++);}return t&&l.e+1>c&&(c=l.e+1),c},D.shiftedBy=function(t){return B(t,-k,k),this.times("1e"+t)},D.squareRoot=D.sqrt=function(){var t,n,s,c,d,l=this,a=l.c,i=l.s,r=l.e,E=Z+4,N=new I("0.5");if(i!==1||!a||!a[0])return new I(!i||i<0&&(!a||a[0])?NaN:a?l:1/0);if(i=Math.sqrt(+F(l)),i==0||i==1/0?(n=L(a),(n.length+r)%2==0&&(n+="0"),i=Math.sqrt(+n),r=A((r+1)/2)-(r<0||r%2),i==1/0?n="5e"+r:(n=i.toExponential(),n=n.slice(0,n.indexOf("e")+1)+r),s=new I(n)):s=new I(i+""),s.c[0]){for(r=s.e,i=r+E,i<3&&(i=0);;)if(d=s,s=N.times(d.plus(V(l,d,E,1))),L(d.c).slice(0,i)===(n=L(s.c)).slice(0,i))if(s.e<r&&--i,n=n.slice(i-3,i+1),n=="9999"||!c&&n=="4999"){if(!c&&(W(d,d.e+Z+2,0),d.times(d).eq(l))){s=d;break}E+=4,i+=4,c=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(W(s,s.e+Z+2,1),t=!s.times(s).eq(l));break}}return W(s,s.e+Z+1,q,t)},D.toExponential=function(t,n){return t!=null&&(B(t,0,z),t++),Ie(this,t,n,1)},D.toFixed=function(t,n){return t!=null&&(B(t,0,z),t=t+this.e+1),Ie(this,t,n)},D.toFormat=function(t,n,s){var c,d=this;if(s==null)t!=null&&n&&typeof n=="object"?(s=n,n=null):t&&typeof t=="object"?(s=t,t=n=null):s=Se;else if(typeof s!="object")throw Error(h+"Argument not an object: "+s);if(c=d.toFixed(t,n),d.c){var l,a=c.split("."),i=+s.groupSize,r=+s.secondaryGroupSize,E=s.groupSeparator||"",N=a[0],$=a[1],j=d.s<0,H=j?N.slice(1):N,v=H.length;if(r&&(l=i,i=r,r=l,v-=l),i>0&&v>0){for(l=v%i||i,N=H.substr(0,l);l<v;l+=i)N+=E+H.substr(l,i);r>0&&(N+=E+H.slice(l)),j&&(N="-"+N)}c=$?N+(s.decimalSeparator||"")+((r=+s.fractionGroupSize)?$.replace(new RegExp("\\d{"+r+"}\\B","g"),"$&"+(s.fractionGroupSeparator||"")):$):N}return(s.prefix||"")+c+(s.suffix||"")},D.toFraction=function(t){var n,s,c,d,l,a,i,r,E,N,$,j,H=this,v=H.c;if(t!=null&&(i=new I(t),!i.isInteger()&&(i.c||i.s!==1)||i.lt(ee)))throw Error(h+"Argument "+(i.isInteger()?"out of range: ":"not an integer: ")+F(i));if(!v)return new I(H);for(n=new I(ee),E=s=new I(ee),c=r=new I(ee),j=L(v),l=n.e=j.length-H.e-1,n.c[0]=M[(a=l%x)<0?x+a:a],t=!t||i.comparedTo(n)>0?l>0?n:E:i,a=de,de=1/0,i=new I(j),r.c[0]=0;N=V(i,n,0,1),d=s.plus(N.times(c)),d.comparedTo(t)!=1;)s=c,c=d,E=r.plus(N.times(d=E)),r=d,n=i.minus(N.times(d=n)),i=d;return d=V(t.minus(s),c,0,1),r=r.plus(d.times(E)),s=s.plus(d.times(c)),r.s=E.s=H.s,l=l*2,$=V(E,c,l,q).minus(H).abs().comparedTo(V(r,s,l,q).minus(H).abs())<1?[E,c]:[r,s],de=a,$},D.toNumber=function(){return+F(this)},D.toPrecision=function(t,n){return t!=null&&B(t,1,z),Ie(this,t,n,2)},D.toString=function(t){var n,s=this,c=s.s,d=s.e;return d===null?c?(n="Infinity",c<0&&(n="-"+n)):n="NaN":(t==null?n=d<=le||d>=se?Y(L(s.c),d):T(L(s.c),d,"0"):t===10&&$e?(s=W(new I(s),Z+d+1,q),n=T(L(s.c),s.e,"0")):(B(t,2,Ve.length,"Base"),n=P(T(L(s.c),d,"0"),10,t,c,!0)),c<0&&s.c[0]&&(n="-"+n)),n},D.valueOf=D.toJSON=function(){return F(this)},D._isBigNumber=!0,m!=null&&I.set(m),I}function A(m){var V=m|0;return m>0||m===V?V:V-1}function L(m){for(var V,P,J=1,D=m.length,ee=m[0]+"";J<D;){for(V=m[J++]+"",P=x-V.length;P--;V="0"+V);ee+=V}for(D=ee.length;ee.charCodeAt(--D)===48;);return ee.slice(0,D+1||1)}function C(m,V){var P,J,D=m.c,ee=V.c,Z=m.s,q=V.s,le=m.e,se=V.e;if(!Z||!q)return null;if(P=D&&!D[0],J=ee&&!ee[0],P||J)return P?J?0:-q:Z;if(Z!=q)return Z;if(P=Z<0,J=le==se,!D||!ee)return J?0:!D^P?1:-1;if(!J)return le>se^P?1:-1;for(q=(le=D.length)<(se=ee.length)?le:se,Z=0;Z<q;Z++)if(D[Z]!=ee[Z])return D[Z]>ee[Z]^P?1:-1;return le==se?0:le>se^P?1:-1}function B(m,V,P,J){if(m<V||m>P||m!==y(m))throw Error(h+(J||"Argument")+(typeof m=="number"?m<V||m>P?" out of range: ":" not an integer: ":" not a primitive number: ")+String(m))}function R(m){var V=m.c.length-1;return A(m.e/x)==V&&m.c[V]%2!=0}function Y(m,V){return(m.length>1?m.charAt(0)+"."+m.slice(1):m)+(V<0?"e":"e+")+V}function T(m,V,P){var J,D;if(V<0){for(D=P+".";++V;D+=P);m=D+m}else if(J=m.length,++V>J){for(D=P,V-=J;--V;D+=P);m+=D}else V<J&&(m=m.slice(0,V)+"."+m.slice(V));return m}g=K(),g.default=g.BigNumber=g,o.exports?o.exports=g:(p||(p=typeof self<"u"&&self?self:window),p.BigNumber=g)})(xs)})(Lt);var Dt=Lt.exports;(function(o){var p=Dt,g=o.exports;(function(){var f=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,u,y,h={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},_;function w(k){return f.lastIndex=0,f.test(k)?'"'+k.replace(f,function(M){var S=h[M];return typeof S=="string"?S:"\\u"+("0000"+M.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+k+'"'}function x(k,M){var S,z,K,A,L=u,C,B=M[k],R=B!=null&&(B instanceof p||p.isBigNumber(B));switch(B&&typeof B=="object"&&typeof B.toJSON=="function"&&(B=B.toJSON(k)),typeof _=="function"&&(B=_.call(M,k,B)),typeof B){case"string":return R?B:w(B);case"number":return isFinite(B)?String(B):"null";case"boolean":case"null":case"bigint":return String(B);case"object":if(!B)return"null";if(u+=y,C=[],Object.prototype.toString.apply(B)==="[object Array]"){for(A=B.length,S=0;S<A;S+=1)C[S]=x(S,B)||"null";return K=C.length===0?"[]":u?`[
|
|
2
|
+
`+u+C.join(`,
|
|
3
|
+
`+u)+`
|
|
4
|
+
`+L+"]":"["+C.join(",")+"]",u=L,K}if(_&&typeof _=="object")for(A=_.length,S=0;S<A;S+=1)typeof _[S]=="string"&&(z=_[S],K=x(z,B),K&&C.push(w(z)+(u?": ":":")+K));else Object.keys(B).forEach(function(Y){var T=x(Y,B);T&&C.push(w(Y)+(u?": ":":")+T)});return K=C.length===0?"{}":u?`{
|
|
5
|
+
`+u+C.join(`,
|
|
6
|
+
`+u)+`
|
|
7
|
+
`+L+"}":"{"+C.join(",")+"}",u=L,K}}typeof g.stringify!="function"&&(g.stringify=function(k,M,S){var z;if(u="",y="",typeof S=="number")for(z=0;z<S;z+=1)y+=" ";else typeof S=="string"&&(y=S);if(_=M,M&&typeof M!="function"&&(typeof M!="object"||typeof M.length!="number"))throw new Error("JSON.stringify");return x("",{"":k})})})()})(Mt);var Bs=Mt.exports,Ke=null;const bs=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,Ss=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/;var $s=function(o){var p={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(o!=null){if(o.strict===!0&&(p.strict=!0),o.storeAsString===!0&&(p.storeAsString=!0),p.alwaysParseAsBig=o.alwaysParseAsBig===!0?o.alwaysParseAsBig:!1,p.useNativeBigInt=o.useNativeBigInt===!0?o.useNativeBigInt:!1,typeof o.constructorAction<"u")if(o.constructorAction==="error"||o.constructorAction==="ignore"||o.constructorAction==="preserve")p.constructorAction=o.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${o.constructorAction}`);if(typeof o.protoAction<"u")if(o.protoAction==="error"||o.protoAction==="ignore"||o.protoAction==="preserve")p.protoAction=o.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${o.protoAction}`)}var g,f,u={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
8
|
+
`,r:"\r",t:" "},y,h=function(A){throw{name:"SyntaxError",message:A,at:g,text:y}},_=function(A){return A&&A!==f&&h("Expected '"+A+"' instead of '"+f+"'"),f=y.charAt(g),g+=1,f},w=function(){var A,L="";for(f==="-"&&(L="-",_("-"));f>="0"&&f<="9";)L+=f,_();if(f===".")for(L+=".";_()&&f>="0"&&f<="9";)L+=f;if(f==="e"||f==="E")for(L+=f,_(),(f==="-"||f==="+")&&(L+=f,_());f>="0"&&f<="9";)L+=f,_();if(A=+L,!isFinite(A))h("Bad number");else return Ke==null&&(Ke=Dt),L.length>15?p.storeAsString?L:p.useNativeBigInt?BigInt(L):new Ke(L):p.alwaysParseAsBig?p.useNativeBigInt?BigInt(A):new Ke(A):A},x=function(){var A,L,C="",B;if(f==='"')for(var R=g;_();){if(f==='"')return g-1>R&&(C+=y.substring(R,g-1)),_(),C;if(f==="\\"){if(g-1>R&&(C+=y.substring(R,g-1)),_(),f==="u"){for(B=0,L=0;L<4&&(A=parseInt(_(),16),!!isFinite(A));L+=1)B=B*16+A;C+=String.fromCharCode(B)}else if(typeof u[f]=="string")C+=u[f];else break;R=g}}h("Bad string")},k=function(){for(;f&&f<=" ";)_()},M=function(){switch(f){case"t":return _("t"),_("r"),_("u"),_("e"),!0;case"f":return _("f"),_("a"),_("l"),_("s"),_("e"),!1;case"n":return _("n"),_("u"),_("l"),_("l"),null}h("Unexpected '"+f+"'")},S,z=function(){var A=[];if(f==="["){if(_("["),k(),f==="]")return _("]"),A;for(;f;){if(A.push(S()),k(),f==="]")return _("]"),A;_(","),k()}}h("Bad array")},K=function(){var A,L=Object.create(null);if(f==="{"){if(_("{"),k(),f==="}")return _("}"),L;for(;f;){if(A=x(),k(),_(":"),p.strict===!0&&Object.hasOwnProperty.call(L,A)&&h('Duplicate key "'+A+'"'),bs.test(A)===!0?p.protoAction==="error"?h("Object contains forbidden prototype property"):p.protoAction==="ignore"?S():L[A]=S():Ss.test(A)===!0?p.constructorAction==="error"?h("Object contains forbidden constructor property"):p.constructorAction==="ignore"?S():L[A]=S():L[A]=S(),k(),f==="}")return _("}"),L;_(","),k()}}h("Bad object")};return S=function(){switch(k(),f){case"{":return K();case"[":return z();case'"':return x();case"-":return w();default:return f>="0"&&f<="9"?w():M()}},function(A,L){var C;return y=A+"",g=0,f=" ",C=S(),k(),f&&h("Syntax error"),typeof L=="function"?function B(R,Y){var T,m=R[Y];return m&&typeof m=="object"&&Object.keys(m).forEach(function(V){T=B(m,V),T!==void 0?m[V]=T:delete m[V]}),L.call(R,Y,m)}({"":C},""):C}},Is=$s,Tt=Bs.stringify,At=Is;Ge.exports=function(o){return{parse:At(o),stringify:Tt}},Ge.exports.parse=At(),Ge.exports.stringify=Tt;var Ms=Ge.exports;const Ls=Cs(Ms)({storeAsString:!0});let Ut;function Ds(o){Ut=o,Le&&(Le.defaults.baseURL=o)}const Le=(()=>{const o=Jt.create({timeout:3e4,headers:{"Content-Type":"application/json"},transformResponse:[p=>{if(typeof p=="string")try{return Ls.parse(p)}catch{return p}return p}]});return o.interceptors.request.use(p=>{const g=Ut||void 0;g&&!p.baseURL&&(p.baseURL=g);const f=Pe(),u=kt()||"Bearer";return f&&(p.headers.Authorization=`${u} ${f}`),p},p=>Promise.reject(p)),o.interceptors.response.use(p=>{const{data:g}=p;return g.code===200||g.code===0?g.data:g.code===9121?(ne.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login",Promise.reject(new Error(g.message||"EXPIRED OR INVALID TOKEN"))):(ne.Message.error(g.message||"请求失败"),Promise.reject(new Error(g.message||"请求失败")))},p=>{var f;const{response:g}=p;if(g){const{data:u}=g;if((u==null?void 0:u.code)===9121)return ne.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login",Promise.reject(p);switch(g.status){case 401:ne.Message.error("登录已过期,请重新登录"),De(),window.location.href="/login";break;case 403:ne.Message.error("没有权限访问");break;case 404:ne.Message.error("请求资源不存在");break;case 500:ne.Message.error("服务器错误");break;default:ne.Message.error(((f=g.data)==null?void 0:f.message)||"请求失败")}}else ne.Message.error("网络连接失败");return Promise.reject(p)}),o})(),oe={get(o,p){return Le.get(o,p)},post(o,p,g){return Le.post(o,p,g)},put(o,p,g){return Le.put(o,p,g)},patch(o,p,g){return Le.patch(o,p,g)},delete(o,p){return Le.delete(o,p)},download(o,p){return Le.get(o,{...p,responseType:"blob"})}};function zt(o){return oe.post("/user/v1.0/login/by-domain",o)}function Ts(){return oe.put("/user/v1.0/user/logout")}function Ot(){return oe.get("/user/v1.0/user/get-me")}function As(o){return oe.post("/user/v1.0/refresh",{refreshToken:o})}const Us={class:"login-page"},zs={class:"login-form-section"},Os={class:"form-container"},Fs={class:"input-wrapper"},Ps={class:"input-wrapper"},Rs={class:"form-options"},qs={key:0},js={key:1},Ft=ge(e.defineComponent({__name:"index",setup(o){const p=ie.useRouter(),g=ie.useRoute(),f=e.ref(!1),u=e.ref(!1),y=e.reactive({uid:"",password:""}),h={uid:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,message:"密码长度至少6位",trigger:"blur"}]},_=e.ref(),w=async()=>{var x;try{await((x=_.value)==null?void 0:x.validate()),f.value=!0;const k=await zt({appId:Ue(),clientId:Je(),uid:y.uid,password:y.password,code:!0});rt(k),ne.Message.success("登录成功");const M=g.query.redirect||"/";p.push(M)}catch(k){console.error("登录失败:",k)}finally{f.value=!1}};return(x,k)=>(e.openBlock(),e.createElementBlock("div",Us,[k[10]||(k[10]=e.createStaticVNode('<div class="login-brand" data-v-15fc7de5><div class="brand-content" data-v-15fc7de5><div class="brand-logo" data-v-15fc7de5><div class="logo-icon" data-v-15fc7de5><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-15fc7de5><rect width="48" height="48" rx="12" fill="currentColor" data-v-15fc7de5></rect><path d="M14 24L20 30L34 16" stroke="white" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" data-v-15fc7de5></path></svg></div><span class="logo-text" data-v-15fc7de5>XTO</span></div><div class="brand-slogan" data-v-15fc7de5><h1 data-v-15fc7de5>企业级后台管理解决方案</h1><p data-v-15fc7de5>开箱即用的中后台前端/设计解决方案</p></div><div class="brand-features" data-v-15fc7de5><div class="feature-item" data-v-15fc7de5><div class="feature-icon" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-15fc7de5><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" data-v-15fc7de5></path></svg></div><div class="feature-text" data-v-15fc7de5><h4 data-v-15fc7de5>高性能</h4><p data-v-15fc7de5>极致的渲染性能与响应速度</p></div></div><div class="feature-item" data-v-15fc7de5><div class="feature-icon" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-15fc7de5><rect x="3" y="3" width="18" height="18" rx="2" data-v-15fc7de5></rect><path d="M9 9h6M9 12h6M9 15h4" data-v-15fc7de5></path></svg></div><div class="feature-text" data-v-15fc7de5><h4 data-v-15fc7de5>丰富组件</h4><p data-v-15fc7de5>60+ 高质量业务组件</p></div></div><div class="feature-item" data-v-15fc7de5><div class="feature-icon" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-15fc7de5><circle cx="12" cy="12" r="10" data-v-15fc7de5></circle><path d="M12 6v6l4 2" data-v-15fc7de5></path></svg></div><div class="feature-text" data-v-15fc7de5><h4 data-v-15fc7de5>持续更新</h4><p data-v-15fc7de5>活跃的社区与快速迭代</p></div></div></div><div class="brand-decoration" data-v-15fc7de5><div class="decoration-line" data-v-15fc7de5></div><div class="decoration-dots" data-v-15fc7de5><span data-v-15fc7de5></span><span data-v-15fc7de5></span><span data-v-15fc7de5></span></div></div></div><div class="brand-bg" data-v-15fc7de5><div class="bg-grid" data-v-15fc7de5></div><div class="bg-glow" data-v-15fc7de5></div><div class="bg-pattern" data-v-15fc7de5></div></div></div>',1)),e.createElementVNode("div",zs,[e.createElementVNode("div",Os,[k[7]||(k[7]=e.createElementVNode("div",{class:"form-header"},[e.createElementVNode("h2",null,"欢迎登录"),e.createElementVNode("p",null,"请输入您的账户信息")],-1)),e.createVNode(e.unref(O.Form),{ref_key:"formRef",ref:_,model:y,rules:h,class:"login-form","label-width":"0"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.FormItem),{prop:"uid"},{default:e.withCtx(()=>[e.createElementVNode("div",Fs,[k[3]||(k[3]=e.createElementVNode("label",{class:"input-label"},"用户名",-1)),e.createVNode(e.unref(O.Input),{modelValue:y.uid,"onUpdate:modelValue":k[0]||(k[0]=M=>y.uid=M),placeholder:"请输入用户名",size:"large"},{prefix:e.withCtx(()=>[e.createVNode(e.unref(U.Icon),{name:"user",size:18})]),_:1},8,["modelValue"])])]),_:1}),e.createVNode(e.unref(O.FormItem),{prop:"password"},{default:e.withCtx(()=>[e.createElementVNode("div",Ps,[k[4]||(k[4]=e.createElementVNode("label",{class:"input-label"},"密码",-1)),e.createVNode(e.unref(O.Input),{modelValue:y.password,"onUpdate:modelValue":k[1]||(k[1]=M=>y.password=M),type:"password",placeholder:"请输入密码",size:"large","show-password":"",onKeyup:e.withKeys(w,["enter"])},{prefix:e.withCtx(()=>[e.createVNode(e.unref(U.Icon),{name:"lock",size:18})]),_:1},8,["modelValue"])])]),_:1}),e.createElementVNode("div",Rs,[e.createVNode(e.unref(O.Checkbox),{modelValue:u.value,"onUpdate:modelValue":k[2]||(k[2]=M=>u.value=M)},{default:e.withCtx(()=>[...k[5]||(k[5]=[e.createTextVNode("记住我",-1)])]),_:1},8,["modelValue"]),k[6]||(k[6]=e.createElementVNode("a",{href:"#",class:"forgot-link"},"忘记密码?",-1))]),e.createVNode(e.unref(O.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",size:"large",loading:f.value,class:"login-btn",onClick:w},{default:e.withCtx(()=>[f.value?(e.openBlock(),e.createElementBlock("span",js,"登录中...")):(e.openBlock(),e.createElementBlock("span",qs,"登 录"))]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"]),k[8]||(k[8]=e.createStaticVNode('<div class="form-footer" data-v-15fc7de5><p data-v-15fc7de5>其他登录方式</p><div class="social-login" data-v-15fc7de5><button class="social-btn" title="企业微信" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="currentColor" data-v-15fc7de5><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z" data-v-15fc7de5></path></svg></button><button class="social-btn" title="钉钉" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="currentColor" data-v-15fc7de5><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19-.14.75-.42 1-.68 1.03-.58.05-1.02-.38-1.58-.75-.88-.58-1.38-.94-2.23-1.5-.99-.65-.35-1.01.22-1.59.15-.15 2.71-2.48 2.76-2.69a.2.2 0 00-.05-.18c-.06-.05-.14-.03-.21-.02-.09.02-1.49.95-4.22 2.79-.4.27-.76.41-1.08.4-.36-.01-1.04-.2-1.55-.37-.63-.2-1.12-.31-1.08-.66.02-.18.27-.36.74-.55 2.92-1.27 4.86-2.11 5.83-2.51 2.78-1.16 3.35-1.36 3.73-1.36.08 0 .27.02.39.12.1.08.13.19.14.27-.01.06.01.24 0 .38z" data-v-15fc7de5></path></svg></button><button class="social-btn" title="飞书" data-v-15fc7de5><svg viewBox="0 0 24 24" fill="currentColor" data-v-15fc7de5><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z" data-v-15fc7de5></path></svg></button></div></div>',1))]),k[9]||(k[9]=e.createElementVNode("div",{class:"copyright"},[e.createElementVNode("p",null,"© 2024 XTO Team. All rights reserved.")],-1))])]))}}),[["__scopeId","data-v-15fc7de5"]]),Hs=Object.freeze(Object.defineProperty({__proto__:null,default:Ft},Symbol.toStringTag,{value:"Module"})),Gs={class:"error-page"},Ks={class:"error-container"},Ws={class:"error-content"},Xs={class:"error-actions"},Pt=ge(e.defineComponent({__name:"404",setup(o){const p=ie.useRouter(),g=()=>{p.push("/")};return(f,u)=>(e.openBlock(),e.createElementBlock("div",Gs,[e.createElementVNode("div",Ks,[u[7]||(u[7]=e.createElementVNode("div",{class:"error-bg"},[e.createElementVNode("div",{class:"bg-circle circle-1"}),e.createElementVNode("div",{class:"bg-circle circle-2"}),e.createElementVNode("div",{class:"bg-circle circle-3"})],-1)),e.createElementVNode("div",Ws,[u[5]||(u[5]=e.createStaticVNode('<div class="error-code" data-v-3a9e61ae><span class="code-digit" data-v-3a9e61ae>4</span><span class="code-zero" data-v-3a9e61ae><span class="zero-inner" data-v-3a9e61ae>0</span></span><span class="code-digit" data-v-3a9e61ae>4</span></div><div class="error-illustration" data-v-3a9e61ae><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-3a9e61ae><rect x="40" y="20" width="120" height="80" rx="8" fill="var(--color-fill)" stroke="var(--color-border)" stroke-width="2" data-v-3a9e61ae></rect><rect x="50" y="30" width="100" height="60" rx="4" fill="var(--bg-color)" data-v-3a9e61ae></rect><line x1="60" y1="45" x2="140" y2="45" stroke="var(--color-border-light)" stroke-width="2" data-v-3a9e61ae></line><line x1="60" y1="55" x2="120" y2="55" stroke="var(--color-border-light)" stroke-width="2" data-v-3a9e61ae></line><line x1="60" y1="65" x2="100" y2="65" stroke="var(--color-border-light)" stroke-width="2" data-v-3a9e61ae></line><text x="100" y="75" text-anchor="middle" fill="var(--color-primary)" font-size="24" font-weight="600" data-v-3a9e61ae>?</text><circle cx="150" cy="35" r="12" stroke="var(--color-primary)" stroke-width="2" fill="none" data-v-3a9e61ae></circle><line x1="158" y1="43" x2="168" y2="53" stroke="var(--color-primary)" stroke-width="2" stroke-linecap="round" data-v-3a9e61ae></line></svg></div><h1 class="error-title" data-v-3a9e61ae>页面不存在</h1><p class="error-desc" data-v-3a9e61ae>抱歉,您访问的页面不存在或已被删除</p>',4)),e.createElementVNode("div",Xs,[e.createVNode(e.unref(U.Button),{type:"primary",size:"large",onClick:g},{icon:e.withCtx(()=>[...u[1]||(u[1]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z"}),e.createElementVNode("polyline",{points:"9,22 9,12 15,12 15,22"})],-1)])]),default:e.withCtx(()=>[u[2]||(u[2]=e.createTextVNode(" 返回首页 ",-1))]),_:1}),e.createVNode(e.unref(U.Button),{size:"large",onClick:u[0]||(u[0]=y=>e.unref(p).go(-1))},{icon:e.withCtx(()=>[...u[3]||(u[3]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M19 12H5M12 19l-7-7 7-7"})],-1)])]),default:e.withCtx(()=>[u[4]||(u[4]=e.createTextVNode(" 返回上一页 ",-1))]),_:1})]),u[6]||(u[6]=e.createElementVNode("div",{class:"error-tip"},[e.createElementVNode("p",null,"您可以尝试:"),e.createElementVNode("ul",null,[e.createElementVNode("li",null,"检查您输入的网址是否正确"),e.createElementVNode("li",null,"返回首页重新浏览"),e.createElementVNode("li",null,"联系管理员反馈问题")])],-1))])])]))}}),[["__scopeId","data-v-3a9e61ae"]]),Rt=Object.freeze(Object.defineProperty({__proto__:null,default:Pt},Symbol.toStringTag,{value:"Module"})),Ys={class:"error-page"},Js={class:"error-container"},Zs={class:"error-content"},Qs={class:"error-actions"},vs=ge(e.defineComponent({__name:"403",setup(o){const p=ie.useRouter(),g=()=>{p.push("/")};return(f,u)=>(e.openBlock(),e.createElementBlock("div",Ys,[e.createElementVNode("div",Js,[u[7]||(u[7]=e.createElementVNode("div",{class:"error-bg"},[e.createElementVNode("div",{class:"bg-circle circle-1"}),e.createElementVNode("div",{class:"bg-circle circle-2"}),e.createElementVNode("div",{class:"bg-circle circle-3"})],-1)),e.createElementVNode("div",Zs,[u[5]||(u[5]=e.createStaticVNode('<div class="error-code" data-v-c733ebac><span class="code-digit" data-v-c733ebac>4</span><span class="code-zero warning" data-v-c733ebac><span class="zero-inner" data-v-c733ebac>0</span></span><span class="code-digit" data-v-c733ebac>3</span></div><div class="error-illustration" data-v-c733ebac><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-c733ebac><path d="M100 15 L150 35 L150 70 C150 95 100 110 100 110 C100 110 50 95 50 70 L50 35 Z" fill="var(--color-warning-lighter)" stroke="var(--color-warning)" stroke-width="2" data-v-c733ebac></path><rect x="85" y="55" width="30" height="25" rx="4" fill="var(--color-warning)" data-v-c733ebac></rect><path d="M92 55 V48 A8 8 0 0 1 108 48 V55" fill="none" stroke="var(--color-warning)" stroke-width="3" data-v-c733ebac></path><circle cx="100" cy="67" r="6" fill="none" stroke="#fff" stroke-width="2" data-v-c733ebac></circle><line x1="96" y1="63" x2="104" y2="71" stroke="#fff" stroke-width="2" data-v-c733ebac></line></svg></div><h1 class="error-title" data-v-c733ebac>无访问权限</h1><p class="error-desc" data-v-c733ebac>抱歉,您没有权限访问此页面,请联系管理员获取权限</p>',4)),e.createElementVNode("div",Qs,[e.createVNode(e.unref(U.Button),{type:"primary",size:"large",onClick:g},{icon:e.withCtx(()=>[...u[1]||(u[1]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z"}),e.createElementVNode("polyline",{points:"9,22 9,12 15,12 15,22"})],-1)])]),default:e.withCtx(()=>[u[2]||(u[2]=e.createTextVNode(" 返回首页 ",-1))]),_:1}),e.createVNode(e.unref(U.Button),{size:"large",onClick:u[0]||(u[0]=y=>e.unref(p).go(-1))},{icon:e.withCtx(()=>[...u[3]||(u[3]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M19 12H5M12 19l-7-7 7-7"})],-1)])]),default:e.withCtx(()=>[u[4]||(u[4]=e.createTextVNode(" 返回上一页 ",-1))]),_:1})]),u[6]||(u[6]=e.createElementVNode("div",{class:"error-tip"},[e.createElementVNode("p",null,"可能的原因:"),e.createElementVNode("ul",null,[e.createElementVNode("li",null,"您的账号权限不足"),e.createElementVNode("li",null,"该页面需要特定角色才能访问"),e.createElementVNode("li",null,"您的登录状态已过期")])],-1))])])]))}}),[["__scopeId","data-v-c733ebac"]]);function er(){const o=be(),p=ke(),g=Te(),f=e.computed(()=>p.userName||""),u=e.computed(()=>p.userInfo),y=e.computed(()=>o.appName),h=e.computed(()=>g.isLoggedIn),_=e.computed(()=>o.isDark),w=e.computed(()=>o.theme),x=e.computed(()=>o.isCollapsed),k=e.computed(()=>o.layout);return{userName:f,userInfo:u,appName:y,isLoggedIn:h,isDark:_,theme:w,isCollapsed:x,layout:k,toggleTheme:()=>{o.toggleTheme()},toggleCollapse:()=>{o.toggleCollapse()}}}function tr(){const o=ke();return{isLoggedIn:e.computed(()=>o.isLoggedIn)}}function nr(o,p={}){const{rules:g,onSubmit:f}=p,u=e.ref(),y=e.reactive({...o}),h=e.ref(!1),_=e.ref(!1),w=e.ref(!1),x=()=>{S(),w.value=!1,_.value=!0},k=K=>{Object.assign(y,K),w.value=!0,_.value=!0},M=()=>{_.value=!1,S()},S=()=>{var K;Object.keys(o).forEach(A=>{y[A]=o[A]}),(K=u.value)==null||K.resetFields()};return{formRef:u,formData:y,rules:g,loading:h,visible:_,isEdit:w,openAdd:x,openEdit:k,close:M,resetForm:S,handleSubmit:async()=>{var K;try{await((K=u.value)==null?void 0:K.validate()),h.value=!0,await(f==null?void 0:f(y)),M()}catch(A){console.error(A)}finally{h.value=!1}}}}function or(o){const{fetchData:p,defaultPageSize:g=10}=o,f=e.ref(!1),u=e.ref([]),y=e.ref(0),h=e.ref(1),_=e.ref(g),w=e.reactive({}),x=async()=>{f.value=!0;try{const L={...w,page:h.value,pageSize:_.value},C=await p(L);u.value=C.list,y.value=C.total}catch(L){console.error(L)}finally{f.value=!1}},k=()=>{h.value=1,x()},M=()=>{Object.keys(w).forEach(L=>{w[L]=void 0}),h.value=1,x()},S=L=>{h.value=L,x()},z=L=>{_.value=L,h.value=1,x()},K=()=>{x()},A=e.computed(()=>({current:h.value,pageSize:_.value,total:y.value}));return{loading:f,data:u,total:y,currentPage:h,pageSize:_,searchParams:w,pagination:A,getData:x,handleSearch:k,handleReset:M,handlePageChange:S,handleSizeChange:z,refresh:K}}const We=Ae.defineStore("locale",()=>{const o=G.get("locale")||"zh-CN",p=Ye.createLocaleProvider(o),g=e.ref(o),f=Ye.getSupportedLocales(),{t:u,messages:y,setLocale:h,mergeMessages:_}=Ye.useLocale(),w=e.computed(()=>{const S=f.find(z=>z.code===g.value);return(S==null?void 0:S.name)||g.value});return{locale:g,localeName:w,locales:f,messages:y,t:u,changeLocale:S=>{g.value=S,h(S),G.set("locale",S),p.setLocale(S)},addMessages:S=>{_(S)},initLocale:()=>{h(o)},provider:p}}),lr=Object.freeze(Object.defineProperty({__proto__:null,useLocaleStore:We},Symbol.toStringTag,{value:"Module"}));function sr(){const o=We();return{locale:o.locale,localeName:o.localeName,locales:o.locales,t:o.t,messages:o.messages,setLocale:o.changeLocale,addMessages:o.addMessages}}function rr(){return We().t}function ar(o){const p=ke(),g=xe();return p.isLoggedIn?g.hasPermission(o):!1}function ir(o){return ke().isLoggedIn}function cr(){return!0}const dt=[{path:"/login",name:"Login",component:()=>Promise.resolve().then(()=>Hs),meta:{title:"登录",hidden:!0}}],mt={path:"/",name:"Layout",component:()=>Promise.resolve().then(()=>hs),redirect:"/dashboard",children:[{path:"/dashboard",name:"Dashboard",component:()=>Promise.resolve().then(()=>Kt),meta:{title:"仪表盘",icon:"dashboard",keepAlive:!0,affix:!0}},{path:"/system/user",name:"SystemUser",component:()=>Promise.resolve().then(()=>Wt),meta:{title:"用户管理",icon:"user",keepAlive:!0}},{path:"/system/role",name:"SystemRole",component:()=>Promise.resolve().then(()=>Xt),meta:{title:"角色管理",icon:"role",keepAlive:!0}},{path:"/system/menu",name:"SystemMenu",component:()=>Promise.resolve().then(()=>Yt),meta:{title:"菜单管理",icon:"menu",keepAlive:!0}},{path:"/:pathMatch(.*)*",name:"CatchAll",component:()=>Promise.resolve().then(()=>Rt),meta:{title:"404",hidden:!0}}]},dr=[{path:"/dashboard",name:"Dashboard",component:()=>Promise.resolve().then(()=>Kt),meta:{title:"仪表盘",icon:"dashboard",keepAlive:!0,affix:!0}},{path:"/system",name:"System",redirect:"/system/user",meta:{title:"系统管理",icon:"setting"},children:[{path:"user",name:"SystemUser",component:()=>Promise.resolve().then(()=>Wt),meta:{title:"用户管理",icon:"user",keepAlive:!0}},{path:"role",name:"SystemRole",component:()=>Promise.resolve().then(()=>Xt),meta:{title:"角色管理",icon:"role",keepAlive:!0}},{path:"menu",name:"SystemMenu",component:()=>Promise.resolve().then(()=>Yt),meta:{title:"菜单管理",icon:"menu",keepAlive:!0}}]}],qt=[{menuCode:"dashboard",menuName:"仪表盘",menuUrl:"/dashboard",icon:"dashboard",closable:!0,isDefault:!0,isOut:!1},{menuCode:"system",menuName:"系统管理",menuUrl:"/system",icon:"setting",closable:!1,isDefault:!1,isOut:!1,children:[{menuCode:"system_user",menuName:"用户管理",menuUrl:"/system/user",icon:"user",closable:!0,isDefault:!1,isOut:!1},{menuCode:"system_role",menuName:"角色管理",menuUrl:"/system/role",icon:"role",closable:!0,isDefault:!1,isOut:!1},{menuCode:"system_menu",menuName:"菜单管理",menuUrl:"/system/menu",icon:"menu",closable:!0,isDefault:!1,isOut:!1}]}],pt=ie.createRouter({history:ie.createWebHistory(),routes:[...dt,mt],scrollBehavior:()=>({left:0,top:0})}),mr=["/login"];pt.beforeEach(async(o,p,g)=>{const f=be();if(f.initTheme(),at())if(o.path==="/login")g({path:"/"});else{const u=ke();u.isLoggedIn||(u.setUserInfo({appId:Ue(),userId:"1",userName:"管理员",departmentName:"技术部",email:"admin@example.com",mobilePhone:"13800138000",positionName:"管理员",avatar:""}),xe().setMenuList(qt)),o.name&&o.meta.keepAlive&&f.addCachedView(o.name),g()}else mr.includes(o.path)?g():g("/login")});function pr(){const o=ie.createRouter({history:ie.createWebHistory(),routes:[...dt,mt]});pt.matcher=o.matcher}function fr(o,p={}){const g=p.indexPath||"/dashboard",f={path:"/:pathMatch(.*)*",name:"CatchAll",component:()=>Promise.resolve().then(()=>Rt),meta:{title:"404"}};return{path:"/",name:"Layout",component:ct,redirect:g,children:[...o,f]}}function ur(o,p={}){return ie.createRouter({history:ie.createWebHistory(p.base),routes:o,scrollBehavior:()=>({left:0,top:0})})}function hr(o){return oe.get("/role/list",{params:o})}function gr(o){return oe.get(`/role/${o}`)}function _r(o){return oe.post("/role",o)}function Nr(o,p){return oe.put(`/role/${o}`,p)}function Er(o){return oe.delete(`/role/${o}`)}function Vr(o,p){return oe.patch(`/role/${o}/status`,{status:p})}function kr(){return oe.get("/user/v1.0/menu/list")}function jt(o){const p=o||Ue();return oe.get(`/user/v1.0/menu/get-menu?appId=${p}`)}function yr(o){return oe.post("/menu",o)}function wr(o,p){return oe.put(`/menu/${o}`,p)}function xr(o){return oe.delete(`/menu/${o}`)}const Cr=["/login","/404","/403"];function Br(o,p={}){const g=p.whiteList||Cr,f=p.loginPath||"/login",u=p.homePath||"/";o.beforeEach(async(y,h,_)=>{const w=be(),x=ke(),k=xe();if(w.initTheme(),Pe())if(y.path===f)_({path:u});else if(x.isLoggedIn)y.name&&y.meta.keepAlive&&w.addCachedView(y.name),_();else try{if(p.fetchUserInfo){const S=await p.fetchUserInfo();x.setUserInfo(S)}else{const S=await Ot();x.setUserInfo(S)}if(p.fetchMenu){const S=await p.fetchMenu();k.setMenuList(S)}else{const S=await jt(p.appId);k.setMenuList(S)}p.onLoginSuccess&&p.onLoginSuccess(),y.name&&y.meta.keepAlive&&w.addCachedView(y.name),_({...y,replace:!0})}catch(S){console.error("获取用户信息失败:",S),x.clearUserInfo(),k.clearMenu(),De(),_({path:f,query:{redirect:y.fullPath}})}else g.includes(y.path)?_():_({path:f,query:{redirect:y.fullPath}})}),o.afterEach(()=>{})}function br(o){return oe.get("/user/list",{params:o})}function Sr(o){return oe.get(`/user/${o}`)}function $r(o){return oe.post("/user",o)}function Ir(o,p){return oe.put(`/user/${o}`,p)}function Mr(o){return oe.delete(`/user/${o}`)}function Lr(o){return oe.post("/user/batch-delete",{ids:o})}function Dr(o,p){return oe.patch(`/user/${o}/status`,{status:p})}function Tr(o){return oe.post(`/user/${o}/reset-password`)}var X=(o=>(o[o.ENABLED=1]="ENABLED",o[o.DISABLED=0]="DISABLED",o))(X||{}),Ht=(o=>(o[o.UNKNOWN=0]="UNKNOWN",o[o.MALE=1]="MALE",o[o.FEMALE=2]="FEMALE",o))(Ht||{}),Ee=(o=>(o[o.DIRECTORY=0]="DIRECTORY",o[o.MENU=1]="MENU",o[o.BUTTON=2]="BUTTON",o))(Ee||{});const Ar={1:"启用",0:"禁用"},Ur={0:"未知",1:"男",2:"女"},zr={0:"目录",1:"菜单",2:"按钮"},ft=[{label:"启用",value:1},{label:"禁用",value:0}],Or=[{label:"未知",value:0},{label:"男",value:1},{label:"女",value:2}],Gt=[{label:"目录",value:0},{label:"菜单",value:1},{label:"按钮",value:2}],Fr={mounted(o,p){var h,_;const g=ke(),f=xe();if(!g.isLoggedIn){(h=o.parentNode)==null||h.removeChild(o);return}const u=p.value,y=Array.isArray(u)?u:[u];f.hasPermission(y)||(_=o.parentNode)==null||_.removeChild(o)}};function Pr(o){return gt({appId:o.appId,clientId:o.clientId,apiBaseUrl:o.apiBaseUrl}),o.locale&&Promise.resolve().then(()=>lr).then(({useLocaleStore:p})=>{p().changeLocale(o.locale)}),{config:{appName:o.appName||"XTO App",appId:Ue(),clientId:Je(),apiBaseUrl:_t(),indexPath:o.indexPath||"/dashboard",loginPath:o.loginPath||"/login",locale:o.locale||"zh-CN"}}}const Rr={class:"dashboard"},qr={class:"stats-section"},jr={class:"stat-content"},Hr={class:"stat-title"},Gr={key:0,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Kr={key:1,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},Wr={class:"main-section"},Xr={class:"quick-section"},Yr={class:"quick-grid"},Jr={class:"quick-icon"},Zr={class:"quick-info"},Qr={class:"quick-title"},vr={class:"quick-desc"},ea={class:"activity-section"},ta={class:"activity-list"},na={class:"activity-content"},oa={class:"activity-main"},la={class:"activity-user"},sa={class:"activity-action"},ra={class:"activity-time"},aa={class:"system-section"},ia={class:"system-grid"},ca={class:"system-info-list"},da={class:"info-label"},ma={class:"info-value"},pa={class:"system-status"},fa={class:"status-item"},ua={class:"status-item"},ha={class:"status-item"},Kt=Object.freeze(Object.defineProperty({__proto__:null,default:ge(e.defineComponent({__name:"index",setup(o){const p=e.ref([{title:"用户总数",value:1234,icon:"👥",color:"#1677ff",trend:"+12.5%",trendUp:!0},{title:"今日访问",value:567,icon:"👀",color:"#52c41a",trend:"+8.2%",trendUp:!0},{title:"订单数量",value:890,icon:"📦",color:"#faad14",trend:"-3.1%",trendUp:!1},{title:"销售金额",value:123456,icon:"💰",color:"#ff4d4f",trend:"+15.8%",trendUp:!0}]),g=e.ref([{user:"张三",action:"登录系统",time:"2分钟前",type:"success",avatar:"张"},{user:"李四",action:"修改了用户信息",time:"5分钟前",type:"warning",avatar:"李"},{user:"王五",action:"创建了新订单",time:"10分钟前",type:"info",avatar:"王"},{user:"赵六",action:"删除了测试数据",time:"30分钟前",type:"danger",avatar:"赵"},{user:"钱七",action:"更新了系统配置",time:"1小时前",type:"primary",avatar:"钱"}]),f=e.ref([{title:"用户管理",path:"/system/user",icon:"👤",desc:"管理系统用户"},{title:"角色管理",path:"/system/role",icon:"👥",desc:"角色权限配置"},{title:"菜单管理",path:"/system/menu",icon:"📋",desc:"菜单路由管理"},{title:"系统设置",path:"/system",icon:"⚙️",desc:"系统参数配置"}]),u=e.ref([{label:"系统版本",value:"v1.0.0"},{label:"Vue 版本",value:"3.4.21"},{label:"构建工具",value:"Vite 5"},{label:"UI 组件库",value:"XTO UI"}]);return(y,h)=>{const _=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Rr,[e.createElementVNode("div",qr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.title,class:"stat-card"},[e.createElementVNode("div",{class:"stat-icon",style:e.normalizeStyle({background:`linear-gradient(135deg, ${w.color}20 0%, ${w.color}10 100%)`})},[e.createElementVNode("span",null,e.toDisplayString(w.icon),1)],4),e.createElementVNode("div",jr,[e.createElementVNode("div",Hr,e.toDisplayString(w.title),1),e.createElementVNode("div",{class:"stat-value",style:e.normalizeStyle({color:w.color})},e.toDisplayString(w.value.toLocaleString()),5),e.createElementVNode("div",{class:e.normalizeClass(["stat-trend",{up:w.trendUp,down:!w.trendUp}])},[w.trendUp?(e.openBlock(),e.createElementBlock("svg",Gr,[...h[0]||(h[0]=[e.createElementVNode("path",{d:"M7 17l5-5 5 5M7 7l5 5 5-5"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",Kr,[...h[1]||(h[1]=[e.createElementVNode("path",{d:"M7 7l5 5 5-5M7 17l5-5 5 5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(w.trend),1)],2)]),e.createElementVNode("div",{class:"stat-decoration",style:e.normalizeStyle({background:`linear-gradient(135deg, ${w.color}08 0%, transparent 100%)`})},null,4)]))),128))]),e.createElementVNode("div",Wr,[e.createElementVNode("div",Xr,[h[3]||(h[3]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"快捷入口"),e.createElementVNode("span",{class:"section-badge"},"4 个入口")],-1)),e.createElementVNode("div",Yr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,w=>(e.openBlock(),e.createBlock(_,{key:w.path,to:w.path,class:"quick-card"},{default:e.withCtx(()=>[e.createElementVNode("div",Jr,e.toDisplayString(w.icon),1),e.createElementVNode("div",Zr,[e.createElementVNode("div",Qr,e.toDisplayString(w.title),1),e.createElementVNode("div",vr,e.toDisplayString(w.desc),1)]),h[2]||(h[2]=e.createElementVNode("div",{class:"quick-arrow"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M9 18l6-6-6-6"})])],-1))]),_:2},1032,["to"]))),128))])]),e.createElementVNode("div",ea,[h[4]||(h[4]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"最近活动"),e.createElementVNode("a",{href:"#",class:"section-link"},"查看全部")],-1)),e.createElementVNode("div",ta,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(w,x)=>(e.openBlock(),e.createElementBlock("div",{key:x,class:"activity-item"},[e.createElementVNode("div",{class:e.normalizeClass(["activity-avatar",w.type])},e.toDisplayString(w.avatar),3),e.createElementVNode("div",na,[e.createElementVNode("div",oa,[e.createElementVNode("span",la,e.toDisplayString(w.user),1),e.createElementVNode("span",sa,e.toDisplayString(w.action),1)]),e.createElementVNode("div",ra,e.toDisplayString(w.time),1)]),e.createElementVNode("div",{class:e.normalizeClass(["activity-dot",w.type])},null,2)]))),128))])])]),e.createElementVNode("div",aa,[h[8]||(h[8]=e.createElementVNode("div",{class:"section-header"},[e.createElementVNode("h3",null,"系统信息")],-1)),e.createElementVNode("div",ia,[e.createElementVNode("div",ca,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.label,class:"info-item"},[e.createElementVNode("span",da,e.toDisplayString(w.label),1),e.createElementVNode("span",ma,e.toDisplayString(w.value),1)]))),128))]),e.createElementVNode("div",pa,[e.createElementVNode("div",fa,[h[5]||(h[5]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"服务器状态"),e.createElementVNode("span",{class:"status-value"},"75%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:75,status:"success"})]),e.createElementVNode("div",ua,[h[6]||(h[6]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"内存使用"),e.createElementVNode("span",{class:"status-value"},"45%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:45})]),e.createElementVNode("div",ha,[h[7]||(h[7]=e.createElementVNode("div",{class:"status-header"},[e.createElementVNode("span",{class:"status-label"},"CPU 使用率"),e.createElementVNode("span",{class:"status-value"},"32%")],-1)),e.createVNode(e.unref(we.Progress),{percentage:32})])])])])])}}}),[["__scopeId","data-v-fd54abc0"]])},Symbol.toStringTag,{value:"Module"})),ga={class:"user-page"},_a={class:"search-section"},Na={class:"table-section"},Ea={class:"table-toolbar"},Va={class:"toolbar-left"},ka={class:"toolbar-right"},ya={class:"table-count"},wa={class:"table-wrapper"},xa={class:"data-table"},Ca={key:0},Ba={key:1},ba={class:"col-id"},Sa={class:"id-badge"},$a={class:"col-user"},Ia={class:"user-info"},Ma={class:"user-avatar"},La={class:"user-detail"},Da={class:"user-nickname"},Ta={class:"user-username"},Aa={class:"col-contact"},Ua={class:"contact-info"},za={class:"contact-email"},Oa={class:"contact-phone"},Fa={class:"col-roles"},Pa={class:"role-tags"},Ra={class:"col-status"},qa={class:"status-switch"},ja={class:"col-time"},Ha={class:"time-text"},Ga={class:"col-actions"},Ka={class:"pagination-wrapper"},Wa={class:"status-field"},Xa={class:"status-label"},Wt=Object.freeze(Object.defineProperty({__proto__:null,default:ge(e.defineComponent({__name:"index",setup(o){const p=[{id:1,username:"admin",nickname:"管理员",email:"admin@example.com",phone:"13800138001",status:X.ENABLED,roles:["admin"],createTime:"2024-01-01 10:00:00"},{id:2,username:"zhangsan",nickname:"张三",email:"zhangsan@example.com",phone:"13800138002",status:X.ENABLED,roles:["editor"],createTime:"2024-01-02 10:00:00"},{id:3,username:"lisi",nickname:"李四",email:"lisi@example.com",phone:"13800138003",status:X.DISABLED,roles:["viewer"],createTime:"2024-01-03 10:00:00"},{id:4,username:"wangwu",nickname:"王五",email:"wangwu@example.com",phone:"13800138004",status:X.ENABLED,roles:["editor"],createTime:"2024-01-04 10:00:00"},{id:5,username:"zhaoliu",nickname:"赵六",email:"zhaoliu@example.com",phone:"13800138005",status:X.ENABLED,roles:["viewer"],createTime:"2024-01-05 10:00:00"}],g=e.ref(!1),f=e.ref([]),u=e.ref(0),y=e.ref(1),h=e.ref(10),_=e.reactive({keyword:"",status:void 0}),w=e.ref(!1),x=e.computed(()=>k.id?"编辑用户":"新增用户"),k=e.reactive({id:0,username:"",nickname:"",email:"",phone:"",status:X.ENABLED,roles:[]}),M={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],nickname:[{required:!0,message:"请输入昵称",trigger:"blur"}],email:[{required:!0,message:"请输入邮箱",trigger:"blur"},{type:"email",message:"请输入正确的邮箱格式",trigger:"blur"}]},S=e.ref(),z=()=>{g.value=!0,setTimeout(()=>{let T=[...p];_.keyword&&(T=T.filter(m=>m.username.includes(_.keyword)||m.nickname.includes(_.keyword))),_.status!==void 0&&(T=T.filter(m=>m.status===_.status)),u.value=T.length,f.value=T.slice((y.value-1)*h.value,y.value*h.value),g.value=!1},300)},K=()=>{y.value=1,z()},A=()=>{_.keyword="",_.status=void 0,y.value=1,z()},L=()=>{Object.assign(k,{id:0,username:"",nickname:"",email:"",phone:"",status:X.ENABLED,roles:[]}),w.value=!0},C=T=>{Object.assign(k,T),w.value=!0},B=T=>{ne.Message.success("删除成功"),z()},R=async()=>{var T;try{await((T=S.value)==null?void 0:T.validate()),ne.Message.success(k.id?"编辑成功":"新增成功"),w.value=!1,z()}catch(m){console.error(m)}},Y=T=>{ne.Message.success(`已${T.status===X.ENABLED?"启用":"禁用"}用户 ${T.username}`)};return e.onMounted(()=>{z()}),(T,m)=>(e.openBlock(),e.createElementBlock("div",ga,[e.createElementVNode("div",_a,[e.createVNode(e.unref(O.Form),{model:_,inline:"",class:"search-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.FormItem),{label:"关键词"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:_.keyword,"onUpdate:modelValue":m[0]||(m[0]=V=>_.keyword=V),placeholder:"用户名/昵称",clearable:"",onKeyup:e.withKeys(K,["enter"])},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Select),{modelValue:_.status,"onUpdate:modelValue":m[1]||(m[1]=V=>_.status=V),options:e.unref(ft),placeholder:"请选择",clearable:""},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(O.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",onClick:K},{icon:e.withCtx(()=>[...m[11]||(m[11]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"M21 21l-4.35-4.35"})],-1)])]),default:e.withCtx(()=>[m[12]||(m[12]=e.createTextVNode(" 搜索 ",-1))]),_:1}),e.createVNode(e.unref(U.Button),{onClick:A},{icon:e.withCtx(()=>[...m[13]||(m[13]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 12a9 9 0 109-9 9.75 9.75 0 00-6.74 2.74L3 8"}),e.createElementVNode("path",{d:"M3 3v5h5"})],-1)])]),default:e.withCtx(()=>[m[14]||(m[14]=e.createTextVNode(" 重置 ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),e.createElementVNode("div",Na,[e.createElementVNode("div",Ea,[e.createElementVNode("div",Va,[e.createVNode(e.unref(U.Button),{type:"primary",onClick:L},{icon:e.withCtx(()=>[...m[15]||(m[15]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[m[16]||(m[16]=e.createTextVNode(" 新增用户 ",-1))]),_:1})]),e.createElementVNode("div",ka,[e.createElementVNode("span",ya,"共 "+e.toDisplayString(u.value)+" 条数据",1)])]),e.createElementVNode("div",wa,[e.createElementVNode("table",xa,[m[23]||(m[23]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-id"},"ID"),e.createElementVNode("th",{class:"col-user"},"用户信息"),e.createElementVNode("th",{class:"col-contact"},"联系方式"),e.createElementVNode("th",{class:"col-roles"},"角色"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-time"},"创建时间"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",Ca,[...m[17]||(m[17]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):f.value.length===0?(e.openBlock(),e.createElementBlock("tr",Ba,[...m[18]||(m[18]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(f.value,V=>(e.openBlock(),e.createElementBlock("tr",{key:V.id,class:"data-row"},[e.createElementVNode("td",ba,[e.createElementVNode("span",Sa,e.toDisplayString(V.id),1)]),e.createElementVNode("td",$a,[e.createElementVNode("div",Ia,[e.createElementVNode("div",Ma,e.toDisplayString(V.nickname.charAt(0)),1),e.createElementVNode("div",La,[e.createElementVNode("span",Da,e.toDisplayString(V.nickname),1),e.createElementVNode("span",Ta,"@"+e.toDisplayString(V.username),1)])])]),e.createElementVNode("td",Aa,[e.createElementVNode("div",Ua,[e.createElementVNode("span",za,e.toDisplayString(V.email),1),e.createElementVNode("span",Oa,e.toDisplayString(V.phone),1)])]),e.createElementVNode("td",Fa,[e.createElementVNode("div",Pa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.roles,P=>(e.openBlock(),e.createBlock(e.unref(we.Tag),{key:P,size:"small",type:P==="admin"?"primary":"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(P),1)]),_:2},1032,["type"]))),128))])]),e.createElementVNode("td",Ra,[e.createElementVNode("div",qa,[e.createVNode(e.unref(O.Switch),{"model-value":V.status===e.unref(X).ENABLED,"onUpdate:modelValue":P=>{V.status=P?e.unref(X).ENABLED:e.unref(X).DISABLED,Y(V)}},null,8,["model-value","onUpdate:modelValue"]),e.createElementVNode("span",{class:e.normalizeClass(["status-text",{enabled:V.status===e.unref(X).ENABLED}])},e.toDisplayString(V.status===e.unref(X).ENABLED?"已启用":"已禁用"),3)])]),e.createElementVNode("td",ja,[e.createElementVNode("span",Ha,e.toDisplayString(V.createTime),1)]),e.createElementVNode("td",Ga,[e.createVNode(e.unref(U.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",link:"",size:"small",onClick:P=>C(V)},{icon:e.withCtx(()=>[...m[19]||(m[19]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[m[20]||(m[20]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(ne.Popconfirm),{title:"确定删除该用户吗?",onConfirm:P=>B(V.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"danger",link:"",size:"small"},{icon:e.withCtx(()=>[...m[21]||(m[21]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("polyline",{points:"3,6 5,6 21,6"}),e.createElementVNode("path",{d:"M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2"}),e.createElementVNode("line",{x1:"10",y1:"11",x2:"10",y2:"17"}),e.createElementVNode("line",{x1:"14",y1:"11",x2:"14",y2:"17"})],-1)])]),default:e.withCtx(()=>[m[22]||(m[22]=e.createTextVNode(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:2},1024)])]))),128))])])]),e.createElementVNode("div",Ka,[e.createVNode(e.unref(we.Pagination),{"current-page":y.value,"onUpdate:currentPage":m[2]||(m[2]=V=>y.value=V),"page-size":h.value,"onUpdate:pageSize":m[3]||(m[3]=V=>h.value=V),total:u.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next",onCurrentChange:z,onSizeChange:z},null,8,["current-page","page-size","total"])])]),e.createVNode(e.unref(ne.Modal),{modelValue:w.value,"onUpdate:modelValue":m[10]||(m[10]=V=>w.value=V),title:x.value,width:"520px",class:"user-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(U.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{onClick:m[9]||(m[9]=V=>w.value=!1)},{default:e.withCtx(()=>[...m[24]||(m[24]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(U.Button),{type:"primary",onClick:R},{default:e.withCtx(()=>[...m[25]||(m[25]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(O.Form),{ref_key:"formRef",ref:S,model:k,rules:M,"label-width":"80px",class:"user-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.FormItem),{label:"用户名",prop:"username"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.username,"onUpdate:modelValue":m[4]||(m[4]=V=>k.username=V),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"昵称",prop:"nickname"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.nickname,"onUpdate:modelValue":m[5]||(m[5]=V=>k.nickname=V),placeholder:"请输入昵称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"邮箱",prop:"email"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.email,"onUpdate:modelValue":m[6]||(m[6]=V=>k.email=V),placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"手机号",prop:"phone"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.phone,"onUpdate:modelValue":m[7]||(m[7]=V=>k.phone=V),placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",Wa,[e.createVNode(e.unref(O.Switch),{modelValue:k.status,"onUpdate:modelValue":m[8]||(m[8]=V=>k.status=V),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",Xa,e.toDisplayString(k.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-da50b35c"]])},Symbol.toStringTag,{value:"Module"})),Ya={class:"role-page"},Ja={class:"search-section"},Za={class:"table-section"},Qa={class:"table-toolbar"},va={class:"toolbar-left"},ei={class:"toolbar-right"},ti={class:"table-count"},ni={class:"table-wrapper"},oi={class:"data-table"},li={key:0},si={key:1},ri={class:"col-id"},ai={class:"id-badge"},ii={class:"col-name"},ci={class:"role-name"},di={class:"col-code"},mi={class:"col-desc"},pi={class:"desc-text"},fi={class:"col-status"},ui={class:"status-switch"},hi={class:"col-time"},gi={class:"time-text"},_i={class:"col-actions"},Ni={class:"pagination-wrapper"},Ei={class:"status-field"},Vi={class:"status-label"},Xt=Object.freeze(Object.defineProperty({__proto__:null,default:ge(e.defineComponent({__name:"index",setup(o){const p=[{id:1,name:"超级管理员",code:"admin",description:"拥有所有权限",status:X.ENABLED,permissions:["*"],createTime:"2024-01-01 10:00:00"},{id:2,name:"编辑",code:"editor",description:"内容编辑权限",status:X.ENABLED,permissions:["user:read","user:write"],createTime:"2024-01-02 10:00:00"},{id:3,name:"访客",code:"viewer",description:"只读权限",status:X.ENABLED,permissions:["user:read"],createTime:"2024-01-03 10:00:00"}],g=e.ref(!1),f=e.ref([]),u=e.ref(0),y=e.ref(1),h=e.ref(10),_=e.reactive({keyword:"",status:void 0}),w=e.ref(!1),x=e.computed(()=>k.id?"编辑角色":"新增角色"),k=e.reactive({id:0,name:"",code:"",description:"",status:X.ENABLED,permissions:[]}),M={name:[{required:!0,message:"请输入角色名称",trigger:"blur"}],code:[{required:!0,message:"请输入角色编码",trigger:"blur"}]},S=e.ref(),z=()=>{g.value=!0,setTimeout(()=>{let T=[...p];_.keyword&&(T=T.filter(m=>m.name.includes(_.keyword)||m.code.includes(_.keyword))),_.status!==void 0&&(T=T.filter(m=>m.status===_.status)),u.value=T.length,f.value=T.slice((y.value-1)*h.value,y.value*h.value),g.value=!1},300)},K=()=>{y.value=1,z()},A=()=>{_.keyword="",_.status=void 0,y.value=1,z()},L=()=>{Object.assign(k,{id:0,name:"",code:"",description:"",status:X.ENABLED,permissions:[]}),w.value=!0},C=T=>{Object.assign(k,T),w.value=!0},B=T=>{ne.Message.success("删除成功"),z()},R=async()=>{var T;try{await((T=S.value)==null?void 0:T.validate()),ne.Message.success(k.id?"编辑成功":"新增成功"),w.value=!1,z()}catch(m){console.error(m)}},Y=T=>{ne.Message.success(`已${T.status===X.ENABLED?"启用":"禁用"}角色 ${T.name}`)};return e.onMounted(()=>{z()}),(T,m)=>(e.openBlock(),e.createElementBlock("div",Ya,[e.createElementVNode("div",Ja,[e.createVNode(e.unref(O.Form),{model:_,inline:"",class:"search-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.FormItem),{label:"关键词"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:_.keyword,"onUpdate:modelValue":m[0]||(m[0]=V=>_.keyword=V),placeholder:"角色名称/编码",clearable:"",onKeyup:e.withKeys(K,["enter"])},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Select),{modelValue:_.status,"onUpdate:modelValue":m[1]||(m[1]=V=>_.status=V),options:e.unref(ft),placeholder:"请选择",clearable:""},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(O.FormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",onClick:K},{icon:e.withCtx(()=>[...m[10]||(m[10]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"M21 21l-4.35-4.35"})],-1)])]),default:e.withCtx(()=>[m[11]||(m[11]=e.createTextVNode(" 搜索 ",-1))]),_:1}),e.createVNode(e.unref(U.Button),{onClick:A},{icon:e.withCtx(()=>[...m[12]||(m[12]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M3 12a9 9 0 109-9 9.75 9.75 0 00-6.74 2.74L3 8"}),e.createElementVNode("path",{d:"M3 3v5h5"})],-1)])]),default:e.withCtx(()=>[m[13]||(m[13]=e.createTextVNode(" 重置 ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),e.createElementVNode("div",Za,[e.createElementVNode("div",Qa,[e.createElementVNode("div",va,[e.createVNode(e.unref(U.Button),{type:"primary",onClick:L},{icon:e.withCtx(()=>[...m[14]||(m[14]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[m[15]||(m[15]=e.createTextVNode(" 新增角色 ",-1))]),_:1})]),e.createElementVNode("div",ei,[e.createElementVNode("span",ti,"共 "+e.toDisplayString(u.value)+" 条数据",1)])]),e.createElementVNode("div",ni,[e.createElementVNode("table",oi,[m[22]||(m[22]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-id"},"ID"),e.createElementVNode("th",{class:"col-name"},"角色名称"),e.createElementVNode("th",{class:"col-code"},"角色编码"),e.createElementVNode("th",{class:"col-desc"},"描述"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-time"},"创建时间"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",li,[...m[16]||(m[16]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):f.value.length===0?(e.openBlock(),e.createElementBlock("tr",si,[...m[17]||(m[17]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(f.value,V=>(e.openBlock(),e.createElementBlock("tr",{key:V.id,class:"data-row"},[e.createElementVNode("td",ri,[e.createElementVNode("span",ai,e.toDisplayString(V.id),1)]),e.createElementVNode("td",ii,[e.createElementVNode("span",ci,e.toDisplayString(V.name),1)]),e.createElementVNode("td",di,[e.createVNode(e.unref(we.Tag),{type:"primary",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(V.code),1)]),_:2},1024)]),e.createElementVNode("td",mi,[e.createElementVNode("span",pi,e.toDisplayString(V.description),1)]),e.createElementVNode("td",fi,[e.createElementVNode("div",ui,[e.createVNode(e.unref(O.Switch),{"model-value":V.status===e.unref(X).ENABLED,"onUpdate:modelValue":P=>{V.status=P?e.unref(X).ENABLED:e.unref(X).DISABLED,Y(V)}},null,8,["model-value","onUpdate:modelValue"]),e.createElementVNode("span",{class:e.normalizeClass(["status-text",{enabled:V.status===e.unref(X).ENABLED}])},e.toDisplayString(V.status===e.unref(X).ENABLED?"已启用":"已禁用"),3)])]),e.createElementVNode("td",hi,[e.createElementVNode("span",gi,e.toDisplayString(V.createTime),1)]),e.createElementVNode("td",_i,[e.createVNode(e.unref(U.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",link:"",size:"small",onClick:P=>C(V)},{icon:e.withCtx(()=>[...m[18]||(m[18]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[m[19]||(m[19]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(ne.Popconfirm),{title:"确定删除该角色吗?",onConfirm:P=>B(V.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"danger",link:"",size:"small"},{icon:e.withCtx(()=>[...m[20]||(m[20]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("polyline",{points:"3,6 5,6 21,6"}),e.createElementVNode("path",{d:"M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2"}),e.createElementVNode("line",{x1:"10",y1:"11",x2:"10",y2:"17"}),e.createElementVNode("line",{x1:"14",y1:"11",x2:"14",y2:"17"})],-1)])]),default:e.withCtx(()=>[m[21]||(m[21]=e.createTextVNode(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:2},1024)])]))),128))])])]),e.createElementVNode("div",Ni,[e.createVNode(e.unref(we.Pagination),{"current-page":y.value,"onUpdate:currentPage":m[2]||(m[2]=V=>y.value=V),"page-size":h.value,"onUpdate:pageSize":m[3]||(m[3]=V=>h.value=V),total:u.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next",onCurrentChange:z,onSizeChange:z},null,8,["current-page","page-size","total"])])]),e.createVNode(e.unref(ne.Modal),{modelValue:w.value,"onUpdate:modelValue":m[9]||(m[9]=V=>w.value=V),title:x.value,width:"520px",class:"role-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(U.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{onClick:m[8]||(m[8]=V=>w.value=!1)},{default:e.withCtx(()=>[...m[23]||(m[23]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(U.Button),{type:"primary",onClick:R},{default:e.withCtx(()=>[...m[24]||(m[24]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(O.Form),{ref_key:"formRef",ref:S,model:k,rules:M,"label-width":"80px",class:"role-form"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.FormItem),{label:"角色名称",prop:"name"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.name,"onUpdate:modelValue":m[4]||(m[4]=V=>k.name=V),placeholder:"请输入角色名称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"角色编码",prop:"code"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.code,"onUpdate:modelValue":m[5]||(m[5]=V=>k.code=V),placeholder:"请输入角色编码"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"描述"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:k.description,"onUpdate:modelValue":m[6]||(m[6]=V=>k.description=V),placeholder:"请输入描述"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",Ei,[e.createVNode(e.unref(O.Switch),{modelValue:k.status,"onUpdate:modelValue":m[7]||(m[7]=V=>k.status=V),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",Vi,e.toDisplayString(k.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-935244f1"]])},Symbol.toStringTag,{value:"Module"})),ki={class:"menu-page"},yi={class:"table-section"},wi={class:"table-toolbar"},xi={class:"toolbar-left"},Ci={class:"toolbar-right"},Bi={class:"table-count"},bi={class:"table-wrapper"},Si={class:"data-table"},$i={key:0},Ii={key:1},Mi={class:"data-row tree-row--level-0"},Li={class:"col-name"},Di={class:"menu-info"},Ti={class:"menu-icon-wrapper"},Ai=["onClick"],Ui={class:"col-icon"},zi={class:"icon-text"},Oi={class:"col-path"},Fi={class:"path-code"},Pi={class:"col-type"},Ri={class:"col-sort"},qi={class:"sort-badge"},ji={class:"col-status"},Hi={class:"col-actions"},Gi={class:"col-name"},Ki={class:"menu-info"},Wi={class:"menu-icon-wrapper"},Xi=["onClick"],Yi={class:"col-icon"},Ji={class:"icon-text"},Zi={class:"col-path"},Qi={class:"path-code"},vi={class:"col-type"},ec={class:"col-sort"},tc={class:"sort-badge"},nc={class:"col-status"},oc={class:"col-actions"},lc={class:"form-grid"},sc={class:"status-field"},rc={class:"status-label"},ac={class:"status-field"},ic={class:"status-label"},cc={class:"status-field"},dc={class:"status-label"},Yt=Object.freeze(Object.defineProperty({__proto__:null,default:ge(e.defineComponent({__name:"index",setup(o){const p=[{id:1,parentId:null,name:"Dashboard",path:"/dashboard",component:"dashboard/index",redirect:"",icon:"dashboard",title:"仪表盘",type:Ee.MENU,sort:1,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:2,parentId:null,name:"System",path:"/system",component:"",redirect:"/system/user",icon:"setting",title:"系统管理",type:Ee.DIRECTORY,sort:2,status:X.ENABLED,hidden:!1,keepAlive:!1,children:[{id:21,parentId:2,name:"SystemUser",path:"/system/user",component:"system/user/index",redirect:"",icon:"user",title:"用户管理",type:Ee.MENU,sort:1,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:22,parentId:2,name:"SystemRole",path:"/system/role",component:"system/role/index",redirect:"",icon:"role",title:"角色管理",type:Ee.MENU,sort:2,status:X.ENABLED,hidden:!1,keepAlive:!0},{id:23,parentId:2,name:"SystemMenu",path:"/system/menu",component:"system/menu/index",redirect:"",icon:"menu",title:"菜单管理",type:Ee.MENU,sort:3,status:X.ENABLED,hidden:!1,keepAlive:!0}]}],g=e.ref(!1),f=e.ref([]),u=e.ref(!1),y=e.computed(()=>h.id?"编辑菜单":"新增菜单"),h=e.reactive({id:0,parentId:null,name:"",path:"",component:"",redirect:"",icon:"",title:"",type:Ee.MENU,sort:0,status:X.ENABLED,hidden:!1,keepAlive:!0}),_={name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],path:[{required:!0,message:"请输入路由路径",trigger:"blur"}],title:[{required:!0,message:"请输入菜单标题",trigger:"blur"}]},w=e.ref(),x=()=>{g.value=!0,setTimeout(()=>{f.value=p,g.value=!1},300)},k=(L=null)=>{Object.assign(h,{id:0,parentId:L,name:"",path:"",component:"",redirect:"",icon:"",title:"",type:Ee.MENU,sort:0,status:X.ENABLED,hidden:!1,keepAlive:!0}),u.value=!0},M=L=>{Object.assign(h,L),u.value=!0},S=async()=>{var L;try{await((L=w.value)==null?void 0:L.validate()),ne.Message.success(h.id?"编辑成功":"新增成功"),u.value=!1,x()}catch(C){console.error(C)}},z=L=>({dashboard:"📊",system:"⚙️",user:"👤",role:"👥",menu:"📋",setting:"🔧"})[L||""]||"📄",K=L=>{switch(L){case Ee.DIRECTORY:return"primary";case Ee.MENU:return"success";default:return"warning"}},A=L=>{switch(L){case Ee.DIRECTORY:return"目录";case Ee.MENU:return"菜单";default:return"按钮"}};return e.onMounted(()=>{x()}),(L,C)=>(e.openBlock(),e.createElementBlock("div",ki,[e.createElementVNode("div",yi,[e.createElementVNode("div",wi,[e.createElementVNode("div",xi,[e.createVNode(e.unref(U.Button),{type:"primary",onClick:C[0]||(C[0]=B=>k())},{icon:e.withCtx(()=>[...C[14]||(C[14]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[C[15]||(C[15]=e.createTextVNode(" 新增菜单 ",-1))]),_:1})]),e.createElementVNode("div",Ci,[e.createElementVNode("span",Bi,"共 "+e.toDisplayString(f.value.length)+" 个菜单",1)])]),e.createElementVNode("div",bi,[e.createElementVNode("table",Si,[C[26]||(C[26]=e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",{class:"col-name"},"菜单名称"),e.createElementVNode("th",{class:"col-icon"},"图标"),e.createElementVNode("th",{class:"col-path"},"路由路径"),e.createElementVNode("th",{class:"col-type"},"类型"),e.createElementVNode("th",{class:"col-sort"},"排序"),e.createElementVNode("th",{class:"col-status"},"状态"),e.createElementVNode("th",{class:"col-actions"},"操作")])],-1)),e.createElementVNode("tbody",null,[g.value?(e.openBlock(),e.createElementBlock("tr",$i,[...C[16]||(C[16]=[e.createElementVNode("td",{colspan:"7",class:"loading-cell"},[e.createElementVNode("div",{class:"loading-content"},[e.createElementVNode("div",{class:"loading-spinner"}),e.createElementVNode("span",null,"加载中...")])],-1)])])):f.value.length===0?(e.openBlock(),e.createElementBlock("tr",Ii,[...C[17]||(C[17]=[e.createElementVNode("td",{colspan:"7",class:"empty-cell"},[e.createElementVNode("div",{class:"empty-content"},[e.createElementVNode("svg",{viewBox:"0 0 64 41",fill:"none"},[e.createElementVNode("g",{transform:"translate(0 1)"},[e.createElementVNode("ellipse",{fill:"#f5f5f5",cx:"32",cy:"33",rx:"32",ry:"7"}),e.createElementVNode("g",{stroke:"var(--color-text-placeholder)","stroke-width":"2"},[e.createElementVNode("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),e.createElementVNode("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35H11.95C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:"var(--color-fill)"})])])]),e.createElementVNode("span",null,"暂无数据")])],-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(f.value,B=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B.id},[e.createElementVNode("tr",Mi,[e.createElementVNode("td",Li,[e.createElementVNode("div",Di,[e.createElementVNode("span",Ti,e.toDisplayString(z(B.icon)),1),e.createElementVNode("span",{class:"menu-title",onClick:R=>M(B)},e.toDisplayString(B.title),9,Ai)])]),e.createElementVNode("td",Ui,[e.createElementVNode("span",zi,e.toDisplayString(z(B.icon)),1)]),e.createElementVNode("td",Oi,[e.createElementVNode("code",Fi,e.toDisplayString(B.path),1)]),e.createElementVNode("td",Pi,[e.createVNode(e.unref(we.Tag),{type:K(B.type),size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(A(B.type)),1)]),_:2},1032,["type"])]),e.createElementVNode("td",Ri,[e.createElementVNode("span",qi,e.toDisplayString(B.sort),1)]),e.createElementVNode("td",ji,[e.createVNode(e.unref(we.Tag),{type:B.status===e.unref(X).ENABLED?"success":"danger",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.status===e.unref(X).ENABLED?"启用":"禁用"),1)]),_:2},1032,["type"])]),e.createElementVNode("td",Hi,[e.createVNode(e.unref(U.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",link:"",size:"small",onClick:R=>k(B.id)},{icon:e.withCtx(()=>[...C[18]||(C[18]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),e.createElementVNode("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)])]),default:e.withCtx(()=>[C[19]||(C[19]=e.createTextVNode(" 新增 ",-1))]),_:1},8,["onClick"]),e.createVNode(e.unref(U.Button),{type:"primary",link:"",size:"small",onClick:R=>M(B)},{icon:e.withCtx(()=>[...C[20]||(C[20]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[C[21]||(C[21]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:2},1024)])]),B.children?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(B.children,R=>(e.openBlock(),e.createElementBlock("tr",{key:R.id,class:"data-row tree-row--level-1"},[e.createElementVNode("td",Gi,[e.createElementVNode("div",Ki,[C[22]||(C[22]=e.createElementVNode("span",{class:"tree-indent"},null,-1)),C[23]||(C[23]=e.createElementVNode("span",{class:"tree-line"},null,-1)),e.createElementVNode("span",Wi,e.toDisplayString(z(R.icon)),1),e.createElementVNode("span",{class:"menu-title",onClick:Y=>M(R)},e.toDisplayString(R.title),9,Xi)])]),e.createElementVNode("td",Yi,[e.createElementVNode("span",Ji,e.toDisplayString(z(R.icon)),1)]),e.createElementVNode("td",Zi,[e.createElementVNode("code",Qi,e.toDisplayString(R.path),1)]),e.createElementVNode("td",vi,[e.createVNode(e.unref(we.Tag),{type:K(R.type),size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(A(R.type)),1)]),_:2},1032,["type"])]),e.createElementVNode("td",ec,[e.createElementVNode("span",tc,e.toDisplayString(R.sort),1)]),e.createElementVNode("td",nc,[e.createVNode(e.unref(we.Tag),{type:R.status===e.unref(X).ENABLED?"success":"danger",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R.status===e.unref(X).ENABLED?"启用":"禁用"),1)]),_:2},1032,["type"])]),e.createElementVNode("td",oc,[e.createVNode(e.unref(U.Space),{class:"action-buttons"},{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{type:"primary",link:"",size:"small",onClick:Y=>M(R)},{icon:e.withCtx(()=>[...C[24]||(C[24]=[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{d:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7"}),e.createElementVNode("path",{d:"M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z"})],-1)])]),default:e.withCtx(()=>[C[25]||(C[25]=e.createTextVNode(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:2},1024)])]))),128)):e.createCommentVNode("",!0)],64))),128))])])])]),e.createVNode(e.unref(ne.Modal),{modelValue:u.value,"onUpdate:modelValue":C[13]||(C[13]=B=>u.value=B),title:y.value,width:"600px",class:"menu-modal"},{footer:e.withCtx(()=>[e.createVNode(e.unref(U.Space),null,{default:e.withCtx(()=>[e.createVNode(e.unref(U.Button),{onClick:C[12]||(C[12]=B=>u.value=!1)},{default:e.withCtx(()=>[...C[27]||(C[27]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(U.Button),{type:"primary",onClick:S},{default:e.withCtx(()=>[...C[28]||(C[28]=[e.createTextVNode("确定",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(O.Form),{ref_key:"formRef",ref:w,model:h,rules:_,"label-width":"80px",class:"menu-form"},{default:e.withCtx(()=>[e.createElementVNode("div",lc,[e.createVNode(e.unref(O.FormItem),{label:"上级菜单",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.parentId,"onUpdate:modelValue":C[1]||(C[1]=B=>h.parentId=B),placeholder:"上级菜单ID",disabled:""},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"菜单类型"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Select),{modelValue:h.type,"onUpdate:modelValue":C[2]||(C[2]=B=>h.type=B),options:e.unref(Gt)},null,8,["modelValue","options"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"排序"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.InputNumber),{modelValue:h.sort,"onUpdate:modelValue":C[3]||(C[3]=B=>h.sort=B),min:0},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"菜单名称",prop:"name"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.name,"onUpdate:modelValue":C[4]||(C[4]=B=>h.name=B),placeholder:"请输入菜单名称(路由name)"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"菜单标题",prop:"title"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.title,"onUpdate:modelValue":C[5]||(C[5]=B=>h.title=B),placeholder:"请输入菜单标题"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"路由路径",prop:"path",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.path,"onUpdate:modelValue":C[6]||(C[6]=B=>h.path=B),placeholder:"请输入路由路径"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"组件路径",class:"form-item-full"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.component,"onUpdate:modelValue":C[7]||(C[7]=B=>h.component=B),placeholder:"请输入组件路径"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"图标"},{default:e.withCtx(()=>[e.createVNode(e.unref(O.Input),{modelValue:h.icon,"onUpdate:modelValue":C[8]||(C[8]=B=>h.icon=B),placeholder:"请输入图标名称"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"状态"},{default:e.withCtx(()=>[e.createElementVNode("div",sc,[e.createVNode(e.unref(O.Switch),{modelValue:h.status,"onUpdate:modelValue":C[9]||(C[9]=B=>h.status=B),"active-value":e.unref(X).ENABLED,"inactive-value":e.unref(X).DISABLED},null,8,["modelValue","active-value","inactive-value"]),e.createElementVNode("span",rc,e.toDisplayString(h.status===e.unref(X).ENABLED?"启用":"禁用"),1)])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"隐藏"},{default:e.withCtx(()=>[e.createElementVNode("div",ac,[e.createVNode(e.unref(O.Switch),{modelValue:h.hidden,"onUpdate:modelValue":C[10]||(C[10]=B=>h.hidden=B)},null,8,["modelValue"]),e.createElementVNode("span",ic,e.toDisplayString(h.hidden?"隐藏":"显示"),1)])]),_:1}),e.createVNode(e.unref(O.FormItem),{label:"缓存"},{default:e.withCtx(()=>[e.createElementVNode("div",cc,[e.createVNode(e.unref(O.Switch),{modelValue:h.keepAlive,"onUpdate:modelValue":C[11]||(C[11]=B=>h.keepAlive=B)},null,8,["modelValue"]),e.createElementVNode("span",dc,e.toDisplayString(h.keepAlive?"开启":"关闭"),1)])]),_:1})])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-fcdec27c"]])},Symbol.toStringTag,{value:"Module"}));b.Footer=ws,b.Forbidden=vs,b.Gender=Ht,b.GenderOptions=Or,b.GenderText=Ur,b.Header=It,b.Layout=ct,b.Login=Ft,b.MenuType=Ee,b.MenuTypeOptions=Gt,b.MenuTypeText=zr,b.NotFound=Pt,b.Sidebar=it,b.Status=X,b.StatusOptions=ft,b.StatusText=Ar,b.Tabs=Es,b.appConfig=Zt,b.batchDeleteUsers=Lr,b.clearToken=De,b.createLayoutRoute=fr,b.createMenu=yr,b.createRole=_r,b.createRouter=ur,b.createTranslator=rr,b.createUser=$r,b.createXtoApp=Pr,b.defaultDynamicRoutes=dr,b.deleteMenu=xr,b.deleteRole=Er,b.deleteUser=Mr,b.getApiBaseUrl=_t,b.getAppId=Ue,b.getClientId=Je,b.getCode=on,b.getMenuList=kr,b.getMenuTree=jt,b.getRefreshTime=nn,b.getRefreshToken=tn,b.getRoleDetail=gr,b.getRoleList=hr,b.getToken=Pe,b.getTokenExpire=xt,b.getTokenType=kt,b.getUserDetail=Sr,b.getUserInfo=Ot,b.getUserList=br,b.hasPermission=ar,b.hasRole=ir,b.hasToken=at,b.http=oe,b.initAppConfig=gt,b.isAdmin=cr,b.isTokenExpired=St,b.layoutRoute=mt,b.local=G,b.localStorageUtil=Oe,b.login=zt,b.logout=Ts,b.mockMenuData=qt,b.permissionDirective=Fr,b.refreshToken=As,b.resetPassword=Tr,b.resetRouter=pr,b.router=pt,b.session=Qt,b.sessionStorageUtil=Fe,b.setApiBaseUrl=Ds,b.setCode=bt,b.setRefreshTime=Bt,b.setRefreshToken=wt,b.setToken=Vt,b.setTokenExpire=Ct,b.setTokenInfo=rt,b.setTokenType=yt,b.setupRouterGuards=Br,b.staticRoutes=dt,b.updateMenu=wr,b.updateRole=Nr,b.updateRoleStatus=Vr,b.updateUser=Ir,b.updateUserStatus=Dr,b.useApp=er,b.useAppStore=be,b.useAuth=tr,b.useAuthStore=Te,b.useForm=nr,b.useI18n=sr,b.useLocaleStore=We,b.useMenuStore=xe,b.useTable=or,b.useUserStore=ke,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
|