'};n.configure=function(u){var d,p;for(d in u)p=u[d],p!==void 0&&u.hasOwnProperty(d)&&(r[d]=p);return this},n.status=null,n.set=function(u){var d=n.isStarted();u=s(u,r.minimum,1),n.status=u===1?null:u;var p=n.render(!d),y=p.querySelector(r.barSelector),b=r.speed,T=r.easing;return p.offsetWidth,c(function(S){r.positionUsing===""&&(r.positionUsing=n.getPositioningCSS()),h(y,i(u,b,T)),u===1?(h(p,{transition:"none",opacity:1}),p.offsetWidth,setTimeout(function(){h(p,{transition:"all "+b+"ms linear",opacity:0}),setTimeout(function(){n.remove(),S()},b)},b)):setTimeout(S,b)}),this},n.isStarted=function(){return typeof n.status=="number"},n.start=function(){n.status||n.set(0);var u=function(){setTimeout(function(){n.status&&(n.trickle(),u())},r.trickleSpeed)};return r.trickle&&u(),this},n.done=function(u){return!u&&!n.status?this:n.inc(.3+.5*Math.random()).set(1)},n.inc=function(u){var d=n.status;return d?(typeof u!="number"&&(u=(1-d)*s(Math.random()*d,.1,.95)),d=s(d+u,0,.994),n.set(d)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},function(){var u=0,d=0;n.promise=function(p){return!p||p.state()==="resolved"?this:(d===0&&n.start(),u++,d++,p.always(function(){d--,d===0?(u=0,n.done()):n.set((u-d)/u)}),this)}}(),n.render=function(u){if(n.isRendered())return document.getElementById("nprogress");m(document.documentElement,"nprogress-busy");var d=document.createElement("div");d.id="nprogress",d.innerHTML=r.template;var p=d.querySelector(r.barSelector),y=u?"-100":o(n.status||0),b=document.querySelector(r.parent),T;return h(p,{transition:"all 0 linear",transform:"translate3d("+y+"%,0,0)"}),r.showSpinner||(T=d.querySelector(r.spinnerSelector),T&&w(T)),b!=document.body&&m(b,"nprogress-custom-parent"),b.appendChild(d),d},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var u=document.getElementById("nprogress");u&&w(u)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var u=document.body.style,d="WebkitTransform"in u?"Webkit":"MozTransform"in u?"Moz":"msTransform"in u?"ms":"OTransform"in u?"O":"";return d+"Perspective"in u?"translate3d":d+"Transform"in u?"translate":"margin"};function s(u,d,p){return up?p:u}function o(u){return(-1+u)*100}function i(u,d,p){var y;return r.positionUsing==="translate3d"?y={transform:"translate3d("+o(u)+"%,0,0)"}:r.positionUsing==="translate"?y={transform:"translate("+o(u)+"%,0)"}:y={"margin-left":o(u)+"%"},y.transition="all "+d+"ms "+p,y}var c=function(){var u=[];function d(){var p=u.shift();p&&p(d)}return function(p){u.push(p),u.length==1&&d()}}(),h=function(){var u=["Webkit","O","Moz","ms"],d={};function p(S){return S.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(R,C){return C.toUpperCase()})}function y(S){var R=document.body.style;if(S in R)return S;for(var C=u.length,F=S.charAt(0).toUpperCase()+S.slice(1),x;C--;)if(x=u[C]+F,x in R)return x;return S}function b(S){return S=p(S),d[S]||(d[S]=y(S))}function T(S,R,C){R=b(R),S.style[R]=C}return function(S,R){var C=arguments,F,x;if(C.length==2)for(F in R)x=R[F],x!==void 0&&R.hasOwnProperty(F)&&T(S,F,x);else T(S,C[1],C[2])}}();function f(u,d){var p=typeof u=="string"?u:E(u);return p.indexOf(" "+d+" ")>=0}function m(u,d){var p=E(u),y=p+d;f(p,d)||(u.className=y.substring(1))}function l(u,d){var p=E(u),y;f(u,d)&&(y=p.replace(" "+d+" "," "),u.className=y.substring(1,y.length-1))}function E(u){return(" "+(u.className||"")+" ").replace(/\s+/gi," ")}function w(u){u&&u.parentNode&&u.parentNode.removeChild(u)}return n})}(ee)),ee.exports}var Es=hs();const _e=sn(Es);_e.configure({showSpinner:!1});const{setTitle:gs}=ps();function ys(e){e.beforeEach(async(t,n)=>{_e.start();const r=Be(),s=pn();if(!Fe())return cs(t)?!0:"/login";if(t.path==="/login")return"/";if(r.roles.length!==0)return!0;try{await r.getInfo();const o=r.roles;return Oe.dynamic?s.setRoutes(o):s.setAllRoutes(),s.addRoutes.forEach(i=>e.addRoute(i)),{...t,replace:!0}}catch(o){return r.resetToken(),X.error(o.message||"路由守卫发生错误"),"/login"}}),e.afterEach(t=>{fs(t),gs(t.meta.title),_e.done()})}const te=()=>O(()=>import("./index-DeRo-7E2.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18])),Ut=[{path:"/redirect",component:te,meta:{hidden:!0},children:[{path:":path(.*)",component:()=>O(()=>import("./index-CbD5WXVu.js"),__vite__mapDeps([19,1]))}]},{path:"/403",component:()=>O(()=>import("./403-BL5SyUD8.js"),__vite__mapDeps([20,21,10,3,1,22,7,11])),meta:{hidden:!0}},{path:"/404",component:()=>O(()=>import("./404-BYJWNwhn.js"),__vite__mapDeps([23,21,10,3,1,22,7,11])),meta:{hidden:!0},alias:"/:pathMatch(.*)*"},{path:"/login",component:()=>O(()=>import("./index-C5QcBq9L.js"),__vite__mapDeps([24,1,4,5,3,6,7,8,9,10,11,25,26,18])),meta:{hidden:!0}},{path:"/",component:te,redirect:"/dashboard",children:[{path:"dashboard",component:()=>O(()=>import("./index-DAg5dMxf.js"),__vite__mapDeps([27,1,10,3,11,28])),name:"Dashboard",meta:{title:"首页",svgIcon:"dashboard",affix:!0}}]},{path:"/demo",component:te,redirect:"/demo/unocss",name:"Demo",meta:{title:"示例集合",elIcon:"DataBoard"},children:[{path:"unocss",component:()=>O(()=>import("./index-CQhVxPaC.js"),__vite__mapDeps([29,10,1])),name:"UnoCSS",meta:{title:"UnoCSS"}},{path:"element-plus",component:()=>O(()=>import("./index-BhAKRBEq.js"),__vite__mapDeps([30,5,31,32,1,3,10,11,33,34,16,17,15,35,9,18,14,26,7])),name:"ElementPlus",meta:{title:"Element Plus",keepAlive:!0}},{path:"vxe-table",component:()=>O(()=>import("./index-D5Pu8hzF.js"),__vite__mapDeps([36,31,32,1,3,11,7,18,17])),name:"VxeTable",meta:{title:"Vxe Table",keepAlive:!0}},{path:"level2",component:()=>O(()=>import("./index-Cy4N1JEj.js"),__vite__mapDeps([37,10,3,1,11,38,14])),redirect:"/demo/level2/level3",name:"Level2",meta:{title:"二级路由",alwaysShow:!0},children:[{path:"level3",component:()=>O(()=>import("./index-DlaRhTjx.js"),__vite__mapDeps([39,3,1,11,14,18])),name:"Level3",meta:{title:"三级路由",keepAlive:!0}}]},{path:"composable-demo",redirect:"/demo/composable-demo/use-fetch-select",name:"ComposableDemo",meta:{title:"组合式函数"},children:[{path:"use-fetch-select",component:()=>O(()=>import("./use-fetch-select-BR1adVr6.js"),__vite__mapDeps([40,1,3,10,11,41,34,18,15,9,35,14])),name:"UseFetchSelect",meta:{title:"useFetchSelect"}},{path:"use-fullscreen-loading",component:()=>O(()=>import("./use-fullscreen-loading-BH5zT3B9.js"),__vite__mapDeps([42,3,1,10,11,43,7,14,34])),name:"UseFullscreenLoading",meta:{title:"useFullscreenLoading"}},{path:"use-watermark",component:()=>O(()=>import("./use-watermark-mzaPtgvn.js"),__vite__mapDeps([44,2,3,1,10,11,45,8,7,14])),name:"UseWatermark",meta:{title:"useWatermark"}}]}]},{path:"/link",meta:{title:"文档链接",elIcon:"Link"},children:[{path:"https://juejin.cn/post/7089377403717287972",component:()=>{},name:"Link1",meta:{title:"中文文档"}},{path:"https://juejin.cn/column/7207659644487139387",component:()=>{},name:"Link2",meta:{title:"新手教程"}}]}],ot=[{path:"/permission",component:te,redirect:"/permission/page-level",name:"Permission",meta:{title:"权限演示",elIcon:"Lock",roles:["admin","editor"],alwaysShow:!0},children:[{path:"page-level",component:()=>O(()=>import("./page-level-BxGg49Qv.js"),__vite__mapDeps([46,47,3,1,10,48,14,15,11,49])),name:"PermissionPageLevel",meta:{title:"页面级",roles:["admin"]}},{path:"button-level",component:()=>O(()=>import("./button-level-mBvJG59v.js"),__vite__mapDeps([50,47,3,1,10,48,14,15,11,51,13,7])),name:"PermissionButtonLevel",meta:{title:"按钮级",roles:void 0}}]}],M=Jt({history:Oe.history,routes:Ut});function ws(){try{M.getRoutes().forEach(e=>{var r;const{name:t,meta:n}=e;t&&((r=n.roles)!=null&&r.length)&&M.hasRoute(t)&&M.removeRoute(t)})}catch{location.reload()}}ys(M);function bs(e){for(const[t,n]of Object.entries(on))e.component(t,n)}function Ss(e){return Array.isArray?Array.isArray(e):Object.prototype.toString.call(e)==="[object Array]"}function to(e){return/^(https?:|mailto:|tel:)/.test(e)}const Ts={mounted(e,t){var s;const{value:n}=t,{roles:r}=Be();if(Ss(n)&&n.length>0)r.some(i=>n.includes(i))||((s=e.parentNode)==null||s.removeChild(e));else throw new Error(`参数必须是一个数组且长度大于 0,参考:v-permission="['admin','editor']"`)}};function Rs(e){e.directive("permission",Ts)}const As={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",style:{width:"1em",height:"1em",fill:"currentColor"}},_s=["xlink:href"];function Cs(e,t){return ut(),$t("svg",As,[Gt("use",{"xlink:href":"#"+e.name},null,8,_s)])}const Os={name:"SvgIcon",props:{name:{type:String,required:!0}},render:Cs};function vs(e){e.component("SvgIcon",Os)}lt.setConfig({size:"medium",zIndex:9999,version:0,loadingText:null,table:{showHeader:!0,showOverflow:"tooltip",showHeaderOverflow:"tooltip",autoResize:!0,border:"inner",emptyText:"暂无数据",rowConfig:{isHover:!0,isCurrent:!0,keyField:"_VXE_ID"},columnConfig:{resizable:!1},align:"center",headerAlign:"center"},pager:{perfect:!1,pageSize:10,pagerCount:7,pageSizes:[10,20,50],layouts:["Total","PrevJump","PrevPage","Number","NextPage","NextJump","Sizes","FullJump"]},modal:{minWidth:500,minHeight:400,lockView:!0,mask:!0,dblclickZoom:!1,showTitleOverflow:!0,transfer:!0,draggable:!1}});function Fs(e){e.use(lt)}function Ds(e){bs(e),Rs(e),vs(e),Fs(e)}const Ps="grey-mode",xs="color-weakness",it=document.documentElement.classList;function Ls(){const e=ke();Ce(()=>{it.toggle(Ps,e.showGreyMode),it.toggle(xs,e.showColorWeakness)})}function ks(){return{initGreyAndColorWeakness:Ls}}function Bs(){setTimeout(()=>{ct({title:"为爱发电!",type:"success",message:q("div",null,[q("div",null,"所有源码均免费开源,如果对你有帮助,欢迎点个 Star 支持一下!"),q("a",{style:"color: teal",target:"_blank",href:"https://github.com/un-pany/v3-admin-vite"},"点击传送")]),duration:0,position:"bottom-right"})},0)}function Ns(){setTimeout(()=>{ct({title:"懒人服务?",type:"warning",message:q("div",null,[q("div",null,"不想自己动手,但想移除 TS 或其他模块?也有懒人套餐!"),q("a",{style:"color: teal",target:"_blank",href:"https://github.com/un-pany/v3-admin-vite"},"点击逛逛")]),duration:0,position:"bottom-right"})},500)}function Is(){return{initStarNotification:Bs,initStoreNotification:Ns}}const Vt="normal",jt=[{title:"默认",name:Vt},{title:"黑暗",name:"dark"},{title:"深蓝",name:"dark-blue"}],Ne=B(Qr()||Vt);function Us(e){Ne.value=e}function Vs(e){document.documentElement.classList.add(e)}function js(e){const t=jt.map(n=>n.name).filter(n=>n!==e);document.documentElement.classList.remove(...t)}function qs(){Ce(()=>{const e=Ne.value;js(e),Vs(e),Zr(e)})}function Ms(){return{themeList:jt,activeThemeName:Ne,initTheme:qs,setTheme:Us}}var Hs={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},dropdown:{toggleDropdown:"切换下拉选项"},mention:{loading:"加载中"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计"},tour:{next:"下一步",previous:"上一步",finish:"结束导览"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}};const zs=Kt({__name:"App",setup(e){const{initTheme:t}=Ms(),{initGreyAndColorWeakness:n}=ks(),{initStarNotification:r,initStoreNotification:s}=Is();return t(),n(),r(),s(),(o,i)=>{const c=Qt("router-view"),h=an;return ut(),Xt(h,{locale:Yt(Hs)},{default:Zt(()=>[en(c)]),_:1},8,["locale"])}}}),Ie=tn(zs);Ds(Ie);Ie.use(un).use(M);M.isReady().then(()=>{Ie.mount("#app")});export{Kr as D,Nt as L,Xs as S,Ks as a,is as b,eo as c,pn as d,Be as e,$r as f,Qs as g,Ms as h,to as i,Ss as j,Ys as r,Zs as s,ke as u};
+`):" "+Ze(o[0]):"as no adapter specified";throw new g("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return r},adapters:be};function me(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new z(null,e)}function et(e){return me(e),e.headers=D.from(e.headers),e.data=pe.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Lt.getAdapter(e.adapter||G.adapter)(e).then(function(r){return me(e),r.data=pe.call(e,e.transformResponse,r),r.headers=D.from(r.headers),r},function(r){return Ot(r)||(me(e),r&&r.response&&(r.response.data=pe.call(e,e.transformResponse,r.response),r.response.headers=D.from(r.response.headers))),Promise.reject(r)})}const kt="1.7.9",le={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{le[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const tt={};le.transitional=function(t,n,r){function s(o,i){return"[Axios v"+kt+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new g(s(i," has been removed"+(n?" in "+n:"")),g.ERR_DEPRECATED);return n&&!tt[i]&&(tt[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}};le.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function qr(e,t,n){if(typeof e!="object")throw new g("options must be an object",g.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],h=c===void 0||i(c,o,e);if(h!==!0)throw new g("option "+o+" must be "+h,g.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new g("Unknown option "+o,g.ERR_BAD_OPTION)}}const Z={assertOptions:qr,validators:le},k=Z.validators;class U{constructor(t){this.defaults=t,this.interceptors={request:new Je,response:new Je}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
+`+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=V(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Z.assertOptions(r,{silentJSONParsing:k.transitional(k.boolean),forcedJSONParsing:k.transitional(k.boolean),clarifyTimeoutError:k.transitional(k.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Z.assertOptions(s,{encode:k.function,serialize:k.function},!0)),Z.assertOptions(n,{baseUrl:k.spelling("baseURL"),withXsrfToken:k.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],u=>{delete o[u]}),n.headers=D.concat(i,o);const c=[];let h=!0;this.interceptors.request.forEach(function(d){typeof d.runWhen=="function"&&d.runWhen(n)===!1||(h=h&&d.synchronous,c.unshift(d.fulfilled,d.rejected))});const f=[];this.interceptors.response.forEach(function(d){f.push(d.fulfilled,d.rejected)});let m,l=0,E;if(!h){const u=[et.bind(this),void 0];for(u.unshift.apply(u,c),u.push.apply(u,f),E=u.length,m=Promise.resolve(n);l{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new z(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Le(function(s){t=s}),cancel:t}}}function Mr(e){return function(n){return e.apply(null,n)}}function Hr(e){return a.isObject(e)&&e.isAxiosError===!0}const Se={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Se).forEach(([e,t])=>{Se[t]=e});function Bt(e){const t=new U(e),n=dt(U.prototype.request,t);return a.extend(n,U.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return Bt(V(e,s))},n}const _=Bt(G);_.Axios=U;_.CanceledError=z;_.CancelToken=Le;_.isCancel=Ot;_.VERSION=kt;_.toFormData=ue;_.AxiosError=g;_.Cancel=_.CanceledError;_.all=function(t){return Promise.all(t)};_.spread=Mr;_.isAxiosError=Hr;_.mergeConfig=V;_.AxiosHeaders=D;_.formToJSON=e=>Ct(a.isHTMLForm(e)?new FormData(e):e);_.getAdapter=Lt.getAdapter;_.HttpStatusCode=Se;_.default=_;function nt(){Be().logout(),location.reload()}function zr(){const e=_.create();return e.interceptors.request.use(t=>t,t=>Promise.reject(t)),e.interceptors.response.use(t=>{var o;const n=t.data,r=(o=t.request)==null?void 0:o.responseType;if(r==="blob"||r==="arraybuffer")return n;const s=n.code;if(s===void 0)return X.error("非本系统的接口"),Promise.reject(new Error("非本系统的接口"));switch(s){case 0:return n;case 401:return nt();default:return X.error(n.message||"Error"),Promise.reject(new Error("Error"))}},t=>{switch(nn(t,"response.status")){case 400:t.message="请求错误";break;case 401:nt();break;case 403:t.message="拒绝访问";break;case 404:t.message="请求地址出错";break;case 408:t.message="请求超时";break;case 500:t.message="服务器内部错误";break;case 501:t.message="服务未实现";break;case 502:t.message="网关错误";break;case 503:t.message="服务不可用";break;case 504:t.message="网关超时";break;case 505:t.message="HTTP 版本不受支持";break}return X.error(t.message),Promise.reject(t)}),e}function Wr(e){return t=>{const n=Fe(),r={baseURL:"https://mock.mengxuegu.com/mock/63218b5fb4c53348ed2bc212/api/v1",headers:{Authorization:n?`Bearer ${n}`:void 0,"Content-Type":"application/json"},data:{},timeout:5e3,withCredentials:!1},s=rn(r,t);return e(s)}}const Jr=zr(),$r=Wr(Jr);function Gr(){return $r({url:"users/info",method:"get"})}var Kr=(e=>(e[e.Mobile=0]="Mobile",e[e.Desktop=1]="Desktop",e))(Kr||{}),Nt=(e=>(e.Left="left",e.Top="top",e.LeftTop="left-top",e))(Nt||{});const Ks="opened",Xs="closed";function Xr(){const e=localStorage.getItem(A.CONFIG_LAYOUT);return e?JSON.parse(e):null}function Yr(e){localStorage.setItem(A.CONFIG_LAYOUT,JSON.stringify(e))}function Ys(){localStorage.removeItem(A.CONFIG_LAYOUT)}function Qs(){return localStorage.getItem(A.SIDEBAR_STATUS)}function Zs(e){localStorage.setItem(A.SIDEBAR_STATUS,e)}function Qr(){return localStorage.getItem(A.ACTIVE_THEME_NAME)}function Zr(e){localStorage.setItem(A.ACTIVE_THEME_NAME,e)}function es(){const e=localStorage.getItem(A.VISITED_VIEWS);return JSON.parse(e??"[]")}function ts(e){e.forEach(t=>{delete t.matched,delete t.redirectedFrom}),localStorage.setItem(A.VISITED_VIEWS,JSON.stringify(e))}function ns(){const e=localStorage.getItem(A.CACHED_VIEWS);return JSON.parse(e??"[]")}function rs(e){localStorage.setItem(A.CACHED_VIEWS,JSON.stringify(e))}const ss={layoutMode:Nt.Left,showSettings:!0,showTagsView:!0,fixedHeader:!0,showFooter:!0,showLogo:!0,showNotify:!0,showThemeSwitch:!0,showScreenfull:!0,showSearchMenu:!0,cacheTagsView:!1,showWatermark:!0,showGreyMode:!1,showColorWeakness:!1},os={...ss,...Xr()},ke=se("settings",()=>{const e={};for(const[n,r]of Object.entries(os)){const s=B(r);e[n]=s,at(s,()=>{const o=t();Yr(o)})}const t=()=>{const n={};for(const[r,s]of Object.entries(e))n[r]=s.value;return n};return e}),is=se("tags-view",()=>{const{cacheTagsView:e}=ke(),t=B(e?es():[]),n=B(e?ns():[]);return Ce(()=>{ts(t.value),rs(n.value)}),{visitedViews:t,cachedViews:n,addVisitedView:l=>{const E=t.value.findIndex(w=>w.path===l.path);E!==-1?t.value[E].fullPath!==l.fullPath&&(t.value[E]={...l}):t.value.push({...l})},addCachedView:l=>{var E;typeof l.name=="string"&&(n.value.includes(l.name)||(E=l.meta)!=null&&E.keepAlive&&n.value.push(l.name))},delVisitedView:l=>{const E=t.value.findIndex(w=>w.path===l.path);E!==-1&&t.value.splice(E,1)},delCachedView:l=>{if(typeof l.name!="string")return;const E=n.value.indexOf(l.name);E!==-1&&n.value.splice(E,1)},delOthersVisitedViews:l=>{t.value=t.value.filter(E=>{var w;return((w=E.meta)==null?void 0:w.affix)||E.path===l.path})},delOthersCachedViews:l=>{if(typeof l.name!="string")return;const E=n.value.indexOf(l.name);E!==-1?n.value=n.value.slice(E,E+1):n.value=[]},delAllVisitedViews:()=>{t.value=t.value.filter(l=>{var E;return(E=l.meta)==null?void 0:E.affix})},delAllCachedViews:()=>{n.value=[]}}}),Be=se("user",()=>{const e=B(Fe()||""),t=B([]),n=B(""),r=is(),s=ke(),o=async l=>{je(l),e.value=l},i=async()=>{var E;const{data:l}=await Gr();n.value=l.username,t.value=((E=l.roles)==null?void 0:E.length)>0?l.roles:Oe.defaultRoles},c=async l=>{const E=`token-${l}`;e.value=E,je(E),location.reload()},h=()=>{qe(),e.value="",t.value=[],ws(),m()},f=()=>{qe(),e.value="",t.value=[]},m=()=>{s.cacheTagsView||(r.delAllVisitedViews(),r.delAllCachedViews())};return{token:e,roles:t,username:n,setToken:o,getInfo:i,changeRoles:c,logout:h,resetToken:f}}),as=["/login"],us=[];function cs(e){return as.includes(e.path)||us.includes(e.name)}function ls(e){return{all:e=e||new Map,on:function(t,n){var r=e.get(t);r?r.push(n):e.set(t,[n])},off:function(t,n){var r=e.get(t);r&&(n?r.splice(r.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var r=e.get(t);r&&r.slice().map(function(s){s(n)}),(r=e.get("*"))&&r.slice().map(function(s){s(t,n)})}}}const Te=ls(),Re=Symbol("ROUTE_CHANGE");let Ae;function fs(e){Te.emit(Re,e),Ae=e}function eo(){const e=[],t=(r,s=!1)=>{e.push(r),Te.on(Re,r),s&&Ae&&r(Ae)},n=r=>{Te.off(Re,r)};return Wt(()=>{e.forEach(n)}),{listenerRouteChange:t,removeRouteListener:n}}const rt="V3 Admin Vite",It=B("");function ds(e){It.value=e?`${rt} | ${e}`:rt}at(It,(e,t)=>{document&&e!==t&&(document.title=e)});function ps(){return{setTitle:ds}}var ee={exports:{}};var ms=ee.exports,st;function hs(){return st||(st=1,function(e,t){(function(n,r){e.exports=r()})(ms,function(){var n={};n.version="0.2.0";var r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};n.configure=function(u){var d,p;for(d in u)p=u[d],p!==void 0&&u.hasOwnProperty(d)&&(r[d]=p);return this},n.status=null,n.set=function(u){var d=n.isStarted();u=s(u,r.minimum,1),n.status=u===1?null:u;var p=n.render(!d),y=p.querySelector(r.barSelector),b=r.speed,T=r.easing;return p.offsetWidth,c(function(S){r.positionUsing===""&&(r.positionUsing=n.getPositioningCSS()),h(y,i(u,b,T)),u===1?(h(p,{transition:"none",opacity:1}),p.offsetWidth,setTimeout(function(){h(p,{transition:"all "+b+"ms linear",opacity:0}),setTimeout(function(){n.remove(),S()},b)},b)):setTimeout(S,b)}),this},n.isStarted=function(){return typeof n.status=="number"},n.start=function(){n.status||n.set(0);var u=function(){setTimeout(function(){n.status&&(n.trickle(),u())},r.trickleSpeed)};return r.trickle&&u(),this},n.done=function(u){return!u&&!n.status?this:n.inc(.3+.5*Math.random()).set(1)},n.inc=function(u){var d=n.status;return d?(typeof u!="number"&&(u=(1-d)*s(Math.random()*d,.1,.95)),d=s(d+u,0,.994),n.set(d)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},function(){var u=0,d=0;n.promise=function(p){return!p||p.state()==="resolved"?this:(d===0&&n.start(),u++,d++,p.always(function(){d--,d===0?(u=0,n.done()):n.set((u-d)/u)}),this)}}(),n.render=function(u){if(n.isRendered())return document.getElementById("nprogress");m(document.documentElement,"nprogress-busy");var d=document.createElement("div");d.id="nprogress",d.innerHTML=r.template;var p=d.querySelector(r.barSelector),y=u?"-100":o(n.status||0),b=document.querySelector(r.parent),T;return h(p,{transition:"all 0 linear",transform:"translate3d("+y+"%,0,0)"}),r.showSpinner||(T=d.querySelector(r.spinnerSelector),T&&w(T)),b!=document.body&&m(b,"nprogress-custom-parent"),b.appendChild(d),d},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var u=document.getElementById("nprogress");u&&w(u)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var u=document.body.style,d="WebkitTransform"in u?"Webkit":"MozTransform"in u?"Moz":"msTransform"in u?"ms":"OTransform"in u?"O":"";return d+"Perspective"in u?"translate3d":d+"Transform"in u?"translate":"margin"};function s(u,d,p){return up?p:u}function o(u){return(-1+u)*100}function i(u,d,p){var y;return r.positionUsing==="translate3d"?y={transform:"translate3d("+o(u)+"%,0,0)"}:r.positionUsing==="translate"?y={transform:"translate("+o(u)+"%,0)"}:y={"margin-left":o(u)+"%"},y.transition="all "+d+"ms "+p,y}var c=function(){var u=[];function d(){var p=u.shift();p&&p(d)}return function(p){u.push(p),u.length==1&&d()}}(),h=function(){var u=["Webkit","O","Moz","ms"],d={};function p(S){return S.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(R,C){return C.toUpperCase()})}function y(S){var R=document.body.style;if(S in R)return S;for(var C=u.length,F=S.charAt(0).toUpperCase()+S.slice(1),x;C--;)if(x=u[C]+F,x in R)return x;return S}function b(S){return S=p(S),d[S]||(d[S]=y(S))}function T(S,R,C){R=b(R),S.style[R]=C}return function(S,R){var C=arguments,F,x;if(C.length==2)for(F in R)x=R[F],x!==void 0&&R.hasOwnProperty(F)&&T(S,F,x);else T(S,C[1],C[2])}}();function f(u,d){var p=typeof u=="string"?u:E(u);return p.indexOf(" "+d+" ")>=0}function m(u,d){var p=E(u),y=p+d;f(p,d)||(u.className=y.substring(1))}function l(u,d){var p=E(u),y;f(u,d)&&(y=p.replace(" "+d+" "," "),u.className=y.substring(1,y.length-1))}function E(u){return(" "+(u.className||"")+" ").replace(/\s+/gi," ")}function w(u){u&&u.parentNode&&u.parentNode.removeChild(u)}return n})}(ee)),ee.exports}var Es=hs();const _e=sn(Es);_e.configure({showSpinner:!1});const{setTitle:gs}=ps();function ys(e){e.beforeEach(async(t,n)=>{_e.start();const r=Be(),s=pn();if(!Fe())return cs(t)?!0:"/login";if(t.path==="/login")return"/";if(r.roles.length!==0)return!0;try{await r.getInfo();const o=r.roles;return Oe.dynamic?s.setRoutes(o):s.setAllRoutes(),s.addRoutes.forEach(i=>e.addRoute(i)),{...t,replace:!0}}catch(o){return r.resetToken(),X.error(o.message||"路由守卫发生错误"),"/login"}}),e.afterEach(t=>{fs(t),gs(t.meta.title),_e.done()})}const te=()=>O(()=>import("./index-CiPLmEPz.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18])),Ut=[{path:"/redirect",component:te,meta:{hidden:!0},children:[{path:":path(.*)",component:()=>O(()=>import("./index-CbD5WXVu.js"),__vite__mapDeps([19,1]))}]},{path:"/403",component:()=>O(()=>import("./403-CXpBO8I5.js"),__vite__mapDeps([20,21,10,3,1,22,7,11])),meta:{hidden:!0}},{path:"/404",component:()=>O(()=>import("./404-BoeoD8VL.js"),__vite__mapDeps([23,21,10,3,1,22,7,11])),meta:{hidden:!0},alias:"/:pathMatch(.*)*"},{path:"/login",component:()=>O(()=>import("./index-iAiGkLVW.js"),__vite__mapDeps([24,1,4,5,3,6,7,8,9,10,11,25,26,18])),meta:{hidden:!0}},{path:"/",component:te,redirect:"/dashboard",children:[{path:"dashboard",component:()=>O(()=>import("./index-DPLb4m1U.js"),__vite__mapDeps([27,1,10,3,11,28])),name:"Dashboard",meta:{title:"首页",svgIcon:"dashboard",affix:!0}}]},{path:"/demo",component:te,redirect:"/demo/unocss",name:"Demo",meta:{title:"示例集合",elIcon:"DataBoard"},children:[{path:"unocss",component:()=>O(()=>import("./index-CQhVxPaC.js"),__vite__mapDeps([29,10,1])),name:"UnoCSS",meta:{title:"UnoCSS"}},{path:"element-plus",component:()=>O(()=>import("./index-DiFUr8Z5.js"),__vite__mapDeps([30,5,31,32,1,3,10,11,33,34,16,17,15,35,9,18,14,26,7])),name:"ElementPlus",meta:{title:"Element Plus",keepAlive:!0}},{path:"vxe-table",component:()=>O(()=>import("./index-tI51bRPi.js"),__vite__mapDeps([36,31,32,1,3,11,7,18,17])),name:"VxeTable",meta:{title:"Vxe Table",keepAlive:!0}},{path:"level2",component:()=>O(()=>import("./index-CxUHRKMq.js"),__vite__mapDeps([37,10,3,1,11,38,14])),redirect:"/demo/level2/level3",name:"Level2",meta:{title:"二级路由",alwaysShow:!0},children:[{path:"level3",component:()=>O(()=>import("./index-Lm8FICJj.js"),__vite__mapDeps([39,3,1,11,14,18])),name:"Level3",meta:{title:"三级路由",keepAlive:!0}}]},{path:"composable-demo",redirect:"/demo/composable-demo/use-fetch-select",name:"ComposableDemo",meta:{title:"组合式函数"},children:[{path:"use-fetch-select",component:()=>O(()=>import("./use-fetch-select-BRmppHFD.js"),__vite__mapDeps([40,1,3,10,11,41,34,18,15,9,35,14])),name:"UseFetchSelect",meta:{title:"useFetchSelect"}},{path:"use-fullscreen-loading",component:()=>O(()=>import("./use-fullscreen-loading-Df-1y1yY.js"),__vite__mapDeps([42,3,1,10,11,43,7,14,34])),name:"UseFullscreenLoading",meta:{title:"useFullscreenLoading"}},{path:"use-watermark",component:()=>O(()=>import("./use-watermark-kpF0ZioV.js"),__vite__mapDeps([44,2,3,1,10,11,45,8,7,14])),name:"UseWatermark",meta:{title:"useWatermark"}}]}]},{path:"/link",meta:{title:"文档链接",elIcon:"Link"},children:[{path:"https://juejin.cn/post/7089377403717287972",component:()=>{},name:"Link1",meta:{title:"中文文档"}},{path:"https://juejin.cn/column/7207659644487139387",component:()=>{},name:"Link2",meta:{title:"新手教程"}}]}],ot=[{path:"/permission",component:te,redirect:"/permission/page-level",name:"Permission",meta:{title:"权限演示",elIcon:"Lock",roles:["admin","editor"],alwaysShow:!0},children:[{path:"page-level",component:()=>O(()=>import("./page-level-BMQJhlt5.js"),__vite__mapDeps([46,47,3,1,10,48,14,15,11,49])),name:"PermissionPageLevel",meta:{title:"页面级",roles:["admin"]}},{path:"button-level",component:()=>O(()=>import("./button-level-CGMVZUjY.js"),__vite__mapDeps([50,47,3,1,10,48,14,15,11,51,13,7])),name:"PermissionButtonLevel",meta:{title:"按钮级",roles:void 0}}]}],M=Jt({history:Oe.history,routes:Ut});function ws(){try{M.getRoutes().forEach(e=>{var r;const{name:t,meta:n}=e;t&&((r=n.roles)!=null&&r.length)&&M.hasRoute(t)&&M.removeRoute(t)})}catch{location.reload()}}ys(M);function bs(e){for(const[t,n]of Object.entries(on))e.component(t,n)}function Ss(e){return Array.isArray?Array.isArray(e):Object.prototype.toString.call(e)==="[object Array]"}function to(e){return/^(https?:|mailto:|tel:)/.test(e)}const Ts={mounted(e,t){var s;const{value:n}=t,{roles:r}=Be();if(Ss(n)&&n.length>0)r.some(i=>n.includes(i))||((s=e.parentNode)==null||s.removeChild(e));else throw new Error(`参数必须是一个数组且长度大于 0,参考:v-permission="['admin','editor']"`)}};function Rs(e){e.directive("permission",Ts)}const As={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",style:{width:"1em",height:"1em",fill:"currentColor"}},_s=["xlink:href"];function Cs(e,t){return ut(),$t("svg",As,[Gt("use",{"xlink:href":"#"+e.name},null,8,_s)])}const Os={name:"SvgIcon",props:{name:{type:String,required:!0}},render:Cs};function vs(e){e.component("SvgIcon",Os)}lt.setConfig({size:"medium",zIndex:9999,version:0,loadingText:null,table:{showHeader:!0,showOverflow:"tooltip",showHeaderOverflow:"tooltip",autoResize:!0,border:"inner",emptyText:"暂无数据",rowConfig:{isHover:!0,isCurrent:!0,keyField:"_VXE_ID"},columnConfig:{resizable:!1},align:"center",headerAlign:"center"},pager:{perfect:!1,pageSize:10,pagerCount:7,pageSizes:[10,20,50],layouts:["Total","PrevJump","PrevPage","Number","NextPage","NextJump","Sizes","FullJump"]},modal:{minWidth:500,minHeight:400,lockView:!0,mask:!0,dblclickZoom:!1,showTitleOverflow:!0,transfer:!0,draggable:!1}});function Fs(e){e.use(lt)}function Ds(e){bs(e),Rs(e),vs(e),Fs(e)}const Ps="grey-mode",xs="color-weakness",it=document.documentElement.classList;function Ls(){const e=ke();Ce(()=>{it.toggle(Ps,e.showGreyMode),it.toggle(xs,e.showColorWeakness)})}function ks(){return{initGreyAndColorWeakness:Ls}}function Bs(){setTimeout(()=>{ct({title:"为爱发电!",type:"success",message:q("div",null,[q("div",null,"所有源码均免费开源,如果对你有帮助,欢迎点个 Star 支持一下!"),q("a",{style:"color: teal",target:"_blank",href:"https://github.com/un-pany/v3-admin-vite"},"点击传送")]),duration:0,position:"bottom-right"})},0)}function Ns(){setTimeout(()=>{ct({title:"懒人服务?",type:"warning",message:q("div",null,[q("div",null,"不想自己动手,但想移除 TS 或其他模块?也有懒人套餐!"),q("a",{style:"color: teal",target:"_blank",href:"https://github.com/un-pany/v3-admin-vite/issues/225"},"点击查看")]),duration:0,position:"bottom-right"})},500)}function Is(){return{initStarNotification:Bs,initStoreNotification:Ns}}const Vt="normal",jt=[{title:"默认",name:Vt},{title:"黑暗",name:"dark"},{title:"深蓝",name:"dark-blue"}],Ne=B(Qr()||Vt);function Us(e){Ne.value=e}function Vs(e){document.documentElement.classList.add(e)}function js(e){const t=jt.map(n=>n.name).filter(n=>n!==e);document.documentElement.classList.remove(...t)}function qs(){Ce(()=>{const e=Ne.value;js(e),Vs(e),Zr(e)})}function Ms(){return{themeList:jt,activeThemeName:Ne,initTheme:qs,setTheme:Us}}var Hs={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},dropdown:{toggleDropdown:"切换下拉选项"},mention:{loading:"加载中"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计"},tour:{next:"下一步",previous:"上一步",finish:"结束导览"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}};const zs=Kt({__name:"App",setup(e){const{initTheme:t}=Ms(),{initGreyAndColorWeakness:n}=ks(),{initStarNotification:r,initStoreNotification:s}=Is();return t(),n(),r(),s(),(o,i)=>{const c=Qt("router-view"),h=an;return ut(),Xt(h,{locale:Yt(Hs)},{default:Zt(()=>[en(c)]),_:1},8,["locale"])}}}),Ie=tn(zs);Ds(Ie);Ie.use(un).use(M);M.isReady().then(()=>{Ie.mount("#app")});export{Kr as D,Nt as L,Xs as S,Ks as a,is as b,eo as c,pn as d,Be as e,$r as f,Qs as g,Ms as h,to as i,Ss as j,Ys as r,Zs as s,ke as u};
diff --git a/assets/index-Cy4N1JEj.js b/assets/index-CxUHRKMq.js
similarity index 92%
rename from assets/index-Cy4N1JEj.js
rename to assets/index-CxUHRKMq.js
index 0e0f4af8..43de3b28 100644
--- a/assets/index-Cy4N1JEj.js
+++ b/assets/index-CxUHRKMq.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css */import{_ as c}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{ad as i,o as p}from"./element-zW3XFg-9.js";import{ac as _,v as l,x as m,A as o,L as e,J as r,a2 as d}from"./vue-V9u7w0-f.js";import"./vxe-_W0GpTmX.js";const f={},u={class:"app-container"};function v(x,t){const n=i,a=_("router-view"),s=p;return l(),m("div",u,[o("h4",null,[t[1]||(t[1]=o("span",null," 三级及其以上路由缓存功能默认关闭,需要请前往此配置文件中打开: ",-1)),e(n,{type:"primary",href:"https://github.com/un-pany/v3-admin-vite/blob/main/src/router/config.ts",target:"_blank"},{default:r(()=>t[0]||(t[0]=[d(" src/router/config.ts ")])),_:1})]),e(s,{header:"二级路由"},{default:r(()=>[e(a)]),_:1})])}const B=c(f,[["render",v],["__scopeId","data-v-688a264b"]]);export{B as default};
+import"./index-CnTyAQzS.js";/* empty css */import{_ as c}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{ad as i,o as p}from"./element-zW3XFg-9.js";import{ac as _,v as l,x as m,A as o,L as e,J as r,a2 as d}from"./vue-V9u7w0-f.js";import"./vxe-_W0GpTmX.js";const f={},u={class:"app-container"};function v(x,t){const n=i,a=_("router-view"),s=p;return l(),m("div",u,[o("h4",null,[t[1]||(t[1]=o("span",null," 三级及其以上路由缓存功能默认关闭,需要请前往此配置文件中打开: ",-1)),e(n,{type:"primary",href:"https://github.com/un-pany/v3-admin-vite/blob/main/src/router/config.ts",target:"_blank"},{default:r(()=>t[0]||(t[0]=[d(" src/router/config.ts ")])),_:1})]),e(s,{header:"二级路由"},{default:r(()=>[e(a)]),_:1})])}const B=c(f,[["render",v],["__scopeId","data-v-688a264b"]]);export{B as default};
diff --git a/assets/index-DAg5dMxf.js b/assets/index-DPLb4m1U.js
similarity index 99%
rename from assets/index-DAg5dMxf.js
rename to assets/index-DPLb4m1U.js
index 7dda4b45..31c8195e 100644
--- a/assets/index-DAg5dMxf.js
+++ b/assets/index-DPLb4m1U.js
@@ -1 +1 @@
-import{e as i}from"./index-isqCupv6.js";import{v as t,x as c,aE as y,t as s,L as f,u as M,A as p,I as d,K as Z}from"./vue-V9u7w0-f.js";import{_ as e}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./element-zW3XFg-9.js";import"./vxe-_W0GpTmX.js";const m={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 750 500"};function r(h,l){return t(),c("svg",m,l[0]||(l[0]=[y('',127)]))}const v={render:r},o={class:"app-container center"},g=s({__name:"Admin",setup(h){return(l,a)=>(t(),c("div",o,[f(M(v),{class:"svg"}),a[0]||(a[0]=p("p",null,"欢迎来到「Admin」角色专属首页",-1))]))}}),n=e(g,[["__scopeId","data-v-f054e4a7"]]),b={class:"app-container center"},V=s({__name:"Editor",setup(h){return(l,a)=>(t(),c("div",b,[f(M(v),{class:"svg"}),a[0]||(a[0]=p("p",null,"欢迎来到「Editor」角色专属首页",-1))]))}}),_=e(V,[["__scopeId","data-v-3b3cec06"]]),S=s({__name:"index",setup(h){const a=i().roles.includes("admin");return(z,x)=>(t(),d(Z(M(a)?n:_)))}});export{S as default};
+import{e as i}from"./index-CnTyAQzS.js";import{v as t,x as c,aE as y,t as s,L as f,u as M,A as p,I as d,K as Z}from"./vue-V9u7w0-f.js";import{_ as e}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./element-zW3XFg-9.js";import"./vxe-_W0GpTmX.js";const m={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 750 500"};function r(h,l){return t(),c("svg",m,l[0]||(l[0]=[y('',127)]))}const v={render:r},o={class:"app-container center"},g=s({__name:"Admin",setup(h){return(l,a)=>(t(),c("div",o,[f(M(v),{class:"svg"}),a[0]||(a[0]=p("p",null,"欢迎来到「Admin」角色专属首页",-1))]))}}),n=e(g,[["__scopeId","data-v-f054e4a7"]]),b={class:"app-container center"},V=s({__name:"Editor",setup(h){return(l,a)=>(t(),c("div",b,[f(M(v),{class:"svg"}),a[0]||(a[0]=p("p",null,"欢迎来到「Editor」角色专属首页",-1))]))}}),_=e(V,[["__scopeId","data-v-3b3cec06"]]),S=s({__name:"index",setup(h){const a=i().roles.includes("admin");return(z,x)=>(t(),d(Z(M(a)?n:_)))}});export{S as default};
diff --git a/assets/index-BhAKRBEq.js b/assets/index-DiFUr8Z5.js
similarity index 98%
rename from assets/index-BhAKRBEq.js
rename to assets/index-DiFUr8Z5.js
index 7349f834..2be421f5 100644
--- a/assets/index-BhAKRBEq.js
+++ b/assets/index-DiFUr8Z5.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";/* empty css *//* empty css *//* empty css */import{g as H,c as K,u as Q,d as X}from"./el-message-box-_1IsF84Y.js";import{U as N,t as Y,r as _,w as Z,v as m,x as ee,R,u as t,I as g,J as l,L as a,h as ae,a2 as i,A as h,O as te,F as le}from"./vue-V9u7w0-f.js";import{A as z,o as ne,D as oe,a3 as re,a4 as ie,N as se,a5 as ue,a6 as de,a7 as pe,a8 as me,E as D,a9 as fe,C as ce,a0 as ge,t as _e,W as ve,q as be,aa as ye,n as Ce,ab as he,ac as we}from"./element-zW3XFg-9.js";import{_ as ke}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";const Ve={total:0,currentPage:1,pageSizes:[10,20,50],pageSize:10,layout:"total, sizes, prev, pager, next, jumper"};function ze(E={}){const s=N({...Ve,...E});return{paginationData:s,handleCurrentChange:v=>{s.currentPage=v},handleSizeChange:v=>{s.pageSize=v}}}const De={class:"app-container"},Ee={class:"toolbar-wrapper"},Te={class:"table-wrapper"},xe={class:"pager-wrapper"},Se=Y({name:"ElementPlus",__name:"index",setup(E){const s=_(!1),{paginationData:r,handleCurrentChange:T,handleSizeChange:v}=ze(),x={id:void 0,username:"",password:""},f=_(!1),k=_(null),u=_(z(x)),I={username:[{required:!0,trigger:"blur",message:"请输入用户名"}],password:[{required:!0,trigger:"blur",message:"请输入密码"}]};function $(){var o;(o=k.value)==null||o.validate(e=>{if(!e){D.error("表单校验不通过");return}s.value=!0,(u.value.id===void 0?K:Q)(u.value).then(()=>{D.success("操作成功"),f.value=!1,b()}).finally(()=>{s.value=!1})})}function L(){var o;(o=k.value)==null||o.clearValidate(),u.value=z(x)}function O(o){fe.confirm(`正在删除用户:${o.username},确认删除?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{X(o.id).then(()=>{D.success("删除成功"),b()})})}function q(o){f.value=!0,u.value=z(o)}const V=_([]),S=_(null),c=N({username:"",phone:""});function b(){s.value=!0,H({currentPage:r.currentPage,size:r.pageSize,username:c.username||void 0,phone:c.phone||void 0}).then(({data:o})=>{r.total=o.total,V.value=o.list}).catch(()=>{V.value=[]}).finally(()=>{s.value=!1})}function A(){r.currentPage===1?b():r.currentPage=1}function M(){var o;(o=S.value)==null||o.resetFields(),A()}return Z([()=>r.currentPage,()=>r.pageSize],b,{immediate:!0}),(o,e)=>{const y=ce,C=ge,d=_e,P=ve,F=ne,U=be,p=ye,w=Ce,j=he,G=we,J=oe,B=re;return m(),ee("div",De,[R((m(),g(F,{shadow:"never",class:"search-wrapper"},{default:l(()=>[a(P,{ref_key:"searchFormRef",ref:S,inline:!0,model:t(c)},{default:l(()=>[a(C,{prop:"username",label:"用户名"},{default:l(()=>[a(y,{modelValue:t(c).username,"onUpdate:modelValue":e[0]||(e[0]=n=>t(c).username=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),a(C,{prop:"phone",label:"手机号"},{default:l(()=>[a(y,{modelValue:t(c).phone,"onUpdate:modelValue":e[1]||(e[1]=n=>t(c).phone=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),a(C,null,{default:l(()=>[a(d,{type:"primary",icon:t(ie),onClick:A},{default:l(()=>e[7]||(e[7]=[i(" 查询 ")])),_:1},8,["icon"]),a(d,{icon:t(se),onClick:M},{default:l(()=>e[8]||(e[8]=[i(" 重置 ")])),_:1},8,["icon"])]),_:1})]),_:1},8,["model"])]),_:1})),[[B,t(s)]]),R((m(),g(F,{shadow:"never"},{default:l(()=>[h("div",Ee,[h("div",null,[a(d,{type:"primary",icon:t(ue),onClick:e[2]||(e[2]=n=>f.value=!0)},{default:l(()=>e[9]||(e[9]=[i(" 新增用户 ")])),_:1},8,["icon"]),a(d,{type:"danger",icon:t(de)},{default:l(()=>e[10]||(e[10]=[i(" 批量删除 ")])),_:1},8,["icon"])]),h("div",null,[a(U,{content:"下载"},{default:l(()=>[a(d,{type:"primary",icon:t(pe),circle:""},null,8,["icon"])]),_:1}),a(U,{content:"刷新当前页"},{default:l(()=>[a(d,{type:"primary",icon:t(me),circle:"",onClick:b},null,8,["icon"])]),_:1})])]),h("div",Te,[a(j,{data:t(V)},{default:l(()=>[a(p,{type:"selection",width:"50",align:"center"}),a(p,{prop:"username",label:"用户名",align:"center"}),a(p,{prop:"roles",label:"角色",align:"center"},{default:l(n=>[n.row.roles==="admin"?(m(),g(w,{key:0,type:"primary",effect:"plain","disable-transitions":""},{default:l(()=>e[11]||(e[11]=[i(" admin ")])),_:1})):(m(),g(w,{key:1,type:"warning",effect:"plain","disable-transitions":""},{default:l(()=>[i(te(n.row.roles),1)]),_:2},1024))]),_:1}),a(p,{prop:"phone",label:"手机号",align:"center"}),a(p,{prop:"email",label:"邮箱",align:"center"}),a(p,{prop:"status",label:"状态",align:"center"},{default:l(n=>[n.row.status?(m(),g(w,{key:0,type:"success",effect:"plain","disable-transitions":""},{default:l(()=>e[12]||(e[12]=[i(" 启用 ")])),_:1})):(m(),g(w,{key:1,type:"danger",effect:"plain","disable-transitions":""},{default:l(()=>e[13]||(e[13]=[i(" 禁用 ")])),_:1}))]),_:1}),a(p,{prop:"createTime",label:"创建时间",align:"center"}),a(p,{fixed:"right",label:"操作",width:"150",align:"center"},{default:l(n=>[a(d,{type:"primary",text:"",bg:"",size:"small",onClick:W=>q(n.row)},{default:l(()=>e[14]||(e[14]=[i(" 修改 ")])),_:2},1032,["onClick"]),a(d,{type:"danger",text:"",bg:"",size:"small",onClick:W=>O(n.row)},{default:l(()=>e[15]||(e[15]=[i(" 删除 ")])),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"])]),h("div",xe,[a(G,{background:"",layout:t(r).layout,"page-sizes":t(r).pageSizes,total:t(r).total,"page-size":t(r).pageSize,"current-page":t(r).currentPage,onSizeChange:t(v),onCurrentChange:t(T)},null,8,["layout","page-sizes","total","page-size","current-page","onSizeChange","onCurrentChange"])])]),_:1})),[[B,t(s)]]),a(J,{modelValue:t(f),"onUpdate:modelValue":e[6]||(e[6]=n=>ae(f)?f.value=n:null),title:t(u).id===void 0?"新增用户":"修改用户",width:"30%",onClosed:L},{footer:l(()=>[a(d,{onClick:e[5]||(e[5]=n=>f.value=!1)},{default:l(()=>e[16]||(e[16]=[i(" 取消 ")])),_:1}),a(d,{type:"primary",loading:t(s),onClick:$},{default:l(()=>e[17]||(e[17]=[i(" 确认 ")])),_:1},8,["loading"])]),default:l(()=>[a(P,{ref_key:"formRef",ref:k,model:t(u),rules:I,"label-width":"100px","label-position":"left"},{default:l(()=>[a(C,{prop:"username",label:"用户名"},{default:l(()=>[a(y,{modelValue:t(u).username,"onUpdate:modelValue":e[3]||(e[3]=n=>t(u).username=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),t(u).id===void 0?(m(),g(C,{key:0,prop:"password",label:"密码"},{default:l(()=>[a(y,{modelValue:t(u).password,"onUpdate:modelValue":e[4]||(e[4]=n=>t(u).password=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1})):le("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),He=ke(Se,[["__scopeId","data-v-d56b399a"]]);export{He as default};
+import"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";/* empty css *//* empty css *//* empty css */import{g as H,c as K,u as Q,d as X}from"./el-message-box-CkuiReOM.js";import{U as N,t as Y,r as _,w as Z,v as m,x as ee,R,u as t,I as g,J as l,L as a,h as ae,a2 as i,A as h,O as te,F as le}from"./vue-V9u7w0-f.js";import{A as z,o as ne,D as oe,a3 as re,a4 as ie,N as se,a5 as ue,a6 as de,a7 as pe,a8 as me,E as D,a9 as fe,C as ce,a0 as ge,t as _e,W as ve,q as be,aa as ye,n as Ce,ab as he,ac as we}from"./element-zW3XFg-9.js";import{_ as ke}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";const Ve={total:0,currentPage:1,pageSizes:[10,20,50],pageSize:10,layout:"total, sizes, prev, pager, next, jumper"};function ze(E={}){const s=N({...Ve,...E});return{paginationData:s,handleCurrentChange:v=>{s.currentPage=v},handleSizeChange:v=>{s.pageSize=v}}}const De={class:"app-container"},Ee={class:"toolbar-wrapper"},Te={class:"table-wrapper"},xe={class:"pager-wrapper"},Se=Y({name:"ElementPlus",__name:"index",setup(E){const s=_(!1),{paginationData:r,handleCurrentChange:T,handleSizeChange:v}=ze(),x={id:void 0,username:"",password:""},f=_(!1),k=_(null),u=_(z(x)),I={username:[{required:!0,trigger:"blur",message:"请输入用户名"}],password:[{required:!0,trigger:"blur",message:"请输入密码"}]};function $(){var o;(o=k.value)==null||o.validate(e=>{if(!e){D.error("表单校验不通过");return}s.value=!0,(u.value.id===void 0?K:Q)(u.value).then(()=>{D.success("操作成功"),f.value=!1,b()}).finally(()=>{s.value=!1})})}function L(){var o;(o=k.value)==null||o.clearValidate(),u.value=z(x)}function O(o){fe.confirm(`正在删除用户:${o.username},确认删除?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{X(o.id).then(()=>{D.success("删除成功"),b()})})}function q(o){f.value=!0,u.value=z(o)}const V=_([]),S=_(null),c=N({username:"",phone:""});function b(){s.value=!0,H({currentPage:r.currentPage,size:r.pageSize,username:c.username||void 0,phone:c.phone||void 0}).then(({data:o})=>{r.total=o.total,V.value=o.list}).catch(()=>{V.value=[]}).finally(()=>{s.value=!1})}function A(){r.currentPage===1?b():r.currentPage=1}function M(){var o;(o=S.value)==null||o.resetFields(),A()}return Z([()=>r.currentPage,()=>r.pageSize],b,{immediate:!0}),(o,e)=>{const y=ce,C=ge,d=_e,P=ve,F=ne,U=be,p=ye,w=Ce,j=he,G=we,J=oe,B=re;return m(),ee("div",De,[R((m(),g(F,{shadow:"never",class:"search-wrapper"},{default:l(()=>[a(P,{ref_key:"searchFormRef",ref:S,inline:!0,model:t(c)},{default:l(()=>[a(C,{prop:"username",label:"用户名"},{default:l(()=>[a(y,{modelValue:t(c).username,"onUpdate:modelValue":e[0]||(e[0]=n=>t(c).username=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),a(C,{prop:"phone",label:"手机号"},{default:l(()=>[a(y,{modelValue:t(c).phone,"onUpdate:modelValue":e[1]||(e[1]=n=>t(c).phone=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),a(C,null,{default:l(()=>[a(d,{type:"primary",icon:t(ie),onClick:A},{default:l(()=>e[7]||(e[7]=[i(" 查询 ")])),_:1},8,["icon"]),a(d,{icon:t(se),onClick:M},{default:l(()=>e[8]||(e[8]=[i(" 重置 ")])),_:1},8,["icon"])]),_:1})]),_:1},8,["model"])]),_:1})),[[B,t(s)]]),R((m(),g(F,{shadow:"never"},{default:l(()=>[h("div",Ee,[h("div",null,[a(d,{type:"primary",icon:t(ue),onClick:e[2]||(e[2]=n=>f.value=!0)},{default:l(()=>e[9]||(e[9]=[i(" 新增用户 ")])),_:1},8,["icon"]),a(d,{type:"danger",icon:t(de)},{default:l(()=>e[10]||(e[10]=[i(" 批量删除 ")])),_:1},8,["icon"])]),h("div",null,[a(U,{content:"下载"},{default:l(()=>[a(d,{type:"primary",icon:t(pe),circle:""},null,8,["icon"])]),_:1}),a(U,{content:"刷新当前页"},{default:l(()=>[a(d,{type:"primary",icon:t(me),circle:"",onClick:b},null,8,["icon"])]),_:1})])]),h("div",Te,[a(j,{data:t(V)},{default:l(()=>[a(p,{type:"selection",width:"50",align:"center"}),a(p,{prop:"username",label:"用户名",align:"center"}),a(p,{prop:"roles",label:"角色",align:"center"},{default:l(n=>[n.row.roles==="admin"?(m(),g(w,{key:0,type:"primary",effect:"plain","disable-transitions":""},{default:l(()=>e[11]||(e[11]=[i(" admin ")])),_:1})):(m(),g(w,{key:1,type:"warning",effect:"plain","disable-transitions":""},{default:l(()=>[i(te(n.row.roles),1)]),_:2},1024))]),_:1}),a(p,{prop:"phone",label:"手机号",align:"center"}),a(p,{prop:"email",label:"邮箱",align:"center"}),a(p,{prop:"status",label:"状态",align:"center"},{default:l(n=>[n.row.status?(m(),g(w,{key:0,type:"success",effect:"plain","disable-transitions":""},{default:l(()=>e[12]||(e[12]=[i(" 启用 ")])),_:1})):(m(),g(w,{key:1,type:"danger",effect:"plain","disable-transitions":""},{default:l(()=>e[13]||(e[13]=[i(" 禁用 ")])),_:1}))]),_:1}),a(p,{prop:"createTime",label:"创建时间",align:"center"}),a(p,{fixed:"right",label:"操作",width:"150",align:"center"},{default:l(n=>[a(d,{type:"primary",text:"",bg:"",size:"small",onClick:W=>q(n.row)},{default:l(()=>e[14]||(e[14]=[i(" 修改 ")])),_:2},1032,["onClick"]),a(d,{type:"danger",text:"",bg:"",size:"small",onClick:W=>O(n.row)},{default:l(()=>e[15]||(e[15]=[i(" 删除 ")])),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"])]),h("div",xe,[a(G,{background:"",layout:t(r).layout,"page-sizes":t(r).pageSizes,total:t(r).total,"page-size":t(r).pageSize,"current-page":t(r).currentPage,onSizeChange:t(v),onCurrentChange:t(T)},null,8,["layout","page-sizes","total","page-size","current-page","onSizeChange","onCurrentChange"])])]),_:1})),[[B,t(s)]]),a(J,{modelValue:t(f),"onUpdate:modelValue":e[6]||(e[6]=n=>ae(f)?f.value=n:null),title:t(u).id===void 0?"新增用户":"修改用户",width:"30%",onClosed:L},{footer:l(()=>[a(d,{onClick:e[5]||(e[5]=n=>f.value=!1)},{default:l(()=>e[16]||(e[16]=[i(" 取消 ")])),_:1}),a(d,{type:"primary",loading:t(s),onClick:$},{default:l(()=>e[17]||(e[17]=[i(" 确认 ")])),_:1},8,["loading"])]),default:l(()=>[a(P,{ref_key:"formRef",ref:k,model:t(u),rules:I,"label-width":"100px","label-position":"left"},{default:l(()=>[a(C,{prop:"username",label:"用户名"},{default:l(()=>[a(y,{modelValue:t(u).username,"onUpdate:modelValue":e[3]||(e[3]=n=>t(u).username=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),t(u).id===void 0?(m(),g(C,{key:0,prop:"password",label:"密码"},{default:l(()=>[a(y,{modelValue:t(u).password,"onUpdate:modelValue":e[4]||(e[4]=n=>t(u).password=n),placeholder:"请输入"},null,8,["modelValue"])]),_:1})):le("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),He=ke(Se,[["__scopeId","data-v-d56b399a"]]);export{He as default};
diff --git a/assets/index-DlaRhTjx.js b/assets/index-Lm8FICJj.js
similarity index 89%
rename from assets/index-DlaRhTjx.js
rename to assets/index-Lm8FICJj.js
index 5b1c1505..4e8392f6 100644
--- a/assets/index-DlaRhTjx.js
+++ b/assets/index-Lm8FICJj.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css *//* empty css */import{o as r,C as s}from"./element-zW3XFg-9.js";import{t as p,r as m,v as c,x as d,L as o,J as i,u,h as _}from"./vue-V9u7w0-f.js";import"./vxe-_W0GpTmX.js";const f={class:"app-container"},L=p({name:"Level3",__name:"index",setup(x){const e=m("");return(h,t)=>{const a=s,n=r;return c(),d("div",f,[o(n,{header:"三级路由"},{default:i(()=>[o(a,{modelValue:u(e),"onUpdate:modelValue":t[0]||(t[0]=l=>_(e)?e.value=l:null),placeholder:"输入任意字符测试缓存"},null,8,["modelValue"])]),_:1})])}}});export{L as default};
+import"./index-CnTyAQzS.js";/* empty css *//* empty css */import{o as r,C as s}from"./element-zW3XFg-9.js";import{t as p,r as m,v as c,x as d,L as o,J as i,u,h as _}from"./vue-V9u7w0-f.js";import"./vxe-_W0GpTmX.js";const f={class:"app-container"},L=p({name:"Level3",__name:"index",setup(x){const e=m("");return(h,t)=>{const a=s,n=r;return c(),d("div",f,[o(n,{header:"三级路由"},{default:i(()=>[o(a,{modelValue:u(e),"onUpdate:modelValue":t[0]||(t[0]=l=>_(e)?e.value=l:null),placeholder:"输入任意字符测试缓存"},null,8,["modelValue"])]),_:1})])}}});export{L as default};
diff --git a/assets/index-C5QcBq9L.js b/assets/index-iAiGkLVW.js
similarity index 96%
rename from assets/index-C5QcBq9L.js
rename to assets/index-iAiGkLVW.js
index b90f6c01..532cf3f2 100644
--- a/assets/index-C5QcBq9L.js
+++ b/assets/index-iAiGkLVW.js
@@ -1 +1 @@
-import{f as V,e as U}from"./index-isqCupv6.js";/* empty css *//* empty css *//* empty css */import{t as B,v as E,x as k,aE as R,H as q,r as p,az as N,U as A,L as o,u as e,A as c,J as a,al as L,M as S,a2 as $}from"./vue-V9u7w0-f.js";import{_ as J}from"./index.vue_vue_type_script_setup_true_lang-BX7o_nwo.js";import{W as K,X as O,Y as T,Z as D,_ as H,$ as W,E as X,C as Y,a0 as Z,k as j,a1 as G,t as P}from"./element-zW3XFg-9.js";import{_ as b}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";/* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";const Q="/v3-admin-vite/assets/logo-text-2-CVewf8RJ.png";function ee(){return V({url:"login/code",method:"get"})}function oe(r){return V({url:"users/login",method:"post",data:r})}const se=B({__name:"Owl",props:{closeEyes:{type:Boolean}},setup(r){const i=r;return(m,u)=>(E(),k("div",{class:q(["owl",{"owl-password":i.closeEyes}])},u[0]||(u[0]=[R('',5)]),2))}}),te=b(se,[["__scopeId","data-v-9d98ae89"]]);function ae(){const r=p(!1);return{isFocus:r,handleBlur:()=>{r.value=!1},handleFocus:()=>{r.value=!0}}}const re={class:"login-container"},le={class:"login-card"},ne={class:"content"},de=B({__name:"index",setup(r){const i=N(),m=U(),{isFocus:u,handleBlur:h,handleFocus:x}=ae(),w=p(null),f=p(!1),_=p(""),t=A({username:"admin",password:"12345678",code:""}),C={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:8,max:16,message:"长度在 8 到 16 个字符",trigger:"blur"}],code:[{required:!0,message:"请输入验证码",trigger:"blur"}]};function y(){var l;(l=w.value)==null||l.validate(s=>{if(!s){X.error("表单校验不通过");return}f.value=!0,oe(t).then(({data:n})=>{m.setToken(n.token),i.push("/")}).catch(()=>{g(),t.password=""}).finally(()=>{f.value=!1})})}function g(){t.code="",_.value="",ee().then(l=>{_.value=l.data})}return g(),(l,s)=>{const n=Y,v=Z,F=j,z=G,I=P,M=K;return E(),k("div",re,[o(J,{class:"theme-switch"}),o(te,{"close-eyes":e(u)},null,8,["close-eyes"]),c("div",le,[s[4]||(s[4]=c("div",{class:"title"},[c("img",{src:Q})],-1)),c("div",ne,[o(M,{ref_key:"loginFormRef",ref:w,model:e(t),rules:C,onKeyup:L(y,["enter"])},{default:a(()=>[o(v,{prop:"username"},{default:a(()=>[o(n,{modelValue:e(t).username,"onUpdate:modelValue":s[0]||(s[0]=d=>e(t).username=d),modelModifiers:{trim:!0},placeholder:"用户名",type:"text",tabindex:"1","prefix-icon":e(O),size:"large"},null,8,["modelValue","prefix-icon"])]),_:1}),o(v,{prop:"password"},{default:a(()=>[o(n,{modelValue:e(t).password,"onUpdate:modelValue":s[1]||(s[1]=d=>e(t).password=d),modelModifiers:{trim:!0},placeholder:"密码",type:"password",tabindex:"2","prefix-icon":e(T),size:"large","show-password":"",onBlur:e(h),onFocus:e(x)},null,8,["modelValue","prefix-icon","onBlur","onFocus"])]),_:1}),o(v,{prop:"code"},{default:a(()=>[o(n,{modelValue:e(t).code,"onUpdate:modelValue":s[2]||(s[2]=d=>e(t).code=d),modelModifiers:{trim:!0},placeholder:"验证码",type:"text",tabindex:"3","prefix-icon":e(D),maxlength:"7",size:"large",onBlur:e(h),onFocus:e(x)},{append:a(()=>[o(z,{src:e(_),draggable:"false",onClick:g},{placeholder:a(()=>[o(F,null,{default:a(()=>[o(e(H))]),_:1})]),error:a(()=>[o(F,null,{default:a(()=>[o(e(W))]),_:1})]),_:1},8,["src"])]),_:1},8,["modelValue","prefix-icon","onBlur","onFocus"])]),_:1}),o(I,{loading:e(f),type:"primary",size:"large",onClick:S(y,["prevent"])},{default:a(()=>s[3]||(s[3]=[$(" 登 录 ")])),_:1},8,["loading"])]),_:1},8,["model"])])])])}}}),ye=b(de,[["__scopeId","data-v-83170595"]]);export{ye as default};
+import{f as V,e as U}from"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css */import{t as B,v as E,x as k,aE as R,H as q,r as p,az as N,U as A,L as o,u as e,A as c,J as a,al as L,M as S,a2 as $}from"./vue-V9u7w0-f.js";import{_ as J}from"./index.vue_vue_type_script_setup_true_lang-E1oEHwr8.js";import{W as K,X as O,Y as T,Z as D,_ as H,$ as W,E as X,C as Y,a0 as Z,k as j,a1 as G,t as P}from"./element-zW3XFg-9.js";import{_ as b}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";/* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";const Q="/v3-admin-vite/assets/logo-text-2-CVewf8RJ.png";function ee(){return V({url:"login/code",method:"get"})}function oe(r){return V({url:"users/login",method:"post",data:r})}const se=B({__name:"Owl",props:{closeEyes:{type:Boolean}},setup(r){const i=r;return(m,u)=>(E(),k("div",{class:q(["owl",{"owl-password":i.closeEyes}])},u[0]||(u[0]=[R('',5)]),2))}}),te=b(se,[["__scopeId","data-v-9d98ae89"]]);function ae(){const r=p(!1);return{isFocus:r,handleBlur:()=>{r.value=!1},handleFocus:()=>{r.value=!0}}}const re={class:"login-container"},le={class:"login-card"},ne={class:"content"},de=B({__name:"index",setup(r){const i=N(),m=U(),{isFocus:u,handleBlur:h,handleFocus:x}=ae(),w=p(null),f=p(!1),_=p(""),t=A({username:"admin",password:"12345678",code:""}),C={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:8,max:16,message:"长度在 8 到 16 个字符",trigger:"blur"}],code:[{required:!0,message:"请输入验证码",trigger:"blur"}]};function y(){var l;(l=w.value)==null||l.validate(s=>{if(!s){X.error("表单校验不通过");return}f.value=!0,oe(t).then(({data:n})=>{m.setToken(n.token),i.push("/")}).catch(()=>{g(),t.password=""}).finally(()=>{f.value=!1})})}function g(){t.code="",_.value="",ee().then(l=>{_.value=l.data})}return g(),(l,s)=>{const n=Y,v=Z,F=j,z=G,I=P,M=K;return E(),k("div",re,[o(J,{class:"theme-switch"}),o(te,{"close-eyes":e(u)},null,8,["close-eyes"]),c("div",le,[s[4]||(s[4]=c("div",{class:"title"},[c("img",{src:Q})],-1)),c("div",ne,[o(M,{ref_key:"loginFormRef",ref:w,model:e(t),rules:C,onKeyup:L(y,["enter"])},{default:a(()=>[o(v,{prop:"username"},{default:a(()=>[o(n,{modelValue:e(t).username,"onUpdate:modelValue":s[0]||(s[0]=d=>e(t).username=d),modelModifiers:{trim:!0},placeholder:"用户名",type:"text",tabindex:"1","prefix-icon":e(O),size:"large"},null,8,["modelValue","prefix-icon"])]),_:1}),o(v,{prop:"password"},{default:a(()=>[o(n,{modelValue:e(t).password,"onUpdate:modelValue":s[1]||(s[1]=d=>e(t).password=d),modelModifiers:{trim:!0},placeholder:"密码",type:"password",tabindex:"2","prefix-icon":e(T),size:"large","show-password":"",onBlur:e(h),onFocus:e(x)},null,8,["modelValue","prefix-icon","onBlur","onFocus"])]),_:1}),o(v,{prop:"code"},{default:a(()=>[o(n,{modelValue:e(t).code,"onUpdate:modelValue":s[2]||(s[2]=d=>e(t).code=d),modelModifiers:{trim:!0},placeholder:"验证码",type:"text",tabindex:"3","prefix-icon":e(D),maxlength:"7",size:"large",onBlur:e(h),onFocus:e(x)},{append:a(()=>[o(z,{src:e(_),draggable:"false",onClick:g},{placeholder:a(()=>[o(F,null,{default:a(()=>[o(e(H))]),_:1})]),error:a(()=>[o(F,null,{default:a(()=>[o(e(W))]),_:1})]),_:1},8,["src"])]),_:1},8,["modelValue","prefix-icon","onBlur","onFocus"])]),_:1}),o(I,{loading:e(f),type:"primary",size:"large",onClick:S(y,["prevent"])},{default:a(()=>s[3]||(s[3]=[$(" 登 录 ")])),_:1},8,["loading"])]),_:1},8,["model"])])])])}}}),ye=b(de,[["__scopeId","data-v-83170595"]]);export{ye as default};
diff --git a/assets/index-D5Pu8hzF.js b/assets/index-tI51bRPi.js
similarity index 97%
rename from assets/index-D5Pu8hzF.js
rename to assets/index-tI51bRPi.js
index c5820184..671494e4 100644
--- a/assets/index-D5Pu8hzF.js
+++ b/assets/index-tI51bRPi.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css */import{g as T,d as P}from"./el-message-box-_1IsF84Y.js";import{L as s,t as M,r as k,U as b,n as S,ac as h,v as $,x as E,J as p,z as w,u as g,a2 as _}from"./vue-V9u7w0-f.js";/* empty css *//* empty css */import{a9 as R,E as C,t as U}from"./element-zW3XFg-9.js";import"./vxe-_W0GpTmX.js";const B={default:({row:y,column:l})=>{const i=y[l.field];return[s("span",{class:`el-tag el-tag--${i==="admin"?"primary":"warning"} el-tag--plain`},[i])]}},F={default:({row:y,column:l})=>{const i=y[l.field],[u,v]=i?["success","启用"]:["danger","禁用"];return[s("span",{class:`el-tag el-tag--${u} el-tag--plain`},[v])]}},O={class:"app-container"},H=M({name:"VxeTable",__name:"index",setup(y){const l=k(),i=b({loading:!0,autoResize:!0,pagerConfig:{align:"right"},formConfig:{items:[{field:"username",itemRender:{name:"$input",props:{placeholder:"用户名",clearable:!0}}},{field:"phone",itemRender:{name:"$input",props:{placeholder:"手机号",clearable:!0}}},{itemRender:{name:"$buttons",children:[{props:{type:"submit",content:"查询",status:"primary"}},{props:{type:"reset",content:"重置"}}]}}]},toolbarConfig:{refresh:!0,custom:!0,slots:{buttons:"toolbar-btns"}},customConfig:{checkMethod:({column:e})=>!["username"].includes(e.field)},columns:[{type:"checkbox",width:"50px"},{field:"username",title:"用户名"},{field:"roles",title:"角色",slots:B},{field:"phone",title:"手机号"},{field:"email",title:"邮箱"},{field:"status",title:"状态",slots:F},{field:"createTime",title:"创建时间"},{title:"操作",width:"150px",fixed:"right",showOverflow:!1,slots:{default:"row-operate"}}],proxyConfig:{seq:!0,form:!0,autoLoad:!0,props:{total:"total"},ajax:{query:({page:e,form:t})=>(i.loading=!0,r.clearTable(),new Promise(o=>{let a=0,c=[];const d=n=>{n!=null&&n.data&&(a=n.data.total,c=n.data.list),i.loading=!1,o({total:a,result:c})},f={username:t.username||void 0,phone:t.phone||void 0,size:e.pageSize,currentPage:e.currentPage};T(f).then(d).catch(d)}))}}}),u=k(),v=b({title:"",showClose:!0,escClosable:!0,maskClosable:!0,beforeHideMethod:()=>{var e;return(e=x.value)==null||e.clearValidate(),Promise.resolve()}}),x=k(),m=b({span:24,titleWidth:"100px",loading:!1,titleColon:!1,data:{username:"",password:""},items:[{field:"username",title:"用户名",itemRender:{name:"$input",props:{placeholder:"请输入"}}},{field:"password",title:"密码",itemRender:{name:"$input",props:{placeholder:"请输入"}}},{align:"right",itemRender:{name:"$buttons",children:[{props:{content:"取消"},events:{click:()=>{var e;return(e=u.value)==null?void 0:e.close()}}},{props:{type:"submit",content:"确定",status:"primary"},events:{click:()=>r.onSubmitForm()}}]}}],rules:{username:[{required:!0,validator:({itemValue:e})=>{switch(!0){case!e:return new Error("请输入");case!e.trim():return new Error("空格无效")}}}],password:[{required:!0,validator:({itemValue:e})=>{switch(!0){case!e:return new Error("请输入");case!e.trim():return new Error("空格无效")}}}]}}),r=b({isUpdate:!0,commitQuery:()=>{var e;return(e=l.value)==null?void 0:e.commitProxy("query")},clearTable:()=>{var e;return(e=l.value)==null?void 0:e.reloadData([])},onShowModal:e=>{var o,a,c,d;e?(r.isUpdate=!0,v.title="修改用户",m.data.username=e.username):(r.isUpdate=!1,v.title="新增用户");const t=(c=(a=(o=m.items)==null?void 0:o[0])==null?void 0:a.itemRender)==null?void 0:c.props;t&&(t.disabled=r.isUpdate),(d=u.value)==null||d.open(),S(()=>{var f,n;!r.isUpdate&&((f=x.value)==null||f.reset()),(n=x.value)==null||n.clearValidate()})},onSubmitForm:()=>{var e;m.loading||(e=x.value)==null||e.validate(t=>{if(t)return;m.loading=!0;const o=()=>{var a;m.loading=!1,(a=u.value)==null||a.close(),C.success("操作成功"),!r.isUpdate&&r.afterInsert(),r.commitQuery()};r.isUpdate?setTimeout(()=>o(),1e3):setTimeout(()=>o(),1e3)})},afterInsert:()=>{var t,o;const e=(o=(t=l.value)==null?void 0:t.getProxyInfo())==null?void 0:o.pager;e&&e.currentPage*e.pageSize===e.total&&++e.currentPage},onDelete:e=>{const t=`确定 删除 用户 ${e.username} ?`,o={type:"warning",showClose:!0,closeOnClickModal:!0,closeOnPressEscape:!0,cancelButtonText:"取消",confirmButtonText:"确定",dangerouslyUseHTMLString:!0};R.confirm(t,"提示",o).then(()=>{P(e.id).then(()=>{C.success("删除成功"),r.afterDelete(),r.commitQuery()})})},afterDelete:()=>{var o,a;const e=l.value.getData(),t=(a=(o=l.value)==null?void 0:o.getProxyInfo())==null?void 0:a.pager;t&&t.currentPage>1&&e.length===1&&--t.currentPage},moreFn:()=>{}});return(e,t)=>{const o=h("vxe-button"),a=U,c=h("vxe-grid"),d=h("vxe-form"),f=h("vxe-modal");return $(),E("div",O,[s(c,w({ref_key:"xGridDom",ref:l},g(i)),{"toolbar-btns":p(()=>[s(o,{status:"primary",icon:"vxe-icon-add",onClick:t[0]||(t[0]=n=>g(r).onShowModal())},{default:p(()=>t[1]||(t[1]=[_(" 新增用户 ")])),_:1}),s(o,{status:"danger",icon:"vxe-icon-delete"},{default:p(()=>t[2]||(t[2]=[_(" 批量删除 ")])),_:1})]),"row-operate":p(({row:n})=>[s(a,{link:"",type:"primary",onClick:D=>g(r).onShowModal(n)},{default:p(()=>t[3]||(t[3]=[_(" 修改 ")])),_:2},1032,["onClick"]),s(a,{link:"",type:"danger",onClick:D=>g(r).onDelete(n)},{default:p(()=>t[4]||(t[4]=[_(" 删除 ")])),_:2},1032,["onClick"])]),_:1},16),s(f,w({ref_key:"xModalDom",ref:u},g(v)),{default:p(()=>[s(d,w({ref_key:"xFormDom",ref:x},g(m)),null,16)]),_:1},16)])}}});export{H as default};
+import"./index-CnTyAQzS.js";/* empty css */import{g as T,d as P}from"./el-message-box-CkuiReOM.js";import{L as s,t as M,r as k,U as b,n as S,ac as h,v as $,x as E,J as p,z as w,u as g,a2 as _}from"./vue-V9u7w0-f.js";/* empty css *//* empty css */import{a9 as R,E as C,t as U}from"./element-zW3XFg-9.js";import"./vxe-_W0GpTmX.js";const B={default:({row:y,column:l})=>{const i=y[l.field];return[s("span",{class:`el-tag el-tag--${i==="admin"?"primary":"warning"} el-tag--plain`},[i])]}},F={default:({row:y,column:l})=>{const i=y[l.field],[u,v]=i?["success","启用"]:["danger","禁用"];return[s("span",{class:`el-tag el-tag--${u} el-tag--plain`},[v])]}},O={class:"app-container"},H=M({name:"VxeTable",__name:"index",setup(y){const l=k(),i=b({loading:!0,autoResize:!0,pagerConfig:{align:"right"},formConfig:{items:[{field:"username",itemRender:{name:"$input",props:{placeholder:"用户名",clearable:!0}}},{field:"phone",itemRender:{name:"$input",props:{placeholder:"手机号",clearable:!0}}},{itemRender:{name:"$buttons",children:[{props:{type:"submit",content:"查询",status:"primary"}},{props:{type:"reset",content:"重置"}}]}}]},toolbarConfig:{refresh:!0,custom:!0,slots:{buttons:"toolbar-btns"}},customConfig:{checkMethod:({column:e})=>!["username"].includes(e.field)},columns:[{type:"checkbox",width:"50px"},{field:"username",title:"用户名"},{field:"roles",title:"角色",slots:B},{field:"phone",title:"手机号"},{field:"email",title:"邮箱"},{field:"status",title:"状态",slots:F},{field:"createTime",title:"创建时间"},{title:"操作",width:"150px",fixed:"right",showOverflow:!1,slots:{default:"row-operate"}}],proxyConfig:{seq:!0,form:!0,autoLoad:!0,props:{total:"total"},ajax:{query:({page:e,form:t})=>(i.loading=!0,r.clearTable(),new Promise(o=>{let a=0,c=[];const d=n=>{n!=null&&n.data&&(a=n.data.total,c=n.data.list),i.loading=!1,o({total:a,result:c})},f={username:t.username||void 0,phone:t.phone||void 0,size:e.pageSize,currentPage:e.currentPage};T(f).then(d).catch(d)}))}}}),u=k(),v=b({title:"",showClose:!0,escClosable:!0,maskClosable:!0,beforeHideMethod:()=>{var e;return(e=x.value)==null||e.clearValidate(),Promise.resolve()}}),x=k(),m=b({span:24,titleWidth:"100px",loading:!1,titleColon:!1,data:{username:"",password:""},items:[{field:"username",title:"用户名",itemRender:{name:"$input",props:{placeholder:"请输入"}}},{field:"password",title:"密码",itemRender:{name:"$input",props:{placeholder:"请输入"}}},{align:"right",itemRender:{name:"$buttons",children:[{props:{content:"取消"},events:{click:()=>{var e;return(e=u.value)==null?void 0:e.close()}}},{props:{type:"submit",content:"确定",status:"primary"},events:{click:()=>r.onSubmitForm()}}]}}],rules:{username:[{required:!0,validator:({itemValue:e})=>{switch(!0){case!e:return new Error("请输入");case!e.trim():return new Error("空格无效")}}}],password:[{required:!0,validator:({itemValue:e})=>{switch(!0){case!e:return new Error("请输入");case!e.trim():return new Error("空格无效")}}}]}}),r=b({isUpdate:!0,commitQuery:()=>{var e;return(e=l.value)==null?void 0:e.commitProxy("query")},clearTable:()=>{var e;return(e=l.value)==null?void 0:e.reloadData([])},onShowModal:e=>{var o,a,c,d;e?(r.isUpdate=!0,v.title="修改用户",m.data.username=e.username):(r.isUpdate=!1,v.title="新增用户");const t=(c=(a=(o=m.items)==null?void 0:o[0])==null?void 0:a.itemRender)==null?void 0:c.props;t&&(t.disabled=r.isUpdate),(d=u.value)==null||d.open(),S(()=>{var f,n;!r.isUpdate&&((f=x.value)==null||f.reset()),(n=x.value)==null||n.clearValidate()})},onSubmitForm:()=>{var e;m.loading||(e=x.value)==null||e.validate(t=>{if(t)return;m.loading=!0;const o=()=>{var a;m.loading=!1,(a=u.value)==null||a.close(),C.success("操作成功"),!r.isUpdate&&r.afterInsert(),r.commitQuery()};r.isUpdate?setTimeout(()=>o(),1e3):setTimeout(()=>o(),1e3)})},afterInsert:()=>{var t,o;const e=(o=(t=l.value)==null?void 0:t.getProxyInfo())==null?void 0:o.pager;e&&e.currentPage*e.pageSize===e.total&&++e.currentPage},onDelete:e=>{const t=`确定 删除 用户 ${e.username} ?`,o={type:"warning",showClose:!0,closeOnClickModal:!0,closeOnPressEscape:!0,cancelButtonText:"取消",confirmButtonText:"确定",dangerouslyUseHTMLString:!0};R.confirm(t,"提示",o).then(()=>{P(e.id).then(()=>{C.success("删除成功"),r.afterDelete(),r.commitQuery()})})},afterDelete:()=>{var o,a;const e=l.value.getData(),t=(a=(o=l.value)==null?void 0:o.getProxyInfo())==null?void 0:a.pager;t&&t.currentPage>1&&e.length===1&&--t.currentPage},moreFn:()=>{}});return(e,t)=>{const o=h("vxe-button"),a=U,c=h("vxe-grid"),d=h("vxe-form"),f=h("vxe-modal");return $(),E("div",O,[s(c,w({ref_key:"xGridDom",ref:l},g(i)),{"toolbar-btns":p(()=>[s(o,{status:"primary",icon:"vxe-icon-add",onClick:t[0]||(t[0]=n=>g(r).onShowModal())},{default:p(()=>t[1]||(t[1]=[_(" 新增用户 ")])),_:1}),s(o,{status:"danger",icon:"vxe-icon-delete"},{default:p(()=>t[2]||(t[2]=[_(" 批量删除 ")])),_:1})]),"row-operate":p(({row:n})=>[s(a,{link:"",type:"primary",onClick:D=>g(r).onShowModal(n)},{default:p(()=>t[3]||(t[3]=[_(" 修改 ")])),_:2},1032,["onClick"]),s(a,{link:"",type:"danger",onClick:D=>g(r).onDelete(n)},{default:p(()=>t[4]||(t[4]=[_(" 删除 ")])),_:2},1032,["onClick"])]),_:1},16),s(f,w({ref_key:"xModalDom",ref:u},g(v)),{default:p(()=>[s(d,w({ref_key:"xFormDom",ref:x},g(m)),null,16)]),_:1},16)])}}});export{H as default};
diff --git a/assets/index.vue_vue_type_script_setup_true_lang-BX7o_nwo.js b/assets/index.vue_vue_type_script_setup_true_lang-E1oEHwr8.js
similarity index 95%
rename from assets/index.vue_vue_type_script_setup_true_lang-BX7o_nwo.js
rename to assets/index.vue_vue_type_script_setup_true_lang-E1oEHwr8.js
index 04cf01a4..70b3045e 100644
--- a/assets/index.vue_vue_type_script_setup_true_lang-BX7o_nwo.js
+++ b/assets/index.vue_vue_type_script_setup_true_lang-E1oEHwr8.js
@@ -1 +1 @@
-import{h as y}from"./index-isqCupv6.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";import{z as g,a2 as E,k as T,q as v,y as C,x as B}from"./element-zW3XFg-9.js";import{t as D,v as c,I as d,J as e,L as s,x as M,ai as V,u as l,G as b,A as p,O as I}from"./vue-V9u7w0-f.js";const G=D({__name:"index",setup(L){const{themeList:_,activeThemeName:u,setTheme:h}=y();function f({clientX:o,clientY:n},r){const m=Math.hypot(Math.max(o,window.innerWidth-o),Math.max(n,window.innerHeight-n)),t=document.documentElement.style;t.setProperty("--v3-theme-x",`${o}px`),t.setProperty("--v3-theme-y",`${n}px`),t.setProperty("--v3-theme-r",`${m}px`);const a=()=>{h(r)};document.startViewTransition?document.startViewTransition(a):a()}return(o,n)=>{const r=T,m=v,t=B,a=C,w=g;return c(),d(w,{trigger:"click"},{dropdown:e(()=>[s(a,null,{default:e(()=>[(c(!0),M(b,null,V(l(_),(i,x)=>(c(),d(t,{key:x,disabled:l(u)===i.name,onClick:k=>f(k,i.name)},{default:e(()=>[p("span",null,I(i.title),1)]),_:2},1032,["disabled","onClick"]))),128))]),_:1})]),default:e(()=>[p("div",null,[s(m,{effect:"dark",content:"主题模式",placement:"bottom"},{default:e(()=>[s(r,{size:20},{default:e(()=>[s(l(E))]),_:1})]),_:1})])]),_:1})}}});export{G as _};
+import{h as y}from"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";import{z as g,a2 as E,k as T,q as v,y as C,x as B}from"./element-zW3XFg-9.js";import{t as D,v as c,I as d,J as e,L as s,x as M,ai as V,u as l,G as b,A as p,O as I}from"./vue-V9u7w0-f.js";const G=D({__name:"index",setup(L){const{themeList:_,activeThemeName:u,setTheme:h}=y();function f({clientX:o,clientY:n},r){const m=Math.hypot(Math.max(o,window.innerWidth-o),Math.max(n,window.innerHeight-n)),t=document.documentElement.style;t.setProperty("--v3-theme-x",`${o}px`),t.setProperty("--v3-theme-y",`${n}px`),t.setProperty("--v3-theme-r",`${m}px`);const a=()=>{h(r)};document.startViewTransition?document.startViewTransition(a):a()}return(o,n)=>{const r=T,m=v,t=B,a=C,w=g;return c(),d(w,{trigger:"click"},{dropdown:e(()=>[s(a,null,{default:e(()=>[(c(!0),M(b,null,V(l(_),(i,x)=>(c(),d(t,{key:x,disabled:l(u)===i.name,onClick:k=>f(k,i.name)},{default:e(()=>[p("span",null,I(i.title),1)]),_:2},1032,["disabled","onClick"]))),128))]),_:1})]),default:e(()=>[p("div",null,[s(m,{effect:"dark",content:"主题模式",placement:"bottom"},{default:e(()=>[s(r,{size:20},{default:e(()=>[s(l(E))]),_:1})]),_:1})])]),_:1})}}});export{G as _};
diff --git a/assets/page-level-BxGg49Qv.js b/assets/page-level-BMQJhlt5.js
similarity index 81%
rename from assets/page-level-BxGg49Qv.js
rename to assets/page-level-BMQJhlt5.js
index 2d82dc0a..a4546d6a 100644
--- a/assets/page-level-BxGg49Qv.js
+++ b/assets/page-level-BMQJhlt5.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css */import{S as a}from"./SwitchRoles-CO69hybb.js";import{o as r}from"./element-zW3XFg-9.js";import{t as s,v as n,x as p,L as t,J as c,a2 as m}from"./vue-V9u7w0-f.js";import{_}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";/* empty css */const i={class:"app-container"},d=s({__name:"page-level",setup(l){return(f,e)=>{const o=r;return n(),p("div",i,[t(a),t(o,{shadow:"never",class:"content"},{default:c(()=>e[0]||(e[0]=[m(" 当前页面只有「Admin」角色可见,切换角色后将不能进入该页面 ")])),_:1})])}}}),B=_(d,[["__scopeId","data-v-a30433e8"]]);export{B as default};
+import"./index-CnTyAQzS.js";/* empty css */import{S as a}from"./SwitchRoles-BKiprZJR.js";import{o as r}from"./element-zW3XFg-9.js";import{t as s,v as n,x as p,L as t,J as c,a2 as m}from"./vue-V9u7w0-f.js";import{_}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";/* empty css */const i={class:"app-container"},d=s({__name:"page-level",setup(l){return(f,e)=>{const o=r;return n(),p("div",i,[t(a),t(o,{shadow:"never",class:"content"},{default:c(()=>e[0]||(e[0]=[m(" 当前页面只有「Admin」角色可见,切换角色后将不能进入该页面 ")])),_:1})])}}}),B=_(d,[["__scopeId","data-v-a30433e8"]]);export{B as default};
diff --git a/assets/use-fetch-select-BR1adVr6.js b/assets/use-fetch-select-BRmppHFD.js
similarity index 96%
rename from assets/use-fetch-select-BR1adVr6.js
rename to assets/use-fetch-select-BRmppHFD.js
index 4fd25285..90768d64 100644
--- a/assets/use-fetch-select-BR1adVr6.js
+++ b/assets/use-fetch-select-BRmppHFD.js
@@ -1 +1 @@
-import"./index-isqCupv6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{r as u,f as w,t as x,v as r,x as f,L as d,J as i,R as v,u as l,I as p,a2 as R,G as k,ai as A,h as E,z as C}from"./vue-V9u7w0-f.js";import{E as D,o as L,a3 as M,ae as T,af as B,ag as F}from"./element-zW3XFg-9.js";import{_ as N}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";function O(c){const{api:a}=c,o=u(!1),e=u([]),m=u(""),t=()=>{o.value=!0,e.value=[],a().then(s=>{e.value=s.data}).finally(()=>{o.value=!1})};return w(()=>{t()}),{loading:o,options:e,value:m}}const P={code:0,data:[{label:"苹果",value:1},{label:"香蕉",value:2},{label:"橘子",value:3,disabled:!0}],message:"获取 Select 数据成功"},S="接口发生错误";function y(){return new Promise((c,a)=>{setTimeout(()=>{Math.random()<.8?c(P):(a(new Error(S)),D.error(S))},2e3)})}const G={class:"app-container"},I=x({__name:"use-fetch-select",setup(c){const{loading:a,options:o,value:e}=O({api:y});return(m,t)=>{const s=L,h=F,g=T,V=B,_=M;return r(),f("div",G,[d(s,{shadow:"never"},{default:i(()=>t[2]||(t[2]=[R(" 该示例是演示:通过 composable 自动调用 api 后拿到 Select 组件需要的数据并传递给 Select 组件 ")])),_:1}),v((r(),p(s,{header:"Select 示例",shadow:"never"},{default:i(()=>[d(g,{modelValue:l(e),"onUpdate:modelValue":t[0]||(t[0]=n=>E(e)?e.value=n:null),filterable:""},{default:i(()=>[(r(!0),f(k,null,A(l(o),(n,b)=>(r(),p(h,C({ref_for:!0},n,{key:b,placeholder:"请选择"}),null,16))),128))]),_:1},8,["modelValue"])]),_:1})),[[_,l(a)]]),v((r(),p(s,{header:"Select V2 示例(如果数据量过多,可以选择该组件)",shadow:"never"},{default:i(()=>[d(V,{modelValue:l(e),"onUpdate:modelValue":t[1]||(t[1]=n=>E(e)?e.value=n:null),options:l(o),filterable:"",placeholder:"请选择"},null,8,["modelValue","options"])]),_:1})),[[_,l(a)]])])}}}),Y=N(I,[["__scopeId","data-v-15aa76c1"]]);export{Y as default};
+import"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{r as u,f as w,t as x,v as r,x as f,L as d,J as i,R as v,u as l,I as p,a2 as R,G as k,ai as A,h as E,z as C}from"./vue-V9u7w0-f.js";import{E as D,o as L,a3 as M,ae as T,af as B,ag as F}from"./element-zW3XFg-9.js";import{_ as N}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";function O(c){const{api:a}=c,o=u(!1),e=u([]),m=u(""),t=()=>{o.value=!0,e.value=[],a().then(s=>{e.value=s.data}).finally(()=>{o.value=!1})};return w(()=>{t()}),{loading:o,options:e,value:m}}const P={code:0,data:[{label:"苹果",value:1},{label:"香蕉",value:2},{label:"橘子",value:3,disabled:!0}],message:"获取 Select 数据成功"},S="接口发生错误";function y(){return new Promise((c,a)=>{setTimeout(()=>{Math.random()<.8?c(P):(a(new Error(S)),D.error(S))},2e3)})}const G={class:"app-container"},I=x({__name:"use-fetch-select",setup(c){const{loading:a,options:o,value:e}=O({api:y});return(m,t)=>{const s=L,h=F,g=T,V=B,_=M;return r(),f("div",G,[d(s,{shadow:"never"},{default:i(()=>t[2]||(t[2]=[R(" 该示例是演示:通过 composable 自动调用 api 后拿到 Select 组件需要的数据并传递给 Select 组件 ")])),_:1}),v((r(),p(s,{header:"Select 示例",shadow:"never"},{default:i(()=>[d(g,{modelValue:l(e),"onUpdate:modelValue":t[0]||(t[0]=n=>E(e)?e.value=n:null),filterable:""},{default:i(()=>[(r(!0),f(k,null,A(l(o),(n,b)=>(r(),p(h,C({ref_for:!0},n,{key:b,placeholder:"请选择"}),null,16))),128))]),_:1},8,["modelValue"])]),_:1})),[[_,l(a)]]),v((r(),p(s,{header:"Select V2 示例(如果数据量过多,可以选择该组件)",shadow:"never"},{default:i(()=>[d(V,{modelValue:l(e),"onUpdate:modelValue":t[1]||(t[1]=n=>E(e)?e.value=n:null),options:l(o),filterable:"",placeholder:"请选择"},null,8,["modelValue","options"])]),_:1})),[[_,l(a)]])])}}}),Y=N(I,[["__scopeId","data-v-15aa76c1"]]);export{Y as default};
diff --git a/assets/use-fullscreen-loading-BH5zT3B9.js b/assets/use-fullscreen-loading-Df-1y1yY.js
similarity index 96%
rename from assets/use-fullscreen-loading-BH5zT3B9.js
rename to assets/use-fullscreen-loading-Df-1y1yY.js
index de9edd33..31c3a672 100644
--- a/assets/use-fullscreen-loading-BH5zT3B9.js
+++ b/assets/use-fullscreen-loading-Df-1y1yY.js
@@ -1,4 +1,4 @@
-import"./index-isqCupv6.js";/* empty css *//* empty css *//* empty css */import{ah as m,o as _,E as u,t as g}from"./element-zW3XFg-9.js";import{t as f,v as E,x as y,L as a,J as n,a2 as c}from"./vue-V9u7w0-f.js";import{_ as w}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";const x={lock:!0,text:"加载中..."},p=(o,e={})=>{let r;return async(...i)=>{try{return r=m.service({...x,...e}),await o(...i)}finally{r.close()}}},v={code:0,data:{list:[]},message:"获取成功"};function C(o){return new Promise(e=>{setTimeout(()=>{e({...v,data:{list:o}})},1e3)})}function S(){return new Promise((o,e)=>{setTimeout(()=>{e(new Error("发生错误"))},1e3)})}const k={class:"app-container"},A=`
+import"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css */import{ah as m,o as _,E as u,t as g}from"./element-zW3XFg-9.js";import{t as f,v as E,x as y,L as a,J as n,a2 as c}from"./vue-V9u7w0-f.js";import{_ as w}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";const x={lock:!0,text:"加载中..."},p=(o,e={})=>{let r;return async(...i)=>{try{return r=m.service({...x,...e}),await o(...i)}finally{r.close()}}},v={code:0,data:{list:[]},message:"获取成功"};function C(o){return new Promise(e=>{setTimeout(()=>{e({...v,data:{list:o}})},1e3)})}function S(){return new Promise((o,e)=>{setTimeout(()=>{e(new Error("发生错误"))},1e3)})}const k={class:"app-container"},A=`
{const m=_,a=C,u=v;return w(),x("div",g,[o(m,{shadow:"never"},{default:t(()=>e[4]||(e[4]=[r(" 该示例是演示:通过调用 composable 开启或关闭水印, 支持局部、全局、自定义样式(颜色、透明度、字体大小、字体、倾斜角度等),并自带防御(防删、防隐藏)和自适应功能 ")])),_:1}),o(m,{header:"示例",shadow:"never"},{footer:t(()=>[o(u,null,{default:t(()=>[o(a,{type:"primary",onClick:e[0]||(e[0]=n=>l(f)("局部水印",{color:"#409eff"}))},{default:t(()=>e[5]||(e[5]=[r(" 创建局部水印 ")])),_:1}),o(a,{type:"warning",onClick:e[1]||(e[1]=n=>l(f)("没有防御功能的局部水印",{color:"#e6a23c",defense:!1}))},{default:t(()=>e[6]||(e[6]=[r(" 创建无防御局部水印 ")])),_:1}),o(a,{type:"danger",onClick:l(i)},{default:t(()=>e[7]||(e[7]=[r(" 清除局部水印 ")])),_:1},8,["onClick"])]),_:1}),o(u,null,{default:t(()=>[o(a,{type:"primary",onClick:e[2]||(e[2]=n=>l(p)("全局水印",{color:"#409eff"}))},{default:t(()=>e[8]||(e[8]=[r(" 创建全局水印 ")])),_:1}),o(a,{type:"warning",onClick:e[3]||(e[3]=n=>l(p)("没有防御功能的全局水印",{color:"#e6a23c",defense:!1}))},{default:t(()=>e[9]||(e[9]=[r(" 创建无防御全局水印 ")])),_:1}),o(a,{type:"danger",onClick:l(k)},{default:t(()=>e[10]||(e[10]=[r(" 清除全局水印 ")])),_:1},8,["onClick"])]),_:1})]),default:t(()=>[b("div",{ref_key:"localRef",ref:s,class:"local"},null,512)]),_:1})])}}}),j=c(B,[["__scopeId","data-v-2e8369f3"]]);export{j as default};
+import"./index-CnTyAQzS.js";/* empty css *//* empty css *//* empty css */import{u as d}from"./useWatermark-XzwShjbX.js";import{o as _,t as C,ai as v}from"./element-zW3XFg-9.js";import{t as y,r as W,v as w,x,L as o,J as t,a2 as r,u as l,A as b}from"./vue-V9u7w0-f.js";import{_ as c}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vxe-_W0GpTmX.js";const g={class:"app-container"},B=y({__name:"use-watermark",setup($){const s=W(null),{setWatermark:f,clearWatermark:i}=d(s),{setWatermark:p,clearWatermark:k}=d();return(E,e)=>{const m=_,a=C,u=v;return w(),x("div",g,[o(m,{shadow:"never"},{default:t(()=>e[4]||(e[4]=[r(" 该示例是演示:通过调用 composable 开启或关闭水印, 支持局部、全局、自定义样式(颜色、透明度、字体大小、字体、倾斜角度等),并自带防御(防删、防隐藏)和自适应功能 ")])),_:1}),o(m,{header:"示例",shadow:"never"},{footer:t(()=>[o(u,null,{default:t(()=>[o(a,{type:"primary",onClick:e[0]||(e[0]=n=>l(f)("局部水印",{color:"#409eff"}))},{default:t(()=>e[5]||(e[5]=[r(" 创建局部水印 ")])),_:1}),o(a,{type:"warning",onClick:e[1]||(e[1]=n=>l(f)("没有防御功能的局部水印",{color:"#e6a23c",defense:!1}))},{default:t(()=>e[6]||(e[6]=[r(" 创建无防御局部水印 ")])),_:1}),o(a,{type:"danger",onClick:l(i)},{default:t(()=>e[7]||(e[7]=[r(" 清除局部水印 ")])),_:1},8,["onClick"])]),_:1}),o(u,null,{default:t(()=>[o(a,{type:"primary",onClick:e[2]||(e[2]=n=>l(p)("全局水印",{color:"#409eff"}))},{default:t(()=>e[8]||(e[8]=[r(" 创建全局水印 ")])),_:1}),o(a,{type:"warning",onClick:e[3]||(e[3]=n=>l(p)("没有防御功能的全局水印",{color:"#e6a23c",defense:!1}))},{default:t(()=>e[9]||(e[9]=[r(" 创建无防御全局水印 ")])),_:1}),o(a,{type:"danger",onClick:l(k)},{default:t(()=>e[10]||(e[10]=[r(" 清除全局水印 ")])),_:1},8,["onClick"])]),_:1})]),default:t(()=>[b("div",{ref_key:"localRef",ref:s,class:"local"},null,512)]),_:1})])}}}),j=c(B,[["__scopeId","data-v-2e8369f3"]]);export{j as default};
diff --git a/index.html b/index.html
index f641663d..e728f4f1 100644
--- a/index.html
+++ b/index.html
@@ -7,7 +7,7 @@
V3 Admin Vite
-
+