1 |
- import{h as C,u as I,e as d,S as x,_ as B}from"./index.59c4c6ab.js";import{d as E,aC as P,aG as D,aD as w,Z as M,r as O,G as S,k as l,E as U,n as f,j as G,Y as j,w as H,ai as Q,o as c,c as W,U as i,O as v,W as _,M as V,a as Y,P as R,V as y,Q as Z,aH as b,R as q,u as z,aA as F}from"./vue.86c1cb21.js";import"./elementPlus.8e650391.js";const J={class:"layout-parent"},X={class:"flex flex-1"},re=E({__name:"parent",setup($){const K=F(()=>B(()=>import("./iframes.5288ca61.js"),["assets/iframes.5288ca61.js","assets/vue.86c1cb21.js"])),t=P(),g=D(),A=C(),k=I(),{keepAliveNames:o,cachedViews:h}=w(A),{themeConfig:n}=w(k),e=M({refreshRouterViewKey:"",iframeRefreshKey:"",keepAliveNameList:[],iframeList:[]}),u=O(!0);S("refreshView",function(){u.value=!1,f(()=>{u.value=!0})});const m=l(()=>n.value.animation),N=l(()=>n.value.isTagsview?h.value:e.keepAliveNameList),p=l(()=>t.meta.isIframe),L=async()=>{g.getRoutes().forEach(s=>{s.meta.isIframe&&(s.meta.isIframeOpen=!1,s.meta.loading=!0,e.iframeList.push({...s}))})};return U(()=>{e.keepAliveNameList=o.value,d.on("onTagsViewRefreshRouterView",s=>{e.keepAliveNameList=o.value.filter(a=>t.name!==a),e.refreshRouterViewKey="",e.iframeRefreshKey="",f(()=>{e.refreshRouterViewKey=s,e.iframeRefreshKey=s,e.keepAliveNameList=o.value})})}),G(()=>{L(),f(()=>{setTimeout(()=>{if(n.value.isCacheTagsView){let s=x.get("tagsViewList")||[];h.value=s.filter(a=>{var r;return(r=a.meta)==null?void 0:r.isKeepAlive}).map(a=>a.name)}},0)})}),j(()=>{d.off("onTagsViewRefreshRouterView",()=>{})}),H(()=>t.fullPath,()=>{e.refreshRouterViewKey=decodeURI(t.fullPath)},{immediate:!0}),(s,a)=>{const r=Q("router-view");return c(),W("div",J,[i(r,null,{default:v(({Component:T})=>[i(_,{name:m.value,mode:"out-in"},{default:v(()=>[u.value?(c(),V(b,{key:0,include:N.value},[Y("div",X,[R((c(),V(Z(T),{key:e.refreshRouterViewKey,class:"w100"})),[[y,!p.value]])])],1032,["include"])):q("",!0)]),_:2},1032,["name"])]),_:1}),i(_,{name:m.value,mode:"out-in"},{default:v(()=>[R(i(z(K),{class:"w100",refreshKey:e.iframeRefreshKey,name:m.value,list:e.iframeList},null,8,["refreshKey","name","list"]),[[y,p.value]])]),_:1},8,["name"])])}}});export{re as default};
|