import{bk as E,bu as v,bv as L,bw as k,b3 as _,a7 as I}from"./app.CJSeGQJw.js";const P=()=>{const{myshopifyDomain:e}=E(),{checkoutSessionIdentifier:r}=v(),o=L(),{services:{shopServer:i}}=k();return{exchangeSessionTokenForCookie:_(async({token:h,origin:l,analytics_trace_id:t,in_checkout_profile_preview:u})=>{const n=new URLSearchParams({token:h,origin:l,shopify_domain:e});r&&n.set("checkout_token",r),t&&n.set("analytics_trace_id",t),u&&n.set("in_checkout_profile_preview",u);const d=new URL(o.shopPaySession(),i.url);d.search=n.toString(),await fetch(d.href,{method:"POST",keepalive:!0})},[r,e,o,i.url])}},S="shopify_pay",m=":";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||{}),M=(e=>(e.AllowNoInitialEmail="allowNoInitialEmail",e.Create="create",e.Hidden="hidden",e.OriginChanged="originChanged",e.Ready="ready",e.CheckoutQueueToken="checkoutQueueToken",e))(M||{}),T=(e=>(e.ShopifyPayUserNotFound="shopify_pay_user_not_found",e))(T||{}),x=(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))(x||{});function N(e,r={delimiter:m,messageKey:S}){return[r.messageKey,r.delimiter,JSON.stringify(e)].join("")}function O(e){return N(e)}function U(e,r){e&&e.contentWindow?.postMessage(O(r),"*")}function z({targetId:e,onLoaded:r,onClosed:o,onHidden:i,onError:g,onLoggedIn:h,onReady:l,onResized:t,onRedirectUserWithEmailOnly:u,onShareCaptchaToken:n,onEmailChange:d}){const p=_(s=>{switch(s.action){case a.Closed:return o?.();case a.Hidden:return i?.();case a.Error:return g?.(s.message,s.apiError,s.email);case a.Loaded:return r?.();case a.LoggedIn:return h?.(s.token,s.in_checkout_profile_preview,s.shop_pay_access_token);case a.Ready:return l?.(s.phoneNumber);case a.Resized:return t?.(parseInt(s.height,10));case a.RedirectWithEmailOnly:return u?.(s.email);case a.ShareCaptchaToken:return n?.(s.token);case a.EmailChanged:return d?.(s.email,s.isUserFound)}},[o,i,g,r,h,l,t,u,n,d]),f=k().services.payShopifyCom.url;I(()=>{const s=({data:c,origin:b})=>{if(b!==f||!c||typeof c!="string"||!c.includes(m))return;const[w,...C]=c.split(m);if(w===S)try{const y=JSON.parse(C.join(m));(e&&y.targetId===e||!e)&&p(y)}catch{}};return window.addEventListener("message",s),()=>{window.removeEventListener("message",s)}},[p,f,e])}export{x as A,T as M,M as S,z as a,U as p,P as u};