1let R=-1;const m=t=>{addEventListener("pageshow",e=>{e.persisted&&(R=e.timeStamp,t(e))},!0)},d=(t,e,i,n)=>{let r,s;return a=>{e.value>=0&&(a||n)&&(s=e.value-(r??0),(s||r===void 0)&&(r=e.value,e.delta=s,e.rating=((o,c)=>o>c[1]?"poor":o>c[0]?"needs-improvement":"good")(e.value,i),t(e)))}},E=t=>{requestAnimationFrame(()=>requestAnimationFrame(t))},P=()=>{const t=performance.getEntriesByType("navigation")[0];if(t&&t.responseStart>0&&t.responseStart<performance.now())return t},f=()=>P()?.activationStart??0,u=(t,e=-1)=>{const i=P();let n="navigate";return R>=0?n="back-forward-cache":i&&(document.prerendering||f()>0?n="prerender":document.wasDiscarded?n="restore":i.type&&(n=i.type.replace(/_/g,"-"))),{name:t,value:e,rating:"good",delta:0,entries:[],id:`v5-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:n}},A=new WeakMap;function w(t,e){let i=A.get(e);return i||(i=new WeakMap,A.set(e,i)),i.get(t)||i.set(t,new e),i.get(t)}class _{t;i=0;o=[];h(e){if(e.hadRecentInput)return;const i=this.o[0],n=this.o.at(-1);this.i&&i&&n&&e.startTime-n.startTime<1e3&&e.startTime-i.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}}const v=(t,e,i={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(t)){const n=new PerformanceObserver(r=>{queueMicrotask(()=>{e(r.getEntries())})});return n.observe({type:t,buffered:!0,...i}),n}}catch{}},I=t=>{let e=!1;return()=>{e||(t(),e=!0)}};let p=-1;const O=new Set,M=()=>document.visibilityState!=="hidden"||document.prerendering?1/0:0,L=t=>{if(document.visibilityState==="hidden"){if(t.type==="visibilitychange")for(const e of O)e();isFinite(p)||(p=t.type==="visibilitychange"?t.timeStamp:0,removeEventListener("prerenderingchange",L,!0))}},T=()=>{if(p<0){const t=f();p=(document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").find(i=>i.name==="hidden"&&i.startTime>=t)?.startTime)??M(),addEventListener("visibilitychange",L,!0),addEventListener("prerenderingchange",L,!0),m(()=>{setTimeout(()=>{p=M()})})}return{get firstHiddenTime(){return p},onHidden(t){O.add(t)}}},y=t=>{document.prerendering?addEventListener("prerenderingchange",t,!0):t()},k=[1800,3e3],$=(t,e={})=>{y(()=>{const i=T();let n,r=u("FCP");const s=v("paint",a=>{for(const o of a)o.name==="first-contentful-paint"&&(s.disconnect(),o.startTime<i.firstHiddenTime&&(r.value=Math.max(o.startTime-f(),0),r.entries.push(o),n(!0)))});s&&(n=d(t,r,k,e.reportAllChanges),m(a=>{r=u("FCP"),n=d(t,r,k,e.reportAllChanges),E(()=>{r.value=performance.now()-a.timeStamp,n(!0)})}))})},F=[.1,.25],K=(t,e={})=>{const i=T();$(I(()=>{let n,r=u("CLS",0);const s=w(e,_),a=c=>{for(const l of c)s.h(l);s.i>r.value&&(r.value=s.i,r.entries=s.o,n())},o=v("layout-shift",a);o&&(n=d(t,r,F,e.reportAllChanges),i.onHidden(()=>{a(o.takeRecords()),n(!0)}),m(()=>{s.i=0,r=u("CLS",0),n=d(t,r,F,e.reportAllChanges),E(n)}),setTimeout(n))}))};let W=0,C=1/0,g=0;const j=t=>{for(const e of t)e.interactionId&&(C=Math.min(C,e.interactionId),g=Math.max(g,e.interactionId),W=g?(g-C)/7+1:0)};let b;const B=()=>b?W:performance.interactionCount??0,z=()=>{"interactionCount"in performance||b||(b=v("event",j,{durationThreshold:0}))};let H=0;class G{l=[];u=new Map;m;p;v(){H=B(),this.l.length=0,this.u.clear()}T(){const e=Math.min(this.l.length-1,Math.floor((B()-H)/50));return this.l[e]}h(e){if(this.m?.(e),!e.interactionId&&e.entryType!=="first-input")return;const i=this.l.at(-1);let n=this.u.get(e.interactionId);if(n||this.l.length<10||e.duration>i.L){if(n?e.duration>n.L?(n.entries=[e],n.L=e.duration):e.duration===n.L&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],L:e.duration},this.u.set(n.id,n),this.l.push(n)),this.l.sort((r,s)=>s.L-r.L),this.l.length>10){const r=this.l.splice(10);for(const s of r)this.u.delete(s.id)}this.p?.(n)}}}const D=t=>{const e=globalThis.requestIdleCallback||setTimeout,i=globalThis.cancelIdleCallback||clearTimeout;if(document.visibilityState==="hidden")t();else{const n=I(t);let r=-1;const s=()=>{i(r),n()};addEventListener("visibilitychange",s,{once:!0,capture:!0}),r=e(()=>{removeEventListener("visibilitychange",s,{capture:!0}),n()})}},x=[200,500],Q=(t,e={})=>
1{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;const i=T();y(()=>{z();let n,r=u("INP");const s=w(e,G),a=c=>{D(()=>{for(const h of c)s.h(h);const l=s.T();l&&l.L!==r.value&&(r.value=l.L,r.entries=l.entries,n())})},o=v("event",a,{durationThreshold:e.durationThreshold??40});n=d(t,r,x,e.reportAllChanges),o&&(o.observe({type:"first-input",buffered:!0}),i.onHidden(()=>{a(o.takeRecords()),n(!0)}),m(()=>{s.v(),r=u("INP"),n=d(t,r,x,e.reportAllChanges)}))})};class J{m;h(e){this.m?.(e)}}const q=[2500,4e3],U=(t,e={})=>{y(()=>{const i=T();let n,r=u("LCP");const s=w(e,J),a=c=>{e.reportAllChanges||(c=c.slice(-1));for(const l of c)s.h(l),l.startTime<i.firstHiddenTime&&(r.value=Math.max(l.startTime-f(),0),r.entries=[l],n())},o=v("largest-contentful-paint",a);if(o){n=d(t,r,q,e.reportAllChanges);const c=I(()=>{a(o.takeRecords()),o.disconnect(),n(!0)}),l=h=>{h.isTrusted&&(D(c),removeEventListener(h.type,l,{capture:!0}))};for(const h of["keydown","click","visibilitychange"])addEventListener(h,l,{capture:!0});m(h=>{r=u("LCP"),n=d(t,r,q,e.reportAllChanges),E(()=>{r.value=performance.now()-h.timeStamp,n(!0)})})}})},N=[800,1800],S=t=>{document.prerendering?y(()=>S(t)):document.readyState!=="complete"?addEventListener("load",()=>S(t),!0):setTimeout(t)},V=(t,e={})=>{let i=u("TTFB"),n=d(t,i,N,e.reportAllChanges);S(()=>{const r=P();r&&(i.value=Math.max(r.responseStart-f(),0),i.entries=[r],n(!0),m(()=>{i=u("TTFB",0),n=d(t,i,N,e.reportAllChanges),n(!0)}))})};export{F as CLSThresholds,k as FCPThresholds,x as INPThresholds,q as LCPThresholds,N as TTFBThresholds,K as onCLS,$ as onFCP,Q as onINP,U as onLCP,V as onTTFB};
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.