import{t}from"./chunk.window_CAbVMZox.esm.js";import{r as e,t as s}from"./chunk.utils_DX-ZLLMT.esm.js";const n=["/shopifycloud/shop-js/","/shopifycloud/checkout-web/assets/c1/shop-js/","/shopifycloud/shop-js-tophat/","shop-js.shop.dev/"],o=/\/(?:client|loader)\.([a-z0-9-]+?)(?:_[A-Za-z0-9_-]+)?\.(?:[a-z]{2}(?:-[A-Z]{2})?\.)?esm\.js$/,i=/\/chunk\.[A-Za-z0-9-]+?(?:_[A-Za-z0-9_-]+)?\.(?:[a-z]{2}(?:-[A-Z]{2})?\.)?esm\.js$/;function a(t){return n.some((e=>t.includes(e)))}const r=new Set(["init-asset-metrics","sdk"]),c=["assetMetrics","asset-metrics","reportAssetMetrics","report-asset-metrics","collectAssetTimings","collect-asset-timings","aggregateAssetTimings","aggregate-asset-timings","opentelemetry","OpenTelemetry"];function u(t){if(!a(t))return null;const e=o.exec(t);if(e){const t=e[1];return r.has(t)?null:{kind:"feature",feature:t}}return i.test(t)?function(t){return t.includes("/translations/")}(t)?{kind:"translations"}:function(t){return c.some((e=>t.includes(e)))}(t)?null:{kind:"chunk"}:null}function d(t){const e=t;return void 0!==e.deliveryType?"cache"===e.deliveryType:0===t.transferSize&&t.decodedBodySize>0}function f(t,e){t.count+=1,t.cachedCount+=d(e)?1:0,t.timings.push(e)}function l(t){return Math.max(t.decodedBodySize,t.encodedBodySize,t.transferSize,Math.max(0,t.responseEnd-t.requestStart))}function h(t){const e=new Map,s={count:0,cachedCount:0,timings:[]},n={count:0,cachedCount:0,timings:[]};for(const o of t){const t=u(o.name);if(t)if("feature"===t.kind){let s=e.get(t.feature);s||(s={count:0,cachedCount:0,timings:[]},e.set(t.feature,s)),f(s,o)}else"chunk"===t.kind?f(s,o):f(n,o)}return s.timings=function(t){return t.length<=20?t:[...t].sort(((t,e)=>l(e)-l(t))).slice(0,20)}(s.timings),{features:e,chunks:s,translations:n}}let m=!1;function p(){if(m)return;const n=function(){const e=t.performance;return"function"!=typeof(null==e?void 0:e.getEntriesByType)?[]:e.getEntriesByType("resource").filter((t=>a(t.name)))}();if(0===n.length)return;const{features:o,chunks:i,translations:r}=h(n);if(0===o.size&&0===i.count&&0===r.count)return;const c=new e({exporter:s()});for(const[t,e]of o)_(c,e,{cohort:"feature",feature:t});i.count>0&&_(c,i,{cohort:"chunks"}),r.count>0&&_(c,r,{cohort:"translations"}),c.exportMetrics().catch((()=>{})),m=!0}function _(t,e,s){const n=Object.assign(Object.assign({},s),{buildCommit:"b8fddedea3f966faee6181c7df49a87ee41126ae"});t.counter({name:"shop_js_asset_javascript_count",value:e.count,attributes:n}),t.counter({name:"shop_js_asset_javascript_cached_count",value:e.cachedCount,attributes:n});for(const s of e.timings)g(t,s,n)}function g(t,e,s){const n=Object.assign(Object.assign({},s),{cached:d(e)?"true":"false"});t.histogram({name:"shop_js_asset_javascript_download_time",value:Math.max(0,e.responseEnd-e.requestStart),unit:"ms",attributes:n}),t.histogram({name:"shop_js_asset_javascript_size",value:e.encodedBodySize,unit:"bytes",attributes:n}),t.histogram({name:"shop_js_asset_javascript_size_uncompressed",value:e.decodedBodySize,unit:"bytes",attributes:n}),t.histogram({name:"shop_js_asset_javascript_download_size",value:e.transferSize,unit:"bytes",attributes:n})}export{p as reportAssetMetrics}; //# sourceMappingURL=chunk.reportAssetMetrics_9A2quMOf.esm.js.map