1import{d as c,l as k,h as R,x as P,a9 as g,b as N,a1 as x,X as j,aa as l,ab as S,ac as _,ad as d,u as h,a0 as y,ae as w,L as O,af as T,p as v,ag as A,ah as B}from"#entry";const E=c({name:"LayoutLoader",inheritAttrs:!1,props:{name:String,layoutProps:Object},setup(e,o){return()=>y(l[e.name],e.layoutProps,o.slots)}}),C={name:{type:[String,Boolean,Object],default:null},fallback:{type:[String,Object],default:null}},W=c({name:"NuxtLayout",inheritAttrs:!1,props:C,setup(e,o){const t=k(),n=R(d),u=!n||n===P()?g():n,a=N(()=>{let s=h(e.name)??u?.meta.layout??"default";return s&&!(s in l)&&e.fallback&&(s=h(e.fallback)),s}),i=x();o.expose({layoutRef:i});const r=t.deferHydration();if(t.isHydrating){const s=t.hooks.hookOnce("app:error",r);j().beforeEach(s)}let f;return()=>{const s=a.value&&a.value in l,p=u?.meta.layoutTransition??S,b=f;return f=a.value,_(s&&p,{default:()=>y(T,{suspensible:!0,onResolve:()=>{O(r)}},{default:()=>y(H,{layoutProps:w(o.attrs,{ref:i}),key:a.value||void 0,name:a.value,shouldProvide:!e.name,isRenderingNewLayout:m=>m!==b&&m===a.value,hasTransition:!!p},o.slots)})}).default()}}}),H=c({name:"NuxtLayoutProvider",inheritAttrs:!1,props:{name:{type:[String,Boolean]},layoutProps:{type:Object},hasTransition:{type:Boolean},shouldProvide:{type:Boolean},isRenderingNewLayout:{type:Function,required:!0}},setup(e,o){const t=e.name;e.shouldProvide&&v(B,{isCurrent:u=>t===(u.meta.layout??"default")});const n=R(d);if(n&&n===P()){const u=g(),a={};for(const i in u){const r=i;Object.defineProperty(a,r,{enumerable:!0,get:()=>e.isRenderingNewLayout(e.name)?u[r]:n[r]})}v(d,A(a))}return()=>!t||typeof t=="string"&&!(t in l)?o.slots.default?.():y(E,{key:t,layoutProps:e.layoutProps,name:t},o.slots)}});export{W as _};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.