(()=>{"use strict";var t=function(){var t=self.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0];if(t&&t.responseStart>0&&t.responseStart=0?o="back-forward-cache":a&&(document.prerendering||n()>0?o="prerender":document.wasDiscarded?o="restore":a.type&&(o=a.type.replace(/_/g,"-"))),{name:r,value:void 0===i?-1:i,rating:"good",delta:0,entries:[],id:"v4-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:o}},i=function(t,e,n,r){var i,a;return function(o){e.value>=0&&(o||r)&&((a=e.value-(i||0))||void 0===i)&&(i=e.value,e.delta=a,e.rating=function(t,e){return t>e[1]?"poor":t>e[0]?"needs-improvement":"good"}(e.value,n),t(e))}},a=[],o=new Map,s=function(t){var e=self.requestIdleCallback||self.setTimeout,n=-1;return t=function(t){var e=!1;return function(){e||(t(),e=!0)}}(t),"hidden"===document.visibilityState?t():(n=e(t),function(t){document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&t()}))}(t)),n},c=[],u=[],d=0,f=new WeakMap,l=new Map,p=-1,m=function(){l.size>10&&l.forEach((function(t,e){o.has(e)||l.delete(e)}));var t=a.map((function(t){return f.get(t.entries[0])})),e=u.length-50;u=u.filter((function(n,r){return r>=e||t.includes(n)}));for(var n=new Set,r=0;rd&&e>s||n.has(t)})),p=-1};[].push((function(t){t.interactionId&&t.target&&!l.has(t.interactionId)&&l.set(t.interactionId,t.target)}),(function(t){var e,n=t.startTime+t.duration;d=Math.max(d,t.processingEnd);for(var r=u.length-1;r>=0;r--){var i=u[r];if(Math.abs(n-i.renderTime)<=8){(e=i).startTime=Math.min(t.startTime,e.startTime),e.processingStart=Math.min(t.processingStart,e.processingStart),e.processingEnd=Math.max(t.processingEnd,e.processingEnd),e.entries.push(t);break}}e||(e={startTime:t.startTime,processingStart:t.processingStart,processingEnd:t.processingEnd,renderTime:n,entries:[t]},u.push(e)),(t.interactionId||"first-input"===t.entryType)&&f.set(t,e),p<0&&(p=s(m))}));var h=function(t,e){for(var n,r=[],i=0;n=c[i];i++)if(!(n.startTime+n.duratione)break;r.push(n)}return r},v=[800,1800],g=function t(e){document.prerendering?function(t){document.prerendering?addEventListener("prerenderingchange",(function(){return t()}),!0):t()}((function(){return t(e)})):"complete"!==document.readyState?addEventListener("load",(function(){return t(e)}),!0):setTimeout(e,0)},T=function(a,o){o=o||{};var s=r("TTFB"),c=i(a,s,v,o.reportAllChanges);g((function(){var u=t();u&&(s.value=Math.max(u.responseStart-n(),0),s.entries=[u],c(!0),function(t){addEventListener("pageshow",(function(n){n.persisted&&(e=n.timeStamp,t(n))}),!0)}((function(){s=r("TTFB",0),(c=i(a,s,v,o.reportAllChanges))(!0)})))}))};new Date;class w{constructor(t){this.endpoint=t}sendMetrics(t){if(t)try{const e=JSON.stringify(t);if(navigator.sendBeacon){const t=new Blob([e],{type:"application/json"});navigator.sendBeacon(this.endpoint,t)||console.warn("Failed to send metrics via beacon")}else fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:e,keepalive:!0}).catch((()=>{console.warn("Failed to send metrics via fetch")}))}catch(t){console.warn("Failed to send metrics:",t)}}}class D{getPerformanceMetrics(){const t={};try{window.performance&&(t.timeOrigin=performance.timeOrigin)}catch(t){console.warn("Failed to collect performance metrics:",t)}return t}}class S{metrics={};constructor(t){this.requestData=t,this.analyticsService=new w(this.requestData.endpoint),this.performanceService=new D}parseTTFB(t){if(t)return{value:t.value,rating:t.rating,attribution:{cacheDuration:t.attribution.cacheDuration,connectionDuration:t.attribution.connectionDuration,dnsDuration:t.attribution.dnsDuration,requestDuration:t.attribution.requestDuration,waitingDuration:t.attribution.waitingDuration},navigationType:t.navigationType}}handleTTFBMetric(t){t&&"TTFB"===t.name&&(this.metrics.ttfb=this.parseTTFB(t),this.sendTTFB())}getAnalyticsData(){return this.metrics.performance=this.performanceService.getPerformanceMetrics(),{metrics:this.metrics,timestamp:Date.now(),url:window.location.href,traceparent:this.requestData.traceparent,version:this.requestData.version}}sendTTFB(){const t=this.getAnalyticsData();t?.metrics?.ttfb&&this.analyticsService.sendMetrics(t)}}const y=(new class{scriptSelector="script.elementor-browser-metrics[data-request-info]";requestInfoAttribute="data-request-info";getRequestData(){try{const t=document.querySelector(this.scriptSelector);if(!t)return null;const e=t.getAttribute(this.requestInfoAttribute);return e?JSON.parse(e):null}catch(t){return console.warn("Failed to parse request data:",t),null}}}).getRequestData();if(y){const t=new S(y);b=t.handleTTFBMetric.bind(t),T((function(t){var e=function(t){var e={waitingDuration:0,cacheDuration:0,dnsDuration:0,connectionDuration:0,requestDuration:0};if(t.entries.length){var n=t.entries[0],r=n.activationStart||0,i=Math.max((n.workerStart||n.fetchStart)-r,0),a=Math.max(n.domainLookupStart-r,0),o=Math.max(n.connectStart-r,0),s=Math.max(n.connectEnd-r,0);e={waitingDuration:i,cacheDuration:a-i,dnsDuration:o-a,connectionDuration:s-o,requestDuration:t.value-s,navigationEntry:n}}return Object.assign(t,{attribution:e})}(t);b(e)}),void 0)}else console.warn("Request data not found");var b})();