PageSourceSearch

https://roofvents.com/cdn/shopifycloud/checkout-web/assets/c1/24fcbaf6.BYkGKKBc.js

js roofvents.com collected 2026-10-07 18:40:21 UTC 6,454 bytes, 1 lines download raw bytes

1import{bm as e,bn as t,bo as s,bp as n}from"./4b4bc88f.DJ4vpQqJ.js";import{u as a,S as o}from"./app.DKKjpp8o.js";import{b as r}from"./ca3e798e.ymm59RLp.js";import{j as i}from"./2c1ab0fe.DlNazk3M.js";import{e as c,s as p,a as d}from"./e77d135d.Dz0RetrO.js";import{i as l,a as h,c as u}from"./60a453ce.CV8OqWZ9.js";class m extends Error{constructor(){super(...arguments),this.name="ExtensionUsageError"}}class b extends Error{constructor(){super(...arguments),this.name="ExtensionSandboxTruncatedScriptError"}}function f(e,t){if(e.startsWith(t))return e;const s=new URL("/cdn/shopifycloud/checkout-web/assets/c1/",import.meta.url).pathname.replace(/(c1|shop-pay-external)\/$/,"");return e.replace(s,t)}function x({extension:e,appSandboxPermissions:s,observability:n}){const{capabilities:a,apiVersion:o,appId:r,type:i,extensionPoint:{target:c}}=e,p=Boolean(r)&&l(o)&&!function(e){const t=e.collectBuyerConsent;for(const s of Object.keys(t))switch(s){case"smsMarketing":case"customerPrivacy":if(t[s])return!0}return!1}(a)&&!h(c),d={isShared:!1,appId:r,extensionType:i,hasSharedNetworkAccess:!1,hasSharedApiAccess:!1,cacheKey:()=>""};if(!p)return d;const m="local"===i,b=m||s.app(r).has("networkAccess",{extensionType:i}),f=m||s.app(r).has("apiAccess",{extensionType:i}),x=u(e),y=x&&!b,w=a.apiAccess&&!f;return m||!y&&!w?{isShared:!0,appId:r,extensionType:i,hasSharedNetworkAccess:b,hasSharedApiAccess:f,cacheKey:()=>`appId=${t(r)??r}:remote-dom:${i}:net=${b}:api=${f}`}:(n.log("shared_sandbox_permissions_mismatch","Extension is ineligible for a shared sandbox because its permissions do not match the shared sandbox permissions",{appId:r,extensionType:i,target:c,hasSharedNetworkAccess:b,hasSharedApiAccess:f,extensionNetworkAccess:x,extensionApiAccess:a.apiAccess}),d)}const y="__run",w="__terminate";class k extends Error{constructor(e,t,s){super(e),this.name=t,this.stack=s}toString(){return`${this.name}: ${this.message}\n    ${this.stack}`}}function g(){}
1function S({extensionsPublicPath:o,isPostPurchase:d,observability:h,getPolyfills:u,appSandboxPermissions:m}){let y,S=!1;const E=new Set,$=function(t){const s=new Map;return function({url:n,sandboxType:a,name:o}){return[{type:"classic",name:o},(()=>{if(s.has(n)){const e=s.get(n);if(e)return e}const o=async function(n,a){let o="",r=0;const d=p[a];c.markStarted(d,{type:"sandbox-fetch"});try{const{response:s,text:p}=await i(async()=>{const s=r>0?{cache:"reload"}:{},i=await fetch(n,s);if(!i.ok)throw new e(`Failed to fetch sandbox asset: ${i.status}`);const c=await i.text();if(o=c,!c.slice(-256).includes("SANDBOX_EOF"))throw r++,t.observability&&t.observability.leaveErrorBreadcrumb("truncated_sandbox_fetch",{scriptUrl:n.href,sandboxType:a,httpStatus:i.status,contentLengthHeader:i.headers.get("content-length"),scriptBodyLength:c.length,scriptEnd:c.slice(-50)},"error"),new b("Sandbox script does not have expected end of file marker, likely truncated");return t.observability&&r>0&&t.observability.log("successful_retry_truncated_sandbox_fetch","Successful retry of truncated sandbox fetch",{scriptUrl:n.href,sandboxType:a,truncatedSandboxCounter:r}),{response:i,text:c}},{maxAttempts:2,initialRetryDelay:.5});return c.markFinished(d,{type:"sandbox-fetch",transferredBundleSize:Number(s.headers.get("content-length")),bundleSize:p.length}),p}catch(l){if(l instanceof b&&o.length>0)return o;throw l}finally{s.delete(n)}}(n,a);return s.set(n,o),o})()]}}({observability:h}),P=f("/cdn/shopifycloud/checkout-web/assets/c1/assets/load.D9UyAKTL.html",o);let _="";return(e=g,o,i)=>p=>{const b=new MessageChannel,f=new MessageChannel,{port1:g}=b,I=a();let L,T="checkout-2025-07";d?T="checkout-post-purchase":"2023-04"===i?.apiVersion?T="checkout-2023-04":i?.apiVersion&&l(i.apiVersion)&&(T="checkout"),L=i?function(e,s,n){const{appName:a,appId:o,extensionId:r,extensionPoint:{target:i}}=e,c=a||`app-id-${t(o)??"unknown"}`,p=x({extension:e,appSandboxPermissions:n.appSandboxPermissions,observability:n.observability});return p.isShared?`checkout-ui-sandbox-shared-${p.cacheKey()}-${s}`:`checkout-ui-sandbox-${c}-${i}-${r}-${s}`}(i,I,{appSandboxPermissions:m,observability:h}):`post-purchase-extension-${I}`;const[M,N]=$({url:p,sandboxType:T,name:L}),W={id:I,url:p.href,channel:b,errorChannel:f,allowNetworkAccess:Boolean(o.allowNetworkAccess),webWorkerOptions:M,sandboxScriptPromise:N,extension:i,sandboxType:T};if(null==y){const t=d?"post-purchase-iframe-load":"sandbox-iframe-load";E.add(W);const s=u?.();c.markStarted(t,{type:"iframe-loader",appId:i?.appId}),y=function({iframeUrl:e,onLoad:t}){const s=document.createElement("iframe");return s.setAttribute("style","display:none;"),s.addEventListener("load",function e(){t(),s.removeEventListener("load",e)}),s.src=e,s.setAttribute("allow","local-network-access"),s}({iframeUrl:P,async onLoad(){c.markFinished(t,{type:"iframe-loader",appId:i?.appId});try{s&&(_=await s)}catch(a){return S=!0,E.clear(),e(a instanceof n?a:new n("Failed to load sandbox polyfills",{cause:a}))}S=!0;for(const t of E)A(t,y,e,_);E.clear()}}),r(y)}else S?A(W,y,e,_):E.add(W);return f.port1.addEventListener("message",t=>{const s=t.data,n=new k(s.message,s.name,s.stack);e?.(n)}),{postMessage:(...t)=>{try{g.postMessage(...t)}catch(n){if(!v(n))throw n;e(new s(n.message??"Unknown postMessage error",{cause:n}))}},addEventListener:(...e)=>g.addEventListener(...e),removeEventListener:(...e)=>g.removeEventListener(...e),terminate:()=>{E.delete(W),y&&function({id:e,channel:t,errorChannel:s},n){t.port1.close(),s.port1.close(),n.contentWindow?.postMessage({[w]:e},"*")}(W,y)}}}}async function A({channel:e,errorChannel:t,id:n,url:a,allowNetworkAccess:o,sandboxScriptPromise:r,webWorkerOptions:i,extension:p,sandboxType:l},h,u,m=""){e.port1.start(),t.port1.start();const b=await r;if(!h.contentWindow)throw new E("iframe.contentWindow is not defined");const f=d[l];p&&f&&c.markStarted(f,{type:"extension",extension:p,instanceId:null});const x=m&&"string"==typeof b&&!b.startsWith("data:")?`${m};\n${b}`:b;try{h.contentWindow.postMessage({[y]:{id:n,url:a,allowNetworkAccess:o,sandboxScript:x,webWorkerOptions:i}},"*",[e.port2,t.port2])}catch(w){if(!v(w))throw w;u(new s(w.message??"Unknown postMessage error",{cause:w}))}}function v(e){return e instanceof DOMException&&"DataCloneError"===e.name&&/out of memory/i.test(e.message)}class E extends o{constructor(){super(...arguments),this.name="IframeContentWindowError",this.unactionable=!0}}export{m as E,x as a,S as c,f as r};

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.