Breadcrumb-0be0e423.js 3.3 KB

1
  1. var D=Object.defineProperty,T=Object.defineProperties;var V=Object.getOwnPropertyDescriptors;var R=Object.getOwnPropertySymbols;var L=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable;var $=(e,n,r)=>n in e?D(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r,C=(e,n)=>{for(var r in n||(n={}))L.call(n,r)&&$(e,r,n[r]);if(R)for(var r of R(n))O.call(n,r)&&$(e,r,n[r]);return e},k=(e,n)=>T(e,V(n));var w=(e,n,r)=>new Promise((g,f)=>{var d=l=>{try{p(r.next(l))}catch(c){f(c)}},h=l=>{try{p(r.throw(l))}catch(c){f(c)}},p=l=>l.done?g(l.value):Promise.resolve(l.value).then(d,h);p((r=r.apply(e,n)).next())});import{d as j,I as q,fR as M,p as x,r as z,a0 as G,c as U,aw as F,a as H,a8 as J,b_ as K,a2 as Q,N as W,U as X,j as Y,o as _,m as P,g as Z,y as E,q as A,t as ee,w as N,v as te,s as ne,k as y}from"./index-610a1d46.js";import{g as ae}from"./index-698919b8.js";import"./index-985aa6f5.js";import"./useWindowSizeFn-1829b247.js";import"./index-c98ef572.js";import"./index-4ed0dc84.js";import"./index-85087fcd.js";import"./useContentViewHeight-20fe3432.js";import"./uniqBy-2b2a500d.js";import"./clickOutside-a1389e7b.js";import"./RedoOutlined-bc502432.js";const re=j({name:"LayoutBreadcrumb",components:{Icon:q,[M.name]:M},props:{theme:x.oneOf(["dark","light"])},setup(){const e=z([]),{currentRoute:n}=G(),{prefixCls:r}=U("layout-breadcrumb"),{getShowBreadCrumbIcon:g}=F(),f=H();J(()=>w(this,null,function*(){var v,B,I;if(n.value.name===Q)return;const o=yield ae(),a=n.value.matched,t=a==null?void 0:a[a.length-1];let s=n.value.path;t&&((v=t==null?void 0:t.meta)!=null&&v.currentActiveMenu)&&(s=t.meta.currentActiveMenu);const u=W(o,s),m=o.filter(S=>S.path===u[0]),i=d(m,u);if(!i||i.length===0)return;const b=h(i);(B=n.value.meta)!=null&&B.currentActiveMenu&&b.push(k(C({},n.value),{name:((I=n.value.meta)==null?void 0:I.title)||n.value.name})),e.value=b}));function d(o,a){const t=[];return o.forEach(s=>{var u,m;a.includes(s.path)&&t.push(k(C({},s),{name:((u=s.meta)==null?void 0:u.title)||s.name})),(m=s.children)!=null&&m.length&&t.push(...d(s.children,a))}),t}function h(o){return X(o,a=>{const{meta:t,name:s}=a;if(!t)return!!s;const{title:u,hideBreadcrumb:m,hideMenu:i}=t;return!(!u||m||i)}).filter(a=>{var t;return!((t=a.meta)!=null&&t.hideBreadcrumb)})}function p(o,a,t){t==null||t.preventDefault();const{children:s,redirect:u,meta:m}=o;if(s!=null&&s.length&&!u){t==null||t.stopPropagation();return}if(!(m!=null&&m.carryParam))if(u&&K(u))f(u);else{let i="";a.length===1?i=a[0]:i=`${a.slice(1).pop()||""}`,i=/^\//.test(i)?i:`/${i}`,f(i)}}function l(o,a){return o.indexOf(a)!==o.length-1}function c(o){var a;return o.icon||((a=o.meta)==null?void 0:a.icon)}return{routes:e,prefixCls:r,getIcon:c,getShowBreadCrumbIcon:g,handleClick:p,hasRedirect:l}}});const oe={key:1};function se(e,n,r,g,f,d){const h=y("Icon"),p=y("router-link"),l=y("a-breadcrumb");return _(),P("div",{class:ne([e.prefixCls,`${e.prefixCls}--${e.theme}`])},[Z(l,{routes:e.routes},{itemRender:E(({route:c,routes:o,paths:a})=>[e.getShowBreadCrumbIcon&&e.getIcon(c)?(_(),A(h,{key:0,icon:e.getIcon(c)},null,8,["icon"])):ee("",!0),e.hasRedirect(o,c)?(_(),A(p,{key:2,to:"",onClick:t=>e.handleClick(c,a,t)},{default:E(()=>[te(N(c.name||c.meta.title),1)]),_:2},1032,["onClick"])):(_(),P("span",oe,N(c.name||c.meta.title),1))]),_:1},8,["routes"])],2)}const ve=Y(re,[["render",se]]);export{ve as default};