1import{u as T,l,z as N,s as B,i as w,A as E,o as L,C as O,Q as M,ar as z,b as V,V as q}from"./ju0uOljr.js";import{b1 as F,k as Q,b2 as U,e as S,b3 as R,b4 as j,b5 as W,b6 as D,b7 as G,b8 as J}from"./CTAHJo8r.js";const P=(o="RouteProvider")=>T({name:o,props:{route:{type:Object,required:!0},vnode:Object,vnodeRef:Object,renderKey:String,trackRootNodes:Boolean},setup(n){const a=n.renderKey,i=n.route,e={};for(const r in n.route)Object.defineProperty(e,r,{get:()=>a===n.renderKey?n.route[r]:i[r],enumerable:!0});return N(F,B(e)),()=>n.vnode?l(n.vnode,{ref:n.vnodeRef}):n.vnode}}),X=P(),A=new WeakMap,ne=T({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(o,{attrs:n,slots:a,expose:i}){const e=Q(),r=V(),u=w(F,null);let h;i({pageRef:r});const f=w(U,null);let s;const m=e.deferHydration();let p=!1,C=0;if(e.isHydrating){const t=e.hooks.hookOnce("app:error",m);S().beforeEach(t)}o.pageKey&&E(()=>o.pageKey,(t,b)=>{t!==b&&e.callHook("page:loading:start")});let d=!1;{const t=S().beforeResolve(()=>{d=!1});L(()=>{t(),m()})}return()=>l(z,{name:o.name,route:o.route,...n},{default:t=>{const b=Y(u,t.route,t.Component),K=u&&u.matched.length===t.route.matched.length;if(!t.Component){if(s&&!K)return s;m();return}if(s&&f&&!f.isCurrent(t.route))return s;if(b&&u&&(!f||f?.isCurrent(u)))return K||s?s:null;const c=R(t,o.pageKey),_=Z(u,t.route,t.Component);!e.isHydrating&&h===c&&!_&&O(()=>{d||(d=!0,e.callHook("page:loading:end"))}),p&&h!==c&&C++,h=c;const g=!!(o.transition??t.route.meta.pageTransition??j),I=g&&W([o.transition,t.route.meta.pageTransition,j,{onAfterLeave(){e["~transitionFinish"]?.(),delete e["~transitionFinish"],delete e["~transitionPromise"],e.callHook("page:transition:finish",t.Component)}}]),x=o.keepalive??t.route.meta.keepalive??D;return s=G(g&&I,J(x,l(M,{key:C,suspensible:!0,onPending:()=>{p=!0,g&&!e["~transitionPromise"]&&(e["~transitionPromise"]=new Promise(y=>{e["~transitionFinish"]=y})),e.callHook("page:start",t.Component)}
1,onResolve:async()=>{p=!1;try{await O(),e._route.sync?.(),await e.callHook("page:finish",t.Component),!d&&!_&&(d=!0,await e.callHook("page:loading:end"))}finally{m()}}},{default:()=>{const y={key:c||void 0,vnode:a.default?$(a.default,t):t.Component,route:t.route,renderKey:c||void 0,trackRootNodes:g,vnodeRef:r};if(!x)return l(X,y);const k=t.Component.type,H=k;let v=A.get(H);return v||(v=P(k.name||k.__name),A.set(H,v)),l(v,y)}}))).default(),s}})}});function Y(o,n,a){if(!o)return!1;const i=n.matched.findIndex(e=>e.components?.default===a?.type);return!i||i===-1?!1:n.matched.slice(0,i).some((e,r)=>e.components?.default!==o.matched[r]?.components?.default)||a&&R({route:n,Component:a})!==R({route:o,Component:a})}function Z(o,n,a){return o?n.matched.findIndex(e=>e.components?.default===a?.type)<n.matched.length-1:!1}function $(o,n){const a=o(n);return a.length===1?l(a[0]):l(q,void 0,a)}export{ne 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.