import{aR as S,aS as x,aT as b,aU as p,q as g,aV as v,ak as L}from"./app.owqgWGYv.js";const P=()=>{const{myshopifyDomain:e}=S(),{checkoutSessionIdentifier:r}=x(),n=b(),{services:{shopServer:t}}=p();return{exchangeSessionTokenForCookie:g(async({token:d,origin:h,analytics_trace_id:i})=>{const o=new URLSearchParams({token:d,origin:h,shopify_domain:e});r&&o.set("checkout_token",r),i&&o.set("analytics_trace_id",i);const u=new URL(n.shopPaySession(),t.url);return u.search=o.toString(),fetch(u.href,{method:"POST",keepalive:!0})},[r,e,n,t.url])}},B=()=>{const e=S(),r=parseInt(v(e.id),10),{services:{shopServer:n}}=p();return{extendBuyerIdentity:g(async()=>{await fetch(new URL(`/checkout/${r}/shopify_pay/extend_buyer_identity`,n.url),{method:"GET",keepalive:!0})},[r,n.url])}},E="shopify_pay",c=":";var a=(e=>(e.Closed="closed",e.EmailChanged="emailChanged",e.Error="error",e.Hidden="hidden",e.Loaded="loaded",e.LoggedIn="loggedIn",e.Ready="ready",e.RedirectWithEmailOnly="redirectWithEmailOnly",e.Resized="resized",e.ShareCaptchaToken="shareCaptchaToken",e))(a||{}),T=(e=>(e.AllowNoInitialEmail="allowNoInitialEmail",e.Create="create",e.Hidden="hidden",e.OriginChanged="originChanged",e.Ready="ready",e.CheckoutQueueToken="checkoutQueueToken",e))(T||{}),M=(e=>(e.ShopifyPayUserNotFound="shopify_pay_user_not_found",e))(M||{}),N=(e=>(e.FraudGuard="fraud_guard",e.InvalidEmail="invalid_email",e.InvalidPhone="invalid_phone",e.LimitExceeded="limit_exceeded",e.PhoneBlocked="phone_blocked",e.RecordNotFound="record_not_found",e))(N||{});function O(e,r={delimiter:c,messageKey:E}){return[r.messageKey,r.delimiter,JSON.stringify(e)].join("")}function U(e){return O(e)}function z(e,r){e&&e.contentWindow?.postMessage(U(r),"*")}function G({targetId:e,onLoaded:r,onClosed:n,onHidden:t,onError:y,onLoggedIn:d,onReady:h,onResized:i,onRedirectUserWithEmailOnly:o,onShareCaptchaToken:u,onEmailChange:f}){const k=g(s=>{switch(s.action){case a.Closed:return n?.();case a.Hidden:return t?.();case a.Error:return y?.(s.message,s.apiError,s.email);case a.Loaded:return r?.();case a.LoggedIn:return d?.(s.token,s.shop_pay_access_token);case a.Ready:return h?.(s.phoneNumber);case a.Resized:return i?.(parseInt(s.height,10));case a.RedirectWithEmailOnly:return o?.(s.email);case a.ShareCaptchaToken:return u?.(s.token);case a.EmailChanged:return f?.(s.email,s.isUserFound)}},[n,t,y,r,d,h,i,o,u,f]),_=p().services.payShopifyCom.url;L(()=>{const s=({data:l,origin:C})=>{if(C!==_||!l||typeof l!="string"||!l.includes(c))return;const[I,...w]=l.split(c);if(I===E)try{const m=JSON.parse(w.join(c));(e&&m.targetId===e||!e)&&k(m)}catch{}};return window.addEventListener("message",s),()=>{window.removeEventListener("message",s)}},[k,_,e])}export{N as A,M,T as S,B as a,G as b,z as p,P as u};