23 lines
46 KiB
JavaScript
23 lines
46 KiB
JavaScript
import{u as e,a as t,d as a,b as l,D as s,c as n,T as o,L as i,S as c,i as u,r,C as d,e as v,N as m,f as p,g as h,h as f,t as g}from"./index.Ch_NPM5t.js";import{dW as _,c as b,dZ as k,G as y,e6 as w,o as x,aC as S,t as C,H as L,u as V,X as M,q as I,I as T,J as A,K as P,v as U,M as $,Z as z,$ as R,A as B,ai as E,R as q,am as D,a9 as O,r as W,e7 as F,e8 as N,e9 as j,Y as K,B as G,a as H,aQ as Q,ac as X,dY as J,V as Y,_ as Z,T as ee,ea as te,D as ae,a5 as le,eb as se,ec as ne,ed as oe,W as ie,L as ce,aF as ue,aG as re,ee as de,a3 as ve}from"./.pnpm.DGfAnZKL.js";import{f as me,g as pe,h as he,j as fe,k as ge,l as _e,m as be,n as ke,o as ye,a as we,p as xe,q as Se,r as Ce,s as Le,t as Ve,u as Me,v as Ie,w as Te,x as Ae,y as Pe,A as Ue,B as $e,C as ze,D as Re,F as Be,G as Ee,H as qe,I as De,J as Oe,K as We,L as Fe,M as Ne,N as je,O as Ke,P as Ge,Q as He}from"./element-plus.DhcJM-BD.js";import{_ as Qe}from"./_plugin-vue_export-helper.BCo6x5W8.js";import{_ as Xe}from"./index.vue_vue_type_script_setup_true_lang.BGYLTo0M.js";import{u as Je}from"./dateUtil.BP-B7AtB.js";import Ye from"./ConfigInfoDrawer.C5ENaTLd.js";import{q as Ze}from"./quickStartManager.B8O8jYqN.js";import{i as et}from"./index.Dj2UJJ26.js";import"./codemirror.CR5zRbyM.js";import"./SingleImageUpload.Det6D3IP.js";const tt=_("lock",{state:()=>({lockInfo:{}}),getters:{getLockInfo(){return this.lockInfo}},actions:{setLockInfo(e){this.lockInfo=e},resetLockInfo(){this.lockInfo={}},unLock(e){var t;return(null==(t=this.lockInfo)?void 0:t.password)===e&&(this.resetLockInfo(),!0)}},persist:!0});function at(){const l=e(),s=t();return{currentLayout:b(()=>s.layout),isSidebarOpen:b(()=>l.sidebar.opened),isShowTagsView:b(()=>s.showTagsView),isShowSettings:b(()=>a.showSettings),isShowLogo:b(()=>s.showAppLogo),isMobile:b(()=>"mobile"===l.device),layoutClass:b(()=>({hideSidebar:!l.sidebar.opened,openSidebar:l.sidebar.opened,mobile:"mobile"===l.device,[`layout-${s.layout}`]:!0})),toggleSidebar:function(){l.toggleSidebar()},closeSidebar:function(){l.closeSideBar()}}}function lt(){const t=k(),a=e(),s=l(),n=b(()=>a.activeTopMenuPath);return{routes:b(()=>s.routes),sideMenuRoutes:b(()=>s.mixLayoutSideMenus),activeMenu:b(()=>{const{meta:e,path:a}=t;return(null==e?void 0:e.activeMenu)?e.activeMenu:a}),activeTopMenuPath:n}}const st=Qe(x({__name:"BaseLayout",setup(l){const n=t();function o(){n.settingsVisible=!0}const i=b(()=>a.showSettings),{layoutClass:c,isSidebarOpen:u,closeSidebar:r}=at(),{isMobile:d}=function(){const t=e(),{width:a}=w(),l=b(()=>a.value>=992),n=b(()=>t.device===s.MOBILE);return y(()=>{const e=l.value?s.DESKTOP:s.MOBILE;t.toggleDevice(e),l.value?t.openSideBar():t.closeSideBar()}),{isDesktop:l,isMobile:n}}();return(e,t)=>{const a=me,l=S("Setting"),s=he,n=pe;return C(),L("div",{class:$(["layout",V(c)])},[V(d)&&V(u)?(C(),L("div",{key:0,class:"layout__overlay",onClick:t[0]||(t[0]=//@ts-ignore
|
|
(...e)=>V(r)&&V(r)(...e))})):M("",!0),I(e.$slots,"default",{},void 0,!0),T(a,{target:".app-main"},{default:A(()=>[...t[1]||(t[1]=[P("div",{class:"i-svg:backtop w-6 h-6"},null,-1)])]),_:1}),V(i)?(C(),U(n,{key:1,class:"floating-settings-button",type:"primary",onClick:o},{default:A(()=>[T(s,null,{default:A(()=>[T(l)]),_:1})]),_:1})):M("",!0)],2)}}}),[["__scopeId","data-v-186056de"]]),nt={class:"logo"},ot=["src"],it={key:0,class:"title"},ct=Qe(x({__name:"index",props:{collapse:{type:Boolean,required:!0}},setup(e){const t=n();return(a,l)=>{const s=S("router-link");return C(),L("div",nt,[T(R,{"enter-active-class":"animate__animated animate__fadeInLeft"},{default:A(()=>[(C(),U(s,{key:+e.collapse,class:"wh-full flex-center",to:"/"},{default:A(()=>[P("img",{src:V(t).configData.sys_web_logo.config_value,class:"w50px h50px"},null,8,ot),e.collapse?M("",!0):(C(),L("span",it,z(V(t).configData.sys_web_title.config_value),1))]),_:1}))]),_:1})])}}}),[["__scopeId","data-v-d576d794"]]),ut=Qe(x({__name:"index",props:{isActive:{type:Boolean,required:!0}},emits:["toggleClick"],setup(e,{emit:a}){const l=a,s=t(),n=b(()=>s.layout),u=b(()=>s.theme===o.DARK||n.value===i.MIX&&s.sidebarColorScheme===c.CLASSIC_BLUE?"hamburger--white":"");function r(){l("toggleClick")}return(t,a)=>(C(),L("div",{class:"hamburger-wrapper",onClick:r},[P("div",{class:$(["i-svg:collapse",{hamburger:!0,"is-active":e.isActive},V(u)])},null,2)]))}}),[["__scopeId","data-v-d88c6cfe"]]);function rt(e){if(u.global.te("route."+e)){return u.global.t("route."+e)}return e}const dt={key:0,class:"color-gray-400"},vt=["onClick"],mt=Qe(x({__name:"index",setup(e){const t=k(),a=W([]);function l(){let e=t.matched.filter(e=>e.meta&&e.meta.title);(function(e){const t=e&&e.name;if(!t)return!1;return t.toString().trim().toLocaleLowerCase()==="Dashboard".toLocaleLowerCase()})(e[0])||(e=[{path:"/dashboard",meta:{title:"dashboard"}}].concat(e)),a.value=e.filter(e=>e.meta&&e.meta.title&&!1!==e.meta.breadcrumb)}function s(e){const{redirect:a,path:l}=e;a?r.push(a).catch(e=>{}):r.push((e=>{const{params:a}=t;return F.compile(e)(a)})(l)).catch(e=>{})}return B(()=>t.path,e=>{e.startsWith("/redirect/")||l()}),E(()=>{l()}),(e,t)=>{const l=ge,n=fe;return C(),U(n,{class:"flex-y-center"},{default:A(()=>[(C(!0),L(q,null,D(V(a),(e,t)=>(C(),U(l,{key:e.path},{default:A(()=>["noredirect"===e.redirect||t===V(a).length-1?(C(),L("span",dt,z(V(rt)(e.meta.title)),1)):(C(),L("a",{key:1,onClick:O(t=>s(e),["prevent"])},z(V(rt)(e.meta.title)),9,vt))]),_:2},1024))),128))]),_:1})}}}),[["__scopeId","data-v-919fe2b4"]]),pt=x({__name:"index",setup(e){const{isFullscreen:t,toggle:a}=N();return(e,l)=>(C(),L("div",{onClick:l[0]||(l[0]=//@ts-ignore
|
|
(...e)=>V(a)&&V(a)(...e))},[P("div",{class:$("i-svg:"+(V(t)?"fullscreen-exit":"fullscreen"))},null,2)]))}}),ht=x({__name:"index",setup(t){const{t:a}=j(),l=b(()=>[{label:a("sizeSelect.default"),value:d.DEFAULT},{label:a("sizeSelect.large"),value:d.LARGE},{label:a("sizeSelect.small"),value:d.SMALL}]),s=e();function n(e){s.changeSize(e),we.success(a("sizeSelect.message.success"))}return(e,t)=>{const o=ye,i=ke,c=be,u=_e;return C(),U(u,{content:V(a)("sizeSelect.tooltip"),effect:"dark",placement:"bottom"},{default:A(()=>[T(c,{trigger:"click",onCommand:n},{dropdown:A(()=>[T(i,null,{default:A(()=>[(C(!0),L(q,null,D(V(l),e=>(C(),U(o,{key:e.value,disabled:V(s).size==e.value,command:e.value},{default:A(()=>[K(z(e.label),1)]),_:2},1032,["disabled","command"]))),128))]),_:1})]),default:A(()=>[t[0]||(t[0]=P("div",{class:"i-svg:size"},null,-1))]),_:1})]),_:1},8,["content"])}}}),ft={key:1,class:"i-svg:bell"},gt={class:"p-5"},_t={class:"flex-y-center"},bt={class:"text-xs text-gray"},kt={class:"flex-x-between"},yt={key:1,class:"flex-center h-150px w-350px"},wt={key:0,class:"p-x-20px"},xt={class:"flex-y-center mb-16px text-13px text-color-secondary"},St={class:"flex-y-center"},Ct={class:"ml-2 flex-y-center"},Lt={class:"max-h-60vh pt-16px mb-24px overflow-y-auto border-t border-solid border-color"},Vt=["innerHTML"],Mt=x({__name:"index",setup(e){const t=v(),a=W([]),l=W(!1),s=W(null);function n(){r.push({name:"Notice"})}function o(){const e=a.value.map(e=>e.id).filter(e=>void 0!==e);m.batchNotice({ids:e,status:"1"}).then(async()=>{await t.getNotice(),a.value=t.noticeList})}return G(()=>{!async function(){await t.getNotice(),a.value=t.noticeList}()}),(e,t)=>{var i;const c=xe,u=Se,r=Ce,d=Le,v=S("ArrowRight"),m=he,p=Ve,h=Me,f=be,g=S("User"),_=S("Timer"),b=Ie;return C(),L(q,null,[T(f,{trigger:"click"},{dropdown:A(()=>[P("div",gt,[V(a).length>0?(C(),L(q,{key:0},[(C(!0),L(q,null,D(V(a),(e,t)=>(C(),L("div",{key:t,class:"w-400px py-3"},[P("div",_t,[T(u,{type:"1"===e.notice_type?"primary":"warning"},{default:A(()=>[K(z("1"===e.notice_type?"通知":"公告"),1)]),_:2},1032,["type"]),T(r,{size:"small",class:"w-200px cursor-pointer !ml-2 !flex-1",truncated:""},{default:A(()=>[K(z(e.notice_content),1)]),_:2},1024),P("div",bt,z(e.created_time),1)])]))),128)),T(d),P("div",kt,[T(p,{type:"primary",underline:"never",onClick:n},{default:A(()=>[t[2]||(t[2]=P("span",{class:"text-xs"},"查看更多",-1)),T(m,{class:"text-xs"},{default:A(()=>[T(v)]),_:1})]),_:1}),V(a).length>0?(C(),U(p,{key:0,type:"primary",underline:"never",onClick:o},{default:A(()=>[...t[3]||(t[3]=[P("span",{class:"text-xs"},"全部已读",-1)])]),_:1})):M("",!0)])],64)):(C(),L("div",yt,[T(h,{"image-size":50,description:"暂无消息"})]))])]),default:A(()=>[V(a).length>0?(C(),U(c,{key:0,value:V(a).length,max:99},{default:A(()=>[...t[1]||(t[1]=[P("div",{class:"i-svg:bell"},null,-1)])]),_:1},8,["value"])):(C(),L("div",ft))]),_:1}),T(b,{modelValue:V(l),"onUpdate:modelValue":t[0]||(t[0]=e=>H(l)?l.value=e:null),title:(null==(i=V(s))?void 0:i.notice_title)??"通知详情",width:"800px","custom-class":"notification-detail"},{default:A(()=>{var e;return[V(s)?(C(),L("div",wt,[P("div",xt,[P("span",St,[T(m,null,{default:A(()=>[T(g)]),_:1}),K(" "+z(null==(e=V(s).created_by)?void 0:e.name),1)]),P("span",Ct,[T(m,null,{default:A(()=>[T(_)]),_:1}),K(" "+z(V(s).created_time),1)])]),P("div",Lt,[P("div",{innerHTML:V(s).notice_content},null,8,Vt)])])):M("",!0)]}),_:1},8,["modelValue","title"])],64)}}}),It={class:"lock-dialog-content"},Tt=["src"],At={class:"lock-dialog-name"},Pt=Qe(x({__name:"LockDialog",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const a=p(),{t:l}=j(),s=tt(),n=e,o=t,i=b({get:()=>n.modelValue,set:e=>{o("update:modelValue",e)}}),c=W(l("lock.lockScreen")),u=W(),r=X({password:""}),d={password:[{required:!0,message:l("lock.required"),trigger:"blur"}]},v=async()=>{var e;try{await(null==(e=u.value)?void 0:e.validate()),i.value=!1,s.setLockInfo({isLock:!0,password:r.password})}catch{}};return(e,t)=>{const s=Pe,n=Ae,o=Te,m=pe,p=Ie;return C(),U(p,{modelValue:i.value,"onUpdate:modelValue":t[1]||(t[1]=e=>i.value=e),width:"500px","max-height":"170px",class:"v-lock-dialog",title:c.value},{footer:A(()=>[T(m,{type:"primary",onClick:v},{default:A(()=>[K(z(V(l)("navbar.lock")),1)]),_:1})]),default:A(()=>[P("div",It,[P("img",{src:V(a).basicInfo.avatar,alt:"",class:"lock-dialog-avatar"},null,8,Tt),P("span",At,z(V(a).basicInfo.name),1)]),T(o,{ref_key:"lockFormRef",ref:u,model:r,rules:d},{default:A(()=>[T(n,{label:V(l)("lock.lockPassword"),prop:"password"},{default:A(()=>[T(s,{modelValue:r.password,"onUpdate:modelValue":t[0]||(t[0]=e=>r.password=e),type:"password","show-password":"",clearable:"",onKeydown:Q(v,["enter"])},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])}}}),[["__scopeId","data-v-d48e1b2d"]]),Ut={class:"lockpage"},$t={class:"time-container w-screen h-screen"},zt={class:"hour-container mr-5 md:mr-20 w-2/5 h-2/5 md:h-4/5"},Rt={class:"minute-container w-2/5 h-2/5 md:h-4/5"},Bt={class:"entry-wrapper"},Et={class:"entry-content"},qt={class:"avatar-container"},Dt=["src"],Ot={class:"username"},Wt={key:0,class:"error-message"},Ft={class:"button-group"},Nt={class:"date-container"},jt={class:"time-display"},Kt={class:"meridiem-display"},Gt={class:"full-date"},Ht=Qe(x({__name:"LockPage",setup(e){const t=k(),a=J(),l=p(),s=h(),{replace:n}=J(),o=W(""),i=W(!1),c=W(!1),u=W(!0),r=tt(),{hour:d,month:v,minute:m,meridiem:f,year:g,day:_,week:b}=Je(!0),{t:y}=j();async function w(){if(!o.value)return;const e=o.value;try{i.value=!0;const t=await r.unLock(e);c.value=!t}finally{i.value=!1}}async function x(){await l.logout().catch(()=>{}),l.resetAllState(),s.delAllViews(),a.push(`/login?redirect=${t.fullPath}`),r.resetLockInfo(),n("/login")}const I=W();function U(e=!1){u.value=e,e||requestAnimationFrame(()=>{var e;null==(e=I.value)||e.focus()})}return(e,t)=>{const a=S("Lock"),s=he,n=pe;return C(),L("div",Ut,[Y(P("div",{class:"unlock-container",onClick:t[0]||(t[0]=e=>U(!1))},[T(s,null,{default:A(()=>[T(a)]),_:1}),P("span",null,z(V(y)("lock.unlock")),1)],512),[[Z,u.value]]),P("div",$t,[P("div",zt,[P("span",null,z(V(d)),1),Y(P("span",{class:"meridiem absolute left-5 top-5 text-md xl:text-xl"},z(V(f)),513),[[Z,u.value]])]),P("div",Rt,[P("span",null,z(V(m)),1)])]),T(R,{name:"fade-slide"},{default:A(()=>[Y(P("div",Bt,[P("div",Et,[P("div",qt,[P("img",{src:V(l).basicInfo.avatar,alt:"",class:"avatar"},null,8,Dt),P("span",Ot,z(V(l).basicInfo.name),1)]),T(V(Pe),{ref_key:"passwordInputRef",ref:I,modelValue:o.value,"onUpdate:modelValue":t[1]||(t[1]=e=>o.value=e),placeholder:V(y)("lock.placeholder"),class:"password-input","show-password":"",clearable:"",onKeydown:Q(w,["enter"])},null,8,["modelValue","placeholder"]),c.value?(C(),L("span",Wt,z(V(y)("lock.message")),1)):M("",!0),P("div",Ft,[T(n,{type:"primary",size:"small",class:"back-button",link:"",disabled:i.value,onClick:t[2]||(t[2]=e=>U(!0))},{default:A(()=>[K(z(V(y)("common.back")),1)]),_:1},8,["disabled"]),T(n,{type:"primary",size:"small",class:"login-button",link:"",disabled:i.value,onClick:x},{default:A(()=>[K(z(V(y)("lock.backToLogin")),1)]),_:1},8,["disabled"]),T(n,{type:"primary",class:"entry-button",size:"small",link:"",disabled:i.value,onClick:t[3]||(t[3]=e=>w())},{default:A(()=>[K(z(V(y)("lock.entrySystem")),1)]),_:1},8,["disabled"])])])],512),[[Z,!u.value]])]),_:1}),P("div",Nt,[Y(P("div",jt,[K(z(V(d))+":"+z(V(m))+" ",1),P("span",Kt,z(V(f)),1)],512),[[Z,!u.value]]),P("div",Gt,z(V(g))+"/"+z(V(v))+"/"+z(V(_))+" "+z(V(b)),1)])])}}}),[["__scopeId","data-v-76098d5f"]]),Qt=Qe(x({__name:"index",props:{
|
|
// 是否可见
|
|
modelValue:{type:Boolean,default:!1},teleport:{type:[String,Object],default:"body"}},emits:["update:modelValue","change","prev","next","skip"],setup(e,{emit:a}){const l=t(),{t:s}=j(),n=e,o=a,i=b({get:()=>n.modelValue,set:e=>o("update:modelValue",e)}),c=l.layout,u=[{target:"left"===c?".layout__sidebar":"top"===c?".layout__header-left":".layout__header-menu",title:s("common.menu"),description:s("common.menuDes"),placement:"left"===c?"right":"bottom"},{target:".navbar-actions",title:s("common.tool"),description:s("common.toolDes"),placement:"bottom"},{target:".tags-container",title:s("common.tagsView"),description:s("common.tagsViewDes"),placement:"bottom"}],r=W(0),d=b(()=>e=>s(e===u.length-1?"common.doneLabel":"common.nextLabel"));function v(e){r.value=e,o("change",e)}function m(){i.value=!1,o("skip")}function p(){o("prev")}function h(){o("next")}return(e,t)=>{const a=$e,l=pe,n=Ue;return C(),U(n,{modelValue:i.value,"onUpdate:modelValue":t[0]||(t[0]=e=>i.value=e),"show-close":!1,onChange:v},{indicators:A(()=>[T(l,{size:"small",onClick:m},{default:A(()=>[K(z(V(s)("common.skipLabel")),1)]),_:1})]),default:A(()=>[(C(),L(q,null,D(u,(e,t)=>T(a,{key:t,target:e.target,title:e.title,description:e.description,"prev-button-props":{children:V(s)("common.prevLabel"),onClick:p},"next-button-props":{children:d.value(t),onClick:h},placement:e.placement},null,8,["target","title","description","prev-button-props","next-button-props","placement"])),64))]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-799fa685"]]),Xt={key:0,class:"navbar-actions__item"},Jt={key:1,class:"navbar-actions__item"},Yt={key:2,class:"navbar-actions__item"},Zt={key:1,class:"navbar-actions__item"},ea={class:"navbar-actions__item"},ta={class:"user-profile"},aa={class:"user-profile__name"},la=Qe(x({__name:"NavbarActions",setup(a){const{t:l}=j(),n=e(),u=t(),r=p(),d=J(),v=b(()=>n.device===s.DESKTOP);function m(){d.push({name:"Profile"})}const h=W(!1);function f(){h.value=!0}const g=b({get:()=>n.guideVisible,set:e=>n.showGuide(e)});function _(){n.device===s.MOBILE?d.push({name:"Guide"}):g.value=!0}function k(){u.updateSetting("showGuide",!1)}B(()=>g.value,(e,t)=>{t&&!e&&u.updateSetting("showGuide",!1)});const y=tt(),w=b(()=>{var e;return(null==(e=y.getLockInfo)?void 0:e.isLock)??!1}),x=W(!1),I=()=>{x.value=!0},E=b(()=>{const{theme:e,sidebarColorScheme:t,layout:a}=u;return e===o.DARK?"navbar-actions--white-text":e!==o.LIGHT||a!==i.TOP&&a!==i.MIX?"navbar-actions--dark-text":t===c.CLASSIC_BLUE?"navbar-actions--white-text":"navbar-actions--dark-text"});function D(){Re.confirm("确定注销并退出系统吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning",lockScroll:!1}).then(()=>{r.logout().then(()=>{d.push("/login")})}).catch(()=>{Re.close()})}return(e,t)=>{const a=ze,s=S("User"),n=he,o=ye,i=S("Setting"),c=S("Position"),d=S("Lock"),p=S("SwitchButton"),b=ke,y=be;return C(),L(q,null,[P("div",{ref:"navbar-actions",class:$(["navbar-actions",V(E)])},[V(v)?(C(),L(q,{key:0},[V(u).showFullscreen?(C(),L("div",Xt,[T(pt)])):M("",!0),V(u).showSizeSelect?(C(),L("div",Jt,[T(ht)])):M("",!0),V(u).showLangSelect?(C(),L("div",Yt,[T(Xe)])):M("",!0)],64)):M("",!0),V(u).showNotification?(C(),L("div",Zt,[T(Mt)])):M("",!0),P("div",ea,[T(y,{trigger:"click"},{dropdown:A(()=>[T(b,null,{default:A(()=>[T(o,{onClick:m},{default:A(()=>[T(n,null,{default:A(()=>[T(s)]),_:1}),K(" "+z(V(l)("navbar.profile")),1)]),_:1}),"admin"==V(r).basicInfo.username?(C(),U(o,{key:0,onClick:f},{default:A(()=>[T(n,null,{default:A(()=>[T(i)]),_:1}),K(" "+z(V(l)("navbar.config")),1)]),_:1})):M("",!0),T(o,{onClick:_},{default:A(()=>[T(n,null,{default:A(()=>[T(c)]),_:1}),K(" "+z(V(l)("navbar.tour")),1)]),_:1}),T(o,{divided:"",onClick:I},{default:A(()=>[T(n,null,{default:A(()=>[T(d)]),_:1}),K(" "+z(V(l)("navbar.lock")),1)]),_:1}),T(o,{onClick:D},{default:A(()=>[T(n,null,{default:A(()=>[T(p)]),_:1}),K(" "+z(V(l)("navbar.logout")),1)]),_:1})]),_:1})]),default:A(()=>[P("div",ta,[V(r).basicInfo.avatar?(C(),U(a,{key:0,size:"small",src:V(r).basicInfo.avatar},null,8,["src"])):(C(),U(a,{key:1,size:"small",icon:"UserFilled"})),P("span",aa,z(V(r).basicInfo.username),1)])]),_:1})])],2),V(g)?(C(),U(Qt,{key:0,modelValue:V(g),"onUpdate:modelValue":t[0]||(t[0]=e=>H(g)?g.value=e:null),onSkip:k},null,8,["modelValue"])):M("",!0),V(x)?(C(),U(Pt,{key:1,modelValue:V(x),"onUpdate:modelValue":t[1]||(t[1]=e=>H(x)?x.value=e:null)},null,8,["modelValue"])):M("",!0),(C(),U(ee,{to:"body"},[T(R,{name:"fade-bottom",mode:"out-in"},{default:A(()=>[V(w)?(C(),U(Ht,{key:0})):M("",!0)]),_:1})])),T(Ye,{modelValue:V(h),"onUpdate:modelValue":t[2]||(t[2]=e=>H(h)?h.value=e:null)},null,8,["modelValue"])],64)}}}),[["__scopeId","data-v-c3106a3e"]]),sa={ref:"navbar",class:"navbar"},na={class:"flex-y-center"},oa={class:"navbar__actions"},ia=Qe(x({__name:"index",setup(t){const a=e(),l=b(()=>a.sidebar.opened);function s(){a.toggleSidebar()}return(e,t)=>(C(),L("div",sa,[P("div",na,[T(ut,{"is-active":V(l),onToggleClick:s},null,8,["is-active"]),T(mt)]),P("div",oa,[T(la)])],512))}}),[["__scopeId","data-v-8ab8b973"]]),ca={ref:"tags-container",class:"tags-container"},ua={role:"navigation",class:"scroll-wrapper"},ra={class:"tag-text"},da=["onClick"],va=Qe(x({__name:"index",setup(e){const{t:t}=j(),a=J(),s=k(),n=l(),o=h(),{visitedViews:i}=te(o),c=b(()=>i.value),u=W(null),r=W(),d=W(null),v=new Map,m=()=>{v.clear(),i.value.forEach(e=>{v.set(e.path,e)})},p=e=>{var t,a;if(e)return"/"===e.path||e.fullPath===(null==(t=i.value[1])?void 0:t.fullPath);{const e=v.get(s.path);return!!e&&("/"===e.path||e.fullPath===(null==(a=i.value[1])?void 0:a.fullPath))}},g=e=>{var t,a;if(e)return e.fullPath===(null==(t=i.value[i.value.length-1])?void 0:t.fullPath);{const e=v.get(s.path);return!!e&&e.fullPath===(null==(a=i.value[i.value.length-1])?void 0:a.fullPath)}},_=()=>{((e,t="/")=>{const a=[],l=(e,t)=>{e.forEach(e=>{var s,n;const o=ne.resolve(t,e.path);(null==(s=e.meta)?void 0:s.affix)&&a.push({path:o,fullPath:o,name:String(e.name||""),title:e.meta.title||"no-name",affix:!0,keepAlive:e.meta.keepAlive||!1}),(null==(n=e.children)?void 0:n.length)&&l(e.children,o)})};return l(e,t),a})(n.routes).forEach(e=>{e.name&&o.addVisitedView(e)})},y=()=>{ae(()=>{var e,t,a,l;const n=v.get(s.path);n&&n.fullPath!==s.fullPath&&o.updateVisitedView({name:s.name,title:(null==(e=s.meta)?void 0:e.title)||"",path:s.path,fullPath:s.fullPath,icon:s.icon||(null==(t=s.meta)?void 0:t.icon),affix:(null==(a=s.meta)?void 0:a.affix)||!1,keepAlive:(null==(l=s.meta)?void 0:l.keepAlive)||!1,query:s.query})})},w=e=>{var t;const a=null==(t=r.value)?void 0:t.wrapRef;if(!a)return;const l=a.scrollWidth>a.clientWidth,s=a.scrollHeight>a.clientHeight;if(!l&&!s)return;const n=e.deltaY||-e.wheelDelta||0,o=e.deltaX||0,i=Math.max(0,Math.min(a.scrollWidth-a.clientWidth,a.scrollLeft+o)),c=Math.max(0,Math.min(a.scrollHeight-a.clientHeight,a.scrollTop+n));r.value.setScrollLeft(i),r.value.setScrollTop(c)},x=e=>{e&&(o.delCachedView(e),ae(()=>{a.replace("/redirect"+e.fullPath)}))},I=e=>{const t=e||v.get(s.path);t&&o.delView(t).then(e=>{o.isActive(t)&&o.toLastView(e.visitedViews,t),ae(()=>{ee()})})},R=e=>{const t=e||u.value||v.get(s.path);t&&o.delLeftViews(t).then(e=>{e.visitedViews.some(e=>e.path===s.path)||o.toLastView(e.visitedViews),ae(()=>{ee()})})},E=e=>{const t=e||u.value||v.get(s.path);t&&o.delRightViews(t).then(e=>{e.visitedViews.some(e=>e.path===s.path)||o.toLastView(e.visitedViews),ae(()=>{ee()})})},F=e=>{const t=e||u.value||v.get(s.path);t&&(a.push(t),o.delOtherViews(t).then(()=>{y(),ae(()=>{ee()})}))},N=e=>{o.delAllViews().then(t=>{o.toLastView(t.visitedViews,e||void 0),ae(()=>{ee()})})},Q=async e=>{const a=v.get(s.path);if(a)switch(e){case"refresh":x(a);break;case"close":I(a);break;case"closeRight":E();break;case"closeLeft":R();break;case"closeOther":F();break;case"closeAll":N(a);break;case"refreshCache":try{await f(),x(a),we.success(t("navbar.refreshCache")+"完成")}catch(l){we.error("刷新失败")}}},X=e=>Ze.isLinkExists(e.fullPath||e.path),Y=()=>{var e;const t=null==(e=r.value)?void 0:e.wrapRef;if(!t)return;const a=Math.max(0,t.scrollLeft-200);r.value.setScrollLeft(a)},Z=()=>{var e;const t=null==(e=r.value)?void 0:e.wrapRef;if(!t)return;const a=t.scrollWidth-t.clientWidth,l=Math.min(a,t.scrollLeft+200);r.value.setScrollLeft(l),l>=a-1&&(oe.value.hasScrolledToLatest=!1)},ee=()=>{oe.value.hasScrolledToLatest=!1,oe.value.isContainerFull=!1},oe=W({hasScrolledToLatest:!1,
|
|
// 是否已经滚动到最新标签
|
|
isContainerFull:!1}),ie=()=>{var e;const t=null==(e=r.value)?void 0:e.wrapRef;if(!t)return;const a=t.clientWidth,l=t.scrollWidth,s=l>a,n=document.querySelector(".tags-item.active");if(n){const e=n,o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),c=o.left-i.left+t.scrollLeft,u=c+e.offsetWidth;if(c<t.scrollLeft||u>t.scrollLeft+a){const t=c-(a-e.offsetWidth)/2,n=l-a,o=0,i=Math.max(o,Math.min(n,t));return r.value.setScrollLeft(i),oe.value.hasScrolledToLatest=!0,void(oe.value.isContainerFull=s)}}if(s&&!oe.value.hasScrolledToLatest){const e=l-a;r.value.setScrollLeft(e),oe.value.hasScrolledToLatest=!0,oe.value.isContainerFull=!0}else s||(r.value.setScrollLeft(0),oe.value.hasScrolledToLatest=!1,oe.value.isContainerFull=!1)};B(s,()=>{null===d.value&&(d.value="menu"),(()=>{var e,t;if(!(null==(e=s.meta)?void 0:e.title))return;const a=i.value.find(e=>e.path===s.path);if(a){if(!a.affix&&"menu"===d.value){const e=i.value.findIndex(e=>e.path===s.path);if(-1!==e){const t=i.value.splice(e,1)[0];i.value.push(t)}}}else o.addView({name:s.name,title:s.meta.title,path:s.path,fullPath:s.fullPath,icon:s.icon||(null==(t=s.meta)?void 0:t.icon),affix:s.meta.affix||!1,keepAlive:s.meta.keepAlive||!1,query:s.query});"menu"===d.value&&ae(()=>{ie()}),d.value=null})(),y(),m()},{immediate:!0});let ce=null;return B(()=>i.value.length,()=>{m(),"menu"===d.value&&ae(()=>{ie()})}),B(()=>s.path,()=>{ae(()=>{ie()})}),G(()=>{_(),m();const e=document.querySelector(".tags-container");e&&window.ResizeObserver&&(ce=new ResizeObserver(()=>{ae(()=>{ie()})}),ce.observe(e))}),le(()=>{ce&&ce.disconnect()}),(e,a)=>{const l=S("DArrowLeft"),n=he,m=S("Refresh"),h=ye,f=S("Close"),_=S("Back"),b=S("Right"),k=S("Remove"),y=S("Minus"),B=S("Star"),W=S("StarFilled"),j=ke,G=be,J=S("router-link"),ee=Be,te=S("DArrowRight"),ae=S("RefreshRight"),le=S("Setting");return C(),L("div",ca,[T(n,{class:"btn",onClick:Y},{default:A(()=>[T(l)]),_:1}),P("nav",ua,[T(ee,{ref_key:"scrollbarRef",ref:r,class:"scroll-container",onWheel:w},{default:A(()=>[T(V(se),{modelValue:V(i),"onUpdate:modelValue":a[2]||(a[2]=e=>H(i)?i.value=e:null),animation:150},{default:A(()=>[(C(!0),L(q,null,D(V(c),e=>(C(),U(J,{key:e.fullPath,class:$(["tags-item",{active:V(o).isActive(e)}]),to:{path:e.path,query:e.query},onClick:a[1]||(a[1]=e=>d.value="tab"),onMouseup:O(t=>(e=>{e.affix||I(e)})(e),["middle"])},{default:A(()=>[T(G,{trigger:"contextmenu",onVisibleChange:t=>((e,t)=>{u.value=e&&(t||v.get(s.path))||null})(t,e),onClick:a[0]||(a[0]=O(()=>{},["stop"]))},{dropdown:A(()=>[T(j,null,{default:A(()=>[T(h,{onClick:t=>x(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(m)]),_:1}),K(" "+z(V(t)("navbar.refresh")),1)]),_:1},8,["onClick"]),T(h,{disabled:e.affix||V(i).length<=1,onClick:t=>I(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(f)]),_:1}),K(" "+z(V(t)("navbar.close")),1)]),_:1},8,["disabled","onClick"]),T(h,{disabled:p(e),onClick:t=>R(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(_)]),_:1}),K(" "+z(V(t)("navbar.closeLeft")),1)]),_:1},8,["disabled","onClick"]),T(h,{disabled:g(e),onClick:t=>E(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(b)]),_:1}),K(" "+z(V(t)("navbar.closeRight")),1)]),_:1},8,["disabled","onClick"]),T(h,{disabled:V(i).length<=1,onClick:t=>F(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(k)]),_:1}),K(" "+z(V(t)("navbar.closeOther")),1)]),_:1},8,["disabled","onClick"]),T(h,{disabled:V(i).length<=1,onClick:t=>N(e)},{default:A(()=>[T(n,null,{default:A(()=>[T(y)]),_:1}),K(" "+z(V(t)("navbar.closeAll")),1)]),_:1},8,["disabled","onClick"]),T(h,{divided:"",onClick:t=>(e=>{try{const t=e.fullPath||e.path;if(Ze.isLinkExists(t)){const a=Ze.getQuickLinks().find(e=>e.href===t);(null==a?void 0:a.id)&&(Ze.removeQuickLink(a.id),we.success(`已取消收藏:${e.title}`))}else{const t=Ze.createQuickLinkFromRoute(e);Ze.addQuickLink(t),we.success(`已收藏:${e.title}`)}}catch(t){we.error("操作失败")}})(e)},{default:A(()=>[T(n,null,{default:A(()=>[X(e)?(C(),U(W,{key:1})):(C(),U(B,{key:0}))]),_:2},1024),K(" "+z(X(e)?"取消收藏":"收藏"),1)]),_:2},1032,["onClick"])]),_:2},1024)]),default:A(()=>[P("span",ra,z(V(rt)(e.title)),1)]),_:2},1032,["onVisibleChange"]),e.affix?M("",!0):(C(),L("span",{key:0,class:"tag-close-btn",onClick:O(t=>I(e),["prevent","stop"])},[T(n,null,{default:A(()=>[T(f)]),_:1})],8,da))]),_:2},1032,["class","to","onMouseup"]))),128))]),_:1},8,["modelValue"])]),_:1},512)]),T(n,{class:"btn",onClick:Z},{default:A(()=>[T(te)]),_:1}),T(n,{class:"btn",onClick:a[3]||(a[3]=e=>Q("refreshCache"))},{default:A(()=>[T(ae)]),_:1}),T(G,{class:"btn",trigger:"click"},{dropdown:A(()=>[T(j,null,{default:A(()=>{var e;return[T(h,{onClick:a[4]||(a[4]=e=>Q("refresh"))},{default:A(()=>[T(n,null,{default:A(()=>[T(m)]),_:1}),K(" "+z(V(t)("navbar.refresh")),1)]),_:1}),(null==(e=V(u))?void 0:e.affix)?M("",!0):(C(),U(h,{key:0,onClick:a[5]||(a[5]=e=>Q("close"))},{default:A(()=>[T(n,null,{default:A(()=>[T(f)]),_:1}),K(" "+z(V(t)("navbar.close")),1)]),_:1})),T(h,{disabled:p(V(v).get(V(s).path)),onClick:a[6]||(a[6]=e=>Q("closeLeft"))},{default:A(()=>[T(n,null,{default:A(()=>[T(_)]),_:1}),K(" "+z(V(t)("navbar.closeLeft")),1)]),_:1},8,["disabled"]),T(h,{disabled:g(V(v).get(V(s).path)),onClick:a[7]||(a[7]=e=>Q("closeRight"))},{default:A(()=>[T(n,null,{default:A(()=>[T(b)]),_:1}),K(" "+z(V(t)("navbar.closeRight")),1)]),_:1},8,["disabled"]),T(h,{disabled:V(i).length<=1,onClick:a[8]||(a[8]=e=>Q("closeOther"))},{default:A(()=>[T(n,null,{default:A(()=>[T(k)]),_:1}),K(" "+z(V(t)("navbar.closeOther")),1)]),_:1},8,["disabled"]),T(h,{onClick:a[9]||(a[9]=e=>Q("closeAll"))},{default:A(()=>[T(n,null,{default:A(()=>[T(y)]),_:1}),K(" "+z(V(t)("navbar.closeAll")),1)]),_:1})]}),_:1})]),default:A(()=>[T(n,null,{default:A(()=>[T(le)]),_:1})]),_:1})],512)}}}),[["__scopeId","data-v-1a9f7388"]]),ma={"sidebar-width":"210px","navbar-height":"50px","tags-view-height":"34px","menu-background":"var(--menu-background)","menu-text":"var(--menu-text)","menu-active-text":"var(--menu-active-text)","menu-hover":"var(--menu-hover)","sidebar-color-blue":"_sidebar-color-blue_1h0dk_16",dark:"_dark_1h0dk_26"},pa=Qe(x({__name:"index",setup(e){const a=b(()=>h().cachedViews),l=b(()=>t().showTagsView?`calc(100vh - ${ma["navbar-height"]} - ${ma["tags-view-height"]})`:`calc(100vh - ${ma["navbar-height"]})`);return(e,t)=>{const s=S("router-view"),n=me;return C(),L("section",{class:"app-main",style:ce({height:V(l)})},[T(s,null,{default:A(({Component:e,route:t})=>[T(R,{"enter-active-class":"animate__animated animate__fadeIn",mode:"out-in"},{default:A(()=>[(C(),U(oe,{include:V(a)},[(C(),U(ie(e),{key:t.path}))],1032,["include"]))]),_:2},1024)]),_:1}),T(n,{target:".app-main"},{default:A(()=>[...t[0]||(t[0]=[P("div",{class:"i-svg:backtop w-6 h-6"},null,-1)])]),_:1})],4)}}}),[["__scopeId","data-v-6aa6b45f"]]),ha=x({name:"AppLink",inheritAttrs:!1,__name:"index",props:{to:{type:Object,required:!0}},setup(e){const t=e,a=b(()=>et(t.to.path||"")),l=b(()=>a.value?"a":"router-link");return(t,s)=>{return C(),U(ie(V(l)),ue(re((n=e.to,a.value?{href:n.path,target:"_blank",rel:"noopener noreferrer"}:{to:n}))),{default:A(()=>[I(t.$slots,"default")]),_:3},16);var n}}}),fa={key:1,class:"i-svg:menu menu-icon"},ga={key:2,class:"menu-title ml-1"},_a=Qe(x({__name:"MenuItemContent",props:{icon:{},title:{}},setup(e){const t=e,a=b(()=>{var e;return null==(e=t.icon)?void 0:e.startsWith("el-icon")}),l=b(()=>{var e;return null==(e=t.icon)?void 0:e.replace("el-icon-","")});return(t,s)=>{const n=he;return C(),L(q,null,[e.icon?(C(),L(q,{key:0},[V(a)?(C(),U(n,{key:0,class:"menu-icon"},{default:A(()=>[(C(),U(ie(V(l))))]),_:1})):(C(),L("div",{key:1,class:$([`i-svg:${e.icon}`,"menu-icon"])},null,2))],64)):(C(),L("div",fa)),e.title?(C(),L("span",ga,z(V(rt)(e.title)),1)):M("",!0)],64)}}}),[["__scopeId","data-v-784311bc"]]),ba={key:0},ka=x({name:"MenuItem",inheritAttrs:!1,__name:"MenuItem",props:{
|
|
/**
|
|
* 当前路由对象
|
|
*/
|
|
item:{type:Object,required:!0},
|
|
/**
|
|
* 父级完整路径
|
|
*/
|
|
basePath:{type:String,required:!0},
|
|
/**
|
|
* 是否为嵌套路由
|
|
*/
|
|
isNest:{type:Boolean,default:!1}},setup(e){const t=e,a=W();function l(e=[],t){const l=e.filter(e=>{var t;return!(null==(t=e.meta)?void 0:t.hidden)&&(a.value=e,!0)});return 1===l.length||0===l.length&&(a.value={...t,path:"",noShowingChildren:!0},!0)}function s(e){return et(e)?e:et(t.basePath)?t.basePath:de.resolve(t.basePath,e)}return(t,n)=>{var o,i;const c=Ee,u=ha,r=S("MenuItem",!0),d=qe;return e.item.meta&&e.item.meta.hidden?M("",!0):(C(),L("div",ba,[
|
|
// 未配置始终显示,使用唯一子节点替换父节点显示为叶子节点
|
|
l(e.item.children,e.item)&&!(null==(o=e.item.meta)?void 0:o.alwaysShow)&&(!V(a).children||V(a).noShowingChildren)||// 即使配置了始终显示,但无子节点,也显示为叶子节点
|
|
(null==(i=e.item.meta)?void 0:i.alwaysShow)&&!e.item.children?(C(),L(q,{key:0},[V(a).meta?(C(),U(u,{key:0,to:{path:s(V(a).path),query:V(a).meta.params}},{default:A(()=>[T(c,{index:s(V(a).path),class:$({"submenu-title-noDropdown":!e.isNest})},{default:A(()=>{var t;return[V(a).meta?(C(),U(_a,{key:0,icon:V(a).meta.icon||(null==(t=e.item.meta)?void 0:t.icon),title:V(a).meta.title},null,8,["icon","title"])):M("",!0)]}),_:1},8,["index","class"])]),_:1},8,["to"])):M("",!0)],64)):(C(),U(d,{key:1,index:s(e.item.path),"data-path":e.item.path,teleported:""},{title:A(()=>[e.item.meta?(C(),U(_a,{key:0,icon:e.item.meta.icon,title:e.item.meta.title},null,8,["icon","title"])):M("",!0)]),default:A(()=>[(C(!0),L(q,null,D(e.item.children,e=>(C(),U(r,{key:e.path,"is-nest":!0,item:e,"base-path":s(e.path)},null,8,["item","base-path"]))),128))]),_:1},8,["index","data-path"]))]))}}}),ya=x({__name:"BasicMenu",props:{data:{type:Array,default:()=>[]},basePath:{type:String,required:!0,example:"/system"},menuMode:{type:String,default:"vertical",validator:e=>["vertical","horizontal"].includes(e)}},setup(a){const l=a,s=W(),n=t(),o=e(),i=k(),u=W([]),r=b(()=>n.theme),d=b(()=>n.sidebarColorScheme),v=b(()=>{const e="dark"===r.value||d.value===c.CLASSIC_BLUE;return{backgroundColor:e?ma["menu-background"]:void 0,textColor:e?ma["menu-text"]:void 0,activeTextColor:e?ma["menu-active-text"]:void 0}}),m=b(()=>{const{meta:e,path:t}=i;return(null==e?void 0:e.activeMenu)&&"string"==typeof e.activeMenu?e.activeMenu:t});const p=e=>{u.value.push(e)},h=e=>{u.value=u.value.filter(t=>t!==e)};function f(){var e;(null==(e=s.value)?void 0:e.$el)&&ae(()=>{var e;try{const t=null==(e=s.value)?void 0:e.$el;if(!t)return;const a=t.querySelectorAll(".el-sub-menu");a.forEach(e=>{e.classList.remove("has-active-child")});const n=t.querySelector(".el-menu-item.is-active");if(n){let e=n.parentElement;for(;e&&e!==t;)e.classList.contains("el-sub-menu")&&e.classList.add("has-active-child"),e=e.parentElement}else if("horizontal"===l.menuMode){const e=m.value;a.forEach(t=>{var a;const l=t,s=l.getAttribute("data-path")||(null==(a=l.querySelector(".el-sub-menu__title"))?void 0:a.getAttribute("data-path"));s&&e.startsWith(s)&&l.classList.add("has-active-child")})}}catch(t){}})}return B(()=>u.value,()=>{f()}),B(()=>l.menuMode,e=>{"horizontal"===e&&s.value&&u.value.forEach(e=>s.value.close(e))}),B(()=>m.value,()=>{ae(()=>{f()})},{immediate:!0}),B(()=>i.path,()=>{ae(()=>{f()})}),G(()=>{f()}),(e,t)=>{const n=De;return C(),U(n,{ref_key:"menuRef",ref:s,"default-active":V(m),collapse:!V(o).sidebar.opened,"background-color":V(v).backgroundColor,"text-color":V(v).textColor,"active-text-color":V(v).activeTextColor,"popper-effect":V(r),"unique-opened":!1,"collapse-transition":!1,mode:a.menuMode,onOpen:p,onClose:h},{default:A(()=>[(C(!0),L(q,null,D(a.data,e=>{return C(),U(ka,{key:e.path,item:e,"base-path":(t=e.path,et(t)?t:et(l.basePath)?l.basePath:l.basePath&&""!==l.basePath?de.resolve(l.basePath,t):t)},null,8,["item","base-path"]);var t}),128))]),_:1},8,["default-active","collapse","background-color","text-color","active-text-color","popper-effect","mode"])}}}),wa=Qe(x({__name:"LeftLayout",setup(e){const{isShowTagsView:t,isShowLogo:a,isSidebarOpen:l}=at(),{routes:s}=lt();return(e,n)=>{const o=Be;return C(),U(st,null,{default:A(()=>[P("div",{class:$(["layout__sidebar",{"layout__sidebar--collapsed":!V(l)}])},[P("div",{class:$([{"has-logo":V(a)},"layout-sidebar"])},[V(a)?(C(),U(ct,{key:0,collapse:!V(l)},null,8,["collapse"])):M("",!0),T(o,null,{default:A(()=>[T(ya,{data:V(s),"base-path":""},null,8,["data"])]),_:1})],2)],2),P("div",{class:$([{hasTagsView:V(t),"layout__main--collapsed":!V(l)},"layout__main"])},[T(ia),V(t)?(C(),U(va,{key:0})):M("",!0),T(pa)],2)]),_:1})}}}),[["__scopeId","data-v-2fee8a3a"]]),xa={class:"layout__header"},Sa={class:"layout__header-left"},Ca={class:"layout__header-right"},La=Qe(x({__name:"TopLayout",setup(e){const{isShowTagsView:t,isShowLogo:a}=at(),{routes:l}=lt(),{width:s}=w(),n=b(()=>s.value<768);return(e,s)=>(C(),U(st,null,{default:A(()=>[P("div",xa,[P("div",Sa,[V(a)?(C(),U(ct,{key:0,collapse:n.value},null,8,["collapse"])):M("",!0),T(ya,{data:V(l),"menu-mode":"horizontal","base-path":""},null,8,["data"])]),P("div",Ca,[T(la)])]),P("div",{class:$([{hasTagsView:V(t)},"layout__main"])},[V(t)?(C(),U(va,{key:0})):M("",!0),T(pa)],2)]),_:1}))}}),[["__scopeId","data-v-b1dbf894"]]),Va=Qe(x({name:"MixTopMenu",__name:"MixTopMenu",setup(a){const s=J(),n=e(),o=l(),i=t(),u=b(()=>i.theme),r=b(()=>i.sidebarColorScheme),d=W([]),v=b(()=>d.value.map(e=>{var t,a,l,s,n;if((null==(t=e.meta)?void 0:t.alwaysShow)||!e.children||0===e.children.length)return e;const o=e.children.filter(e=>{var t;return!(null==(t=e.meta)?void 0:t.hidden)});if(1===o.length){const t=o[0];return{...e,meta:{...e.meta,title:(null==(a=t.meta)?void 0:a.title)||(null==(l=e.meta)?void 0:l.title),icon:(null==(s=t.meta)?void 0:s.icon)||(null==(n=e.meta)?void 0:n.icon)}}}return e})),m=e=>{p(e)},p=(e,t=!1)=>{e&&n.activeTopMenuPath&&(n.activeTopMenu(e),o.setMixLayoutSideMenus(e)),t||h(o.mixLayoutSideMenus)},h=e=>{var t;if(0===e.length)return;const[a]=e;a.children&&a.children.length>0?h(a.children):a.name&&s.push({name:a.name,query:"object"==typeof(null==(t=a.meta)?void 0:t.params)?a.meta.params:void 0})},f=b(()=>n.activeTopMenuPath);return G(()=>{var e;d.value=o.routes.filter(e=>!e.meta||!e.meta.hidden);const t=k().path.split("/").filter(Boolean).length>1&&(null==(e=k().path.match(/^\/[^/]+/))?void 0:e[0])||"/";n.activeTopMenu(t),o.setMixLayoutSideMenus(t)}),B(()=>s.currentRoute.value.path,e=>{var t;if(e){const a=e.split("/").filter(Boolean).length>1&&(null==(t=e.match(/^\/[^/]+/))?void 0:t[0])||"/";p(a,!0)}}),(e,t)=>{const a=Ee,l=De;return C(),U(l,{mode:"horizontal","default-active":V(f),"background-color":"dark"===V(u)||V(r)===V(c).CLASSIC_BLUE?V(ma)["menu-background"]:void 0,"text-color":"dark"===V(u)||V(r)===V(c).CLASSIC_BLUE?V(ma)["menu-text"]:void 0,"active-text-color":"dark"===V(u)||V(r)===V(c).CLASSIC_BLUE?V(ma)["menu-active-text"]:void 0,onSelect:m},{default:A(()=>[(C(!0),L(q,null,D(V(v),e=>(C(),U(a,{key:e.path,index:e.path},{default:A(()=>[e.meta?(C(),U(_a,{key:0,icon:e.meta.icon,title:e.meta.title},null,8,["icon","title"])):M("",!0)]),_:2},1032,["index"]))),128))]),_:1},8,["default-active","background-color","text-color","active-text-color"])}}}),[["__scopeId","data-v-ef7eb851"]]),Ma={class:"layout__header"},Ia={class:"layout__header-content"},Ta={key:0,class:"layout__header-logo"},Aa={class:"layout__header-menu"},Pa={class:"layout__header-actions"},Ua={class:"layout__container"},$a={class:"layout__sidebar-toggle"},za=Qe(x({__name:"MixLayout",setup(t){const a=k(),{isShowTagsView:s,isShowLogo:n,isSidebarOpen:o,toggleSidebar:i}=at(),{sideMenuRoutes:c,activeTopMenuPath:u}=lt(),{width:r}=w(),d=b(()=>r.value<768),v=b(()=>{const{meta:e,path:t}=a;return(null==e?void 0:e.activeMenu)&&"string"==typeof e.activeMenu?e.activeMenu:t});return B(()=>a.path,t=>{var a;const s=t.split("/").filter(Boolean).length>1&&(null==(a=t.match(/^\/[^/]+/))?void 0:a[0])||"/";if(t.startsWith(u.value));else if(s!==u.value){const t=e(),a=l();t.activeTopMenu(s),a.setMixLayoutSideMenus(s)}},{immediate:!0}),(e,t)=>{const a=De,l=Be;return C(),U(st,null,{default:A(()=>[P("div",Ma,[P("div",Ia,[V(n)?(C(),L("div",Ta,[T(ct,{collapse:d.value},null,8,["collapse"])])):M("",!0),P("div",Aa,[T(Va)]),P("div",Pa,[T(la)])])]),P("div",Ua,[P("div",{class:$(["layout__sidebar--left",{"layout__sidebar--collapsed":!V(o)}])},[T(l,null,{default:A(()=>[T(a,{"default-active":v.value,collapse:!V(o),"collapse-transition":!1,"unique-opened":!1,"background-color":V(ma)["menu-background"],"text-color":V(ma)["menu-text"],"active-text-color":V(ma)["menu-active-text"]},{default:A(()=>[(C(!0),L(q,null,D(V(c),e=>{return C(),U(ka,{key:e.path,item:e,"base-path":(t=e.path,et(t)||t.startsWith("/")?t:`${u.value}/${t}`)},null,8,["item","base-path"]);var t}),128))]),_:1},8,["default-active","collapse","background-color","text-color","active-text-color"])]),_:1}),P("div",$a,[T(ut,{"is-active":V(o),onToggleClick:V(i)},null,8,["is-active","onToggleClick"])])],2),P("div",{class:$([{hasTagsView:V(s)},"layout__main"])},[V(s)?(C(),U(va,{key:0})):M("",!0),T(pa)],2)])]),_:1})}}}),[["__scopeId","data-v-8aa71b92"]]),Ra={class:"settings-content"},Ba={class:"config-section"},Ea={class:"flex-center"},qa={class:"config-section"},Da={class:"layout-select"},Oa={class:"layout-grid"},Wa=["onClick","onKeydown"],Fa={class:"layout-preview"},Na={key:0,class:"layout-header"},ja={key:1,class:"layout-sidebar"},Ka={class:"layout-name"},Ga={key:0,class:"layout-check"},Ha={class:"config-section"},Qa={class:"config-item"},Xa={class:"theme-color-selector"},Ja={class:"color-label"},Ya={class:"text-xs"},Za={class:"color-options"},el=["onClick"],tl={key:0,class:"color-check"},al={class:"color-picker-wrapper"},ll={key:0,class:"config-section"},sl={class:"config-item flex-x-between"},nl={class:"text-xs"},ol={class:"config-section"},il={class:"flex-x-between"},cl={class:"text-xs"},ul={class:"flex-x-between"},rl={class:"text-xs"},dl={class:"flex-x-between"},vl={class:"text-xs"},ml={class:"flex-x-between"},pl={class:"text-xs"},hl={class:"flex-x-between"},fl={class:"text-xs"},gl={class:"flex-x-between"},_l={class:"text-xs"},bl={class:"flex-x-between"},kl={class:"text-xs"},yl={class:"flex-x-between"},wl={class:"text-xs"},xl={class:"flex-x-between"},Sl={class:"text-xs"},Cl={class:"action-footer"},Ll={class:"action-card"},Vl={class:"action-buttons"},Ml=Qe(x({__name:"index",setup(a){const{t:l}=j(),n=e(),u=b(()=>n.device===s.DESKTOP?"400px":"90%"),r=ve(Oe),d=ve(We),v=W(!1),m=W(!1),p=[{value:i.LEFT,label:l("settings.leftLayout"),className:"left"},{value:i.TOP,label:l("settings.topLayout"),className:"top"},{value:i.MIX,label:l("settings.mixLayout"),className:"mix"}],h=t(),f=b(()=>g.slice(0,7)),_=g,k=W(h.theme===o.DARK),y=W(h.sidebarColorScheme),w=b({get:()=>h.themeColor,set:e=>h.updateThemeColor(e)}),x=b({get:()=>h.settingsVisible,set:e=>h.settingsVisible=e}),S=e=>{h.updateTheme(e?o.DARK:o.LIGHT)},I=e=>{h.updateSidebarColorScheme(e)},R=e=>{h.layout!==e&&h.updateLayout(e)},B=async()=>{try{v.value=!0;const e=O();await navigator.clipboard.writeText(e),we.success({message:l("settings.copySuccess"),duration:3e3})}catch{we.error("复制配置失败")}finally{v.value=!1}},E=async()=>{m.value=!0;try{h.resetSettings(),k.value=h.theme===o.DARK,y.value=h.sidebarColorScheme,we.success(l("settings.resetSuccess"))}catch{we.error("重置配置失败")}finally{m.value=!1}},O=()=>`const defaultSettings: AppSettings = {\n title: ${"pkg.name"},\n version: ${"pkg.version"},\n showSettings: ${!0},\n showTagsView: ${h.showTagsView},\n showAppLogo: ${h.showAppLogo},\n showMenuSearch: ${h.showMenuSearch},\n showFullscreen: ${h.showFullscreen},\n showSizeSelect: ${h.showSizeSelect},\n showLangSelect: ${h.showLangSelect},\n showNotification: ${h.showNotification},\n layout: ${`LayoutMode.${h.layout.toUpperCase()}`},\n theme: ${`ThemeMode.${h.theme.toUpperCase()}`},\n size: ${"ComponentSize.DEFAULT"},\n language: ${"LanguageEnum.ZH_CN"},\n themeColor: ${`"${h.themeColor}"`},\n showWatermark: ${h.showWatermark},\n watermarkContent: ${"pkg.name"},\n sidebarColorScheme: ${`SidebarColor.${h.sidebarColorScheme.toUpperCase().replace("-","_")}`},\n};`,F=()=>{h.settingsVisible=!1};return(e,t)=>{const a=Le,s=Ne,n=he,o=_e,g=Ke,b=He,O=Ge,W=pe,N=Fe;return C(),U(N,{modelValue:V(x),"onUpdate:modelValue":t[12]||(t[12]=e=>H(x)?x.value=e:null),size:V(u),title:V(l)("settings.project"),"before-close":F,class:"settings-drawer"},{default:A(()=>[P("div",Ra,[P("section",Ba,[T(a,null,{default:A(()=>[K(z(V(l)("settings.theme")),1)]),_:1}),P("div",Ea,[T(s,{modelValue:V(k),"onUpdate:modelValue":t[0]||(t[0]=e=>H(k)?k.value=e:null),"active-action-icon":"Moon","inactive-action-icon":"Sunny",onChange:S},null,8,["modelValue"])])]),P("section",qa,[T(a,null,{default:A(()=>[K(z(V(l)("settings.layoutSetting")),1)]),_:1}),P("div",Da,[P("div",Oa,[(C(),L(q,null,D(p,e=>T(o,{key:e.value,content:e.label,placement:"bottom"},{default:A(()=>[P("div",{role:"button",tabindex:"0",class:$(["layout-item",e.className,{"is-active":V(h).layout===e.value}]),onClick:t=>R(e.value),onKeydown:Q(t=>R(e.value),["enter","space"])},[P("div",Fa,[e.value!==V(i).LEFT?(C(),L("div",Na)):M("",!0),e.value!==V(i).TOP?(C(),L("div",ja)):M("",!0),t[13]||(t[13]=P("div",{class:"layout-main"},null,-1))]),P("div",Ka,z(e.label),1),V(h).layout===e.value?(C(),L("div",Ga,[T(n,null,{default:A(()=>[T(V(je))]),_:1})])):M("",!0)],42,Wa)]),_:2},1032,["content"])),64))])])]),P("section",Ha,[T(a,null,{default:A(()=>[K(z(V(l)("settings.systemTheme")),1)]),_:1}),P("div",Qa,[P("div",Xa,[P("div",Ja,[P("span",Ya,z(V(l)("settings.themeColor")),1)]),P("div",Za,[(C(!0),L(q,null,D(V(f),e=>(C(),L("div",{key:e,class:$(["color-option",{"is-active":V(w)===e}]),style:ce({backgroundColor:e}),onClick:t=>(e=>{w.value=e})(e)},[V(w)===e?(C(),L("div",tl,[T(n,null,{default:A(()=>[T(V(je))]),_:1})])):M("",!0)],14,el))),128)),P("div",al,[T(g,{modelValue:V(w),"onUpdate:modelValue":t[1]||(t[1]=e=>H(w)?w.value=e:null),predefine:V(_),"show-alpha":"",size:"small",class:"custom-color-picker"},null,8,["modelValue","predefine"])])])])])]),V(k)?M("",!0):(C(),L("section",ll,[T(a,null,{default:A(()=>[K(z(V(l)("settings.navigation")),1)]),_:1}),P("div",sl,[P("span",nl,z(V(l)("settings.sidebarColorScheme")),1),T(O,{modelValue:V(y),"onUpdate:modelValue":t[2]||(t[2]=e=>H(y)?y.value=e:null),onChange:I},{default:A(()=>[T(b,{value:V(c).CLASSIC_BLUE},{default:A(()=>[K(z(V(l)("settings.classicBlue")),1)]),_:1},8,["value"]),T(b,{value:V(c).MINIMAL_WHITE},{default:A(()=>[K(z(V(l)("settings.minimalWhite")),1)]),_:1},8,["value"])]),_:1},8,["modelValue"])])])),P("section",ol,[T(a,null,{default:A(()=>[K(z(V(l)("settings.interface")),1)]),_:1}),P("div",il,[P("span",cl,z(V(l)("settings.showTagsView")),1),T(s,{modelValue:V(h).showTagsView,"onUpdate:modelValue":t[3]||(t[3]=e=>V(h).showTagsView=e)},null,8,["modelValue"])]),P("div",ul,[P("span",rl,z(V(l)("settings.showAppLogo")),1),T(s,{modelValue:V(h).showAppLogo,"onUpdate:modelValue":t[4]||(t[4]=e=>V(h).showAppLogo=e)},null,8,["modelValue"])]),P("div",dl,[P("span",vl,z(V(l)("settings.showWatermark")),1),T(s,{modelValue:V(h).showWatermark,"onUpdate:modelValue":t[5]||(t[5]=e=>V(h).showWatermark=e)},null,8,["modelValue"])]),T(a,null,{default:A(()=>[K(z(V(l)("settings.showDesktopTools")),1)]),_:1}),P("div",ml,[P("span",pl,z(V(l)("settings.showMenuSearch")),1),T(s,{modelValue:V(h).showMenuSearch,"onUpdate:modelValue":t[6]||(t[6]=e=>V(h).showMenuSearch=e)},null,8,["modelValue"])]),P("div",hl,[P("span",fl,z(V(l)("settings.showFullscreen")),1),T(s,{modelValue:V(h).showFullscreen,"onUpdate:modelValue":t[7]||(t[7]=e=>V(h).showFullscreen=e)},null,8,["modelValue"])]),P("div",gl,[P("span",_l,z(V(l)("settings.showSizeSelect")),1),T(s,{modelValue:V(h).showSizeSelect,"onUpdate:modelValue":t[8]||(t[8]=e=>V(h).showSizeSelect=e)},null,8,["modelValue"])]),P("div",bl,[P("span",kl,z(V(l)("settings.showLangSelect")),1),T(s,{modelValue:V(h).showLangSelect,"onUpdate:modelValue":t[9]||(t[9]=e=>V(h).showLangSelect=e)},null,8,["modelValue"])]),P("div",yl,[P("span",wl,z(V(l)("settings.showNotification")),1),T(s,{modelValue:V(h).showNotification,"onUpdate:modelValue":t[10]||(t[10]=e=>V(h).showNotification=e)},null,8,["modelValue"])]),P("div",xl,[P("span",Sl,z(V(l)("settings.showGuide")),1),T(s,{modelValue:V(h).showGuide,"onUpdate:modelValue":t[11]||(t[11]=e=>V(h).showGuide=e)},null,8,["modelValue"])])])]),P("div",Cl,[t[14]||(t[14]=P("div",{class:"action-divider"},null,-1)),P("div",Ll,[P("div",Vl,[T(o,{content:"复制配置将生成当前设置的代码,覆盖 src/settings.ts 下的 defaultSettings 变量",placement:"top"},{default:A(()=>[T(W,{type:"primary",size:"default",icon:V(r),loading:V(v),class:"action-btn",onClick:B},{default:A(()=>[K(z(V(v)?"复制中...":V(l)("settings.copyConfig")),1)]),_:1},8,["icon","loading"])]),_:1}),T(o,{content:"重置将恢复所有设置为默认值",placement:"top"},{default:A(()=>[T(W,{type:"warning",size:"default",icon:V(d),loading:V(m),class:"action-btn",onClick:E},{default:A(()=>[K(z(V(m)?"重置中...":V(l)("settings.resetConfig")),1)]),_:1},8,["icon","loading"])]),_:1})])])])]),_:1},8,["modelValue","size","title"])}}}),[["__scopeId","data-v-091eed56"]]),Il={class:"layout-wrapper"},Tl=Qe(x({__name:"index",setup(e){const{currentLayout:t}=at(),l=b(()=>{switch(t.value){case i.TOP:return La;case i.MIX:return za;case i.LEFT:default:return wa}}),s=b(()=>a.showSettings);return(e,t)=>(C(),L("div",Il,[(C(),U(ie(l.value))),s.value?(C(),U(Ml,{key:0})):M("",!0)]))}}),[["__scopeId","data-v-a99e0cb5"]]);export{Tl as default};
|