PageSourceSearch

https://www.ftu.org.hk/_nuxt/BpXl7Utn.js

js ftu.org.hk collected 2026-10-02 17:34:57 UTC 5,489 bytes, 1 lines download raw bytes

1import{d as N,h as P,ac as j,i as E,az as w,k as U,aN as B,ao as I,aO as _,aP as k,aQ as D,aR as L,aS as V,c as p,aD as O,aE as F,aI as H,ag as z,aT as W,aU as M,aV as Q,aW as $,aX as G}from"./rNMPrltl.js";const X=(...a)=>a.find(c=>c!==void 0);function J(a){const c=a.componentName||"NuxtLink";function g(e){return typeof e=="string"&&e.startsWith("#")}function C(e,i,v){const l=v!=null?v:a.trailingSlash;if(!e||l!=="append"&&l!=="remove")return e;if(typeof e=="string")return q(e,l);const s="path"in e&&e.path!==void 0?e.path:i(e).path;return{...e,name:void 0,path:q(s,l)}}function A(e){var S,R,x;const i=P(),v=H(),l=p(()=>!!e.target&&e.target!=="_self"),s=p(()=>{const t=e.to||e.href||"";return typeof t=="string"&&O(t,{acceptRelative:!0})}),b=k("RouterLink"),h=b&&typeof b!="string"?b.useLink:void 0,d=p(()=>{if(e.external)return!0;const t=e.to||e.href||"";return typeof t=="object"?!1:t===""||s.value}),o=p(()=>{const t=e.to||e.href||"";return d.value?t:C(t,i.resolve,e.trailingSlash)}),f=d.value||h==null?void 0:h({...e,to:o}),y=p(()=>{var u,r,n;const t=(u=e.trailingSlash)!=null?u:a.trailingSlash;if(!o.value||s.value||g(o.value))return o.value;if(d.value){const m=typeof o.value=="object"&&"path"in o.value?L(o.value):o.value,T=typeof m=="object"?i.resolve(m).href:m;return q(T,t)}return typeof o.value=="object"?(n=(r=i.resolve(o.value))==null?void 0:r.href)!=null?n:null:q(F(v.app.baseURL,o.value),t)});return{to:o,hasTarget:l,isAbsoluteUrl:s,isExternal:d,href:y,isActive:(S=f==null?void 0:f.isActive)!=null?S:p(()=>o.value===i.currentRoute.value.path),isExactActive:(R=f==null?void 0:f.isExactActive)!=null?R:p(()=>o.value===i.currentRoute.value.path),route:(x=f==null?void 0:f.route)!=null?x:p(()=>i.resolve(o.value)),async navigate(t){await z(y.value,{replace:e.replace,external:d.value||l.value})}}}return N({name:c,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},prefetchOn:{type:[String,Object],default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1},trailingSlash:{type:String,default:void 0,required:!1}},useLink:A,setup(e,{slots:i}){const v=P(),{to:l,href:s,navigate:b,isExternal:h,hasTarget:d,isAbsoluteUrl:o}=A(e),f=j(!1),y=E(null),S=t=>{var u;y.value=e.custom?(u=t==null?void 0:t.$el)==null?void 0:u.nextElementSibling:t==null?void 0:t.$el};function R(t){var u,r,n,m;return!f.value&&(typeof e.prefetchOn=="string"?e.prefetchOn===t:(n=(u=e.prefetchOn)==null?void 0:u[t])!=null?n:(r=a.prefetchOn)==null?void 0:r[t])&&((m=e.prefetch)!=null?m:a.prefetch)!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!Z()}async function x(t=w()){if(f.value)return;f.value=!0;const u=typeof l.value=="string"?l.value:h.value?L(l.value):v.resolve(l.value).fullPath,r=h.value?new URL(u,window.location.href).href:u;await Promise.all([t.hooks.callHook("link:prefetch",r).catch(()=>{}),!h.value&&!d.value&&V(l.value,v).catch(()=>{})])}if(R("visibility")){const t=w();let u,r=null;U(()=>{const n=K();B(()=>{u=Q(()=>{var m;(m=y==null?void 0:y.value)!=null&&m.tagName&&(r=n.observe(y.value,async()=>{r==null||r(),r=null,await x(t)}))})})}),I(()=>{u&&$(u),r==null||r(),r=null})}return()=>{var r;if(!h.value&&!d.value&&!g(l.value)){const n={ref:S,to:l.value,activeClass:e.activeClass||a.activeClass,exactActiveClass:e.exactActiveClass||a.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};
1return e.custom||(R("interaction")&&(n.onPointerenter=x.bind(null,void 0),n.onFocus=x.bind(null,void 0)),f.value&&(n.class=e.prefetchedClass||a.prefetchedClass),n.rel=e.rel||void 0),_(k("RouterLink"),n,i.default)}const t=e.target||null,u=X(e.noRel?"":e.rel,a.externalRelAttribute,o.value||d.value?"noopener noreferrer":"")||null;return e.custom?i.default?i.default({href:s.value,navigate:b,prefetch:x,get route(){if(!s.value)return;const n=new URL(s.value,window.location.href);return{path:n.pathname,fullPath:n.pathname,get query(){return D(n.search)},hash:n.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:s.value}},rel:u,target:t,isExternal:h.value||d.value,isActive:!1,isExactActive:!1}):null:_("a",{ref:y,href:s.value||null,rel:u,target:t,onClick:n=>{if(!(h.value||d.value))return n.preventDefault(),e.replace?v.replace(s.value):v.push(s.value)}},(r=i.default)==null?void 0:r.call(i))}}})}const te=J(G);function q(a,c){const g=c==="append"?W:M;return O(a)&&!a.startsWith("http")?a:g(a,!0)}function K(){const a=w();if(a._observer)return a._observer;let c=null;const g=new Map,C=(e,i)=>(c||(c=new IntersectionObserver(v=>{for(const l of v){const s=g.get(l.target);(l.isIntersecting||l.intersectionRatio>0)&&s&&s()}})),g.set(e,i),c.observe(e),()=>{g.delete(e),c==null||c.unobserve(e),g.size===0&&(c==null||c.disconnect(),c=null)});return a._observer={observe:C}}const Y=/2g/;function Z(){const a=navigator.connection;return!!(a&&(a.saveData||Y.test(a.effectiveType)))}export{te 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.