https://vuurenrook.nl/cdn/shopifycloud/checkout-web/assets/c1/component-amazonWalletLazy.DbEj4HaJ.js
1import{e as ee,A as j,h as A,q as g,T as me,u as x,f as ae,U as Me,V as Le,k as ne,S as Te}from"./esnext-vendor.B9Da21W6.js";import{fc as ye,fd as pe,fe as Re,$ as N,ff as he,B as Fe,fg as Y,dP as fe,fh as re,f as O,fi as Pe,J as Ne,fj as ve,fk as Oe,fl as He,V as _e,fm as Q,bP as ge,dQ as Ue,fn as Ae,n as se,fo as K,bA as $e,fp as Ge,fq as Ve,eV as qe,eB as je,fr as oe,eD as Je,fs as ce,eF as de,ft as Ye,fu as Qe,fv as Ke,fw as Ze}from"./hydrate.DZ4YTm7p.js";import{S as f,a6 as u,ck as Xe,ae as W,a4 as L,T,fz as et,fA as tt,fB as at,fC as be,fD as nt,fE as Ee,fF as rt,fG as we,fH as st,H as ot,a_ as it,bc as G,fI as lt,bG as ut,fJ as ct,af as dt}from"./addresses-is-address-empty.Bn2lNY_L.js";import{S as $}from"./hooks-useStableHostMethodsReferences.DObnt9s8.js";import{u as xe,W as Be}from"./WalletsSandbox-WalletSandbox.Bnd2Qnah.js";import{S as ie}from"./app.DbSrjjlA.js";import{u as mt,a as le,f as yt}from"./negotiated-findSelectedDeliveryMethod.DuEyfwut.js";import{I as pt,a as X,B as ht}from"./amazon-constants.DrV5CHv2.js";import{u as ft,a as Pt}from"./checkout-as-guest-amazon-pay.BDkrfUVE.js";import{u as vt}from"./amazon-pay-useAmazonPayPaymentLine.Ju006AId.js";import"./graphql-PaymentSessionMutation.CAXCwUvV.js";import"./hooks-useShopPayExternalAppContext.DWwMuRnz.js";import"./hooks-useReplaceShopPayInHistory.DPpLejwu.js";function Ce({formContainer:e,url:a,requestPayload:t}){const n=document.createElement("form");n.action=a,n.method="POST",n.style.display="none";const s=JSON.parse(t);return Object.entries(s).forEach(([r,o])=>{const i=document.createElement("input");i.type="hidden",i.name=r,i.value=o,n.appendChild(i)}),e.appendChild(n),n}class S extends ie{constructor(){super(...arguments),this.name="AmazonPaySandboxError"}}const _t="J29Tp",gt={AmazonPayButton:_t};function At({isSdkOnly:e=!1}){const{i18n:a,observability:t}=f(),n=ee(null),{isScrimOpen:s,closePopupWindowsAndScrim:r}=ye({endpoint:n,invokingWallet:u.AmazonPay}),o=j(null),i=j(null),l=pe(),{value:d}=Xe(),m=d?.amount?.toFixed(2),P=d?.currencyCode,{inMemoryAmazonPayParts:{buttonStatus:c,sdkStatus:v}}=W();A(()=>()=>{!e&&c.value.status!=="error"&&(c.value={status:"not_rendered"})},[c,e]);const{value:y}=L().paymentMethods,_=y?.find(b=>b.type==="walletsPlatform"&&b.name===u.AmazonPay),{configurationParams:E}=_||{},w=g(({errorMessage:b})=>t.error(new S(b,{groupingHash:"AmazonPaySandboxError::reportError::SandboxError"})),[t]),k=g(async b=>{const p=Re(i.current)||0;n.value=b;const h={...E,...m&&P&&{estimatedOrderAmount:{amount:m,currencyCode:P}},style:{buttonBorderRadius:`${p}px`}};v.value={status:N.Loading};const C=await b.call.configure({configurationParams:h,onlySdk:e});C?.status===$.Success?(v.value=bt(n),e||(c.value={status:"rendered"},t.counter({name:"checkout_wallet_button_rendered",value:1,attributes:{wallet_name:u.AmazonPay,status:"success",isPaymentMethodFlow:!1}}))):(C?.status===$.Error&&w({errorMessage:C?.message}),v.value={status:N.Error},e||(c.value={status:"error"},t.counter({name:"checkout_wallet_button_rendered",value:1,attributes:{wallet_name:u.AmazonPay,status:"error",reason:C?.status===$.ScriptLoadError?"script_load_error":"sandbox_error",isPaymentMethodFlow:!1}})))},[m,c,E,P,n,e,w,v,t]),D=g(()=>{s.value=!1},[s]),B=g(({redirectUrl:b,requestPayload:p})=>{try{if(p){if(!o.current){t.error(new S("Form container not found",{groupingHash:"AmazonPaySandboxError::onSendCheckoutAction::FormContainerNotFound"}));return}Ce({formContainer:o.current,url:b,requestPayload:p}).submit()}else window.location.href=b}catch(h){t.error(h)}},[t]),z=g(()=>{s.value=!0,l(i),n.value.call.open()},[n,s,l]),I=xe(),R=me(()=>({clicked:z,closed:D,redirect:B,reportError:w,telemetry:I}),[z,D,B,w,I]);return x("div",{className:gt.AmazonPayButton,children:[x(Be,{wallet:u.AmazonPay,onConnect:k,onTerminate:()=>n.value=null,hostMethods:R,isSdkOnly:e,ref:i}),x(he,{isOpen:s,walletName:a.translate("brand.amazon_pay"),handleClose:r}),x(Fe,{ref:o,display:"none"})]})}function bt(e){return{status:N.Available,sdk:{Pay:{changePaymentMethod:({amazonCheckoutSessionId:a,isDeclined:t})=>{if(e.value){if(!a)throw new S("Missing amazonCheckoutSessionId",{groupingHash:"AmazonPaySandboxError::changePaymentMethod::MissingSessionId"});e.value.call.changePaymentMethod({amazonCheckoutSessionId:a,isDeclined:t})}},changeShippingAddress:({amazonCheckoutSessionId:a})=>{if(e.value){if(!a)throw new S("Missing amazonCheckoutSessionId",{groupingHash:"AmazonPaySandboxError::changeShippingAddress::MissingSessionId"});e.value.call.changeShippingAddress(a)}},initCheckout:()=>{throw new S('Unexpected invocation of "initCheckout"',{groupingHash:"AmazonPaySandboxError::initCheckout::UnexpectedInvocation"})},renderButton:()=>{throw new S('Unexpected invocation of "renderButton"',{groupingHash:"AmazonPaySandboxError::renderButton::UnexpectedInvocation"})}},buywithprime:{changePaymentMethod:()=>{throw new S('Unexpected invocation of buywithprime "changePaymentMethod" in AmazonPay flow')},changeShippingAddress:()=>{throw new S('Unexpected invocation of buywithprime "changeShippingAddress" in AmazonPay flow')},initCheckout:()=>{throw new S('Unexpected invocation of buywithprime "initCheckout" in AmazonPay flow')},renderButton:()=>{throw new S('Unexpected invocation of buywithprime "renderButton" in AmazonPay flow')}}}}}function V(){const{observability:e}=f(),{persistedAmazonSignal:a}=W(),{onClick:t}=mt();return g(n=>{e.counter({name:"WalletsPlatform_buy_with_prime_terminal_error_count",value:1,attributes:{reason:n}}),e.log("use_handle_buy_with_prime_terminal_error_detected",`Buy with Prime is not available because ${n}`,{cause:n,severity:"warning"}),t?.(()=>Y(a,{primeError:n}))},[e,t,a])}function Et(){const{attributes:e}=T();return g(()=>{const t=e.value;e.value=t&&et(t)},[e])}function wt(){const e=fe(),a=Et(),{externalDeliveryIds:t,attributes:n}=T(),s=t.value,r=n.value?.find(({key:o,value:i})=>o===tt&&i===u.BuyWithPrime)?.value;A(()=>{e.value||(s&&(t.value=void 0),r&&a())},[s,t,r,e.value,a])}
1function xt(){const e=L().paymentMethods,a=T().paymentLines,t=re();return ae(()=>at({paymentLines:a.value,paymentMethods:e.value,urlParams:{wallet:t[nt]??null,amazon_cancelled:t[be]??null}}))}function Se(e,a){return async t=>e.measureAsync({name:"WalletsPlatform_buyer_details_latency",attributes:{wallet:a},functionToMeasure:t})}function Bt(e){return JSON.stringify(e)}function Ct(e){return!["abandonedCart","other"].includes(e)}function J(e){return!pt.has(e)}function ze({walletName:e,excludedErrorTypes:a=[]}){const{observability:t}=f();return g((n,s="error")=>{a.some(o=>n instanceof o)||t.error(n,{severity:s}),t.log(`${e}_error_notified`,n.message,{severity:s,cause:n.cause,errorType:n.name})},[a,t,e])}const St={id:"55a240bbf1386e2987f86781b73e076031d227ebda7d438859a61d65c2305518",type:"query",name:"WalletsPlatformBuyerDetails",source:""};class te extends ie{constructor(){super(...arguments),this.name="BuyerDetailsContractError",this.terminalErrorReason="buyer_details_contract_error"}}class F extends ie{constructor(){super(...arguments),this.name="BuyerDetailsAPIError",this.terminalErrorReason="buyer_details_api_error"}}class Ie extends Error{constructor(){super(...arguments),this.name="BuyerDetailsMissingAmazonExternalIdError",this.terminalErrorReason="buyer_details_missing_amazon_external_id"}}class We extends Error{constructor(){super(...arguments),this.name="BuyerDetailsMissingAmazonExternalIdUnsupportedSourceError",this.terminalErrorReason="buyer_details_missing_amazon_external_id_unsupported_source"}}const zt=5,ke=async({walletName:e,graphql:a,token:t,observability:n,telemetryEventName:s,expressWalletInCheckout:r})=>{let o="";const i=async()=>{const{data:d,error:m}=await a.staticQuery(St,{cache:!1,variables:o?{pendingTask:{taskId:o}}:{buyerDetailsCreate:{token:t,walletName:e,walletInstrumentation:{expressWalletInCheckout:r}}}});if(m!=null)throw new F(`fetchBuyerDetails failed ${m.message} on ${e}`,{groupingHash:"BuyerDetailsAPIError::fetchBuyerDetails::GraphQLError"});if(d==null)throw new F(`fetchBuyerDetails returned no data on ${e}`,{groupingHash:"BuyerDetailsAPIError::fetchBuyerDetails::NoData"});return d};let l=0;do{const{walletsPlatformBuyerDetails:d}=await i();switch(d.__typename){case"PendingTask":if(o=d.taskId,l+=1,l>=zt)throw new F("fetchBuyerDetails exceeded max polling",{groupingHash:"BuyerDetailsAPIError::fetchBuyerDetails::MaxPollingExceeded"});await Le(d.pollDelay);break;case"WalletsPlatformBuyerDetailsFetchFailed":throw n.counter({name:s,value:1,attributes:{result:"false"}}),new F(`fetchBuyerDetails failed ${d.code}`,{groupingHash:"BuyerDetailsAPIError::fetchBuyerDetails::FetchFailed"});case"WalletsPlatformBuyerDetailsFetchSuccess":return n.counter({name:s,value:1,attributes:{result:"true"}}),d;default:Me(d)}}while(!0)};function Z(){const{shop:e,observability:a,checkout:t}=f(),{negotiate:n}=O(),{onClick:s}=ft(),r=Pt(),o=e.hasFlagEnabled(Ee),i=t.isCheckoutLayoutForcedToOnePage;return g(async l=>{if(a.counter({name:"WalletsPlatform_amazon_pay_terminal_error_count",value:1,attributes:{reason:l}}),a.log("use_handle_amazon_pay_terminal_error_detected",`Amazon Pay is not available because ${l}`,{cause:l,severity:"warning"}),o&&i.value){s?.();return}r(),await n({})},[a,s,r,o,i,n])}function It(){const{observability:e}=f();return function(t){if(t.prefillingShippingAddress?.__typename==="InvalidWalletPrefillingAddress"){const s=t.prefillingShippingAddress.validationErrors.filter(({code:r})=>J(r)).map(r=>r.code).join(", ");s&&e.counter({name:"WalletsPlatform_buyer_details_invalid_wallet_prefilling_shipping_address",value:1,attributes:{wallet:u.AmazonPay,errorCode:s}})}if(t.prefillingBillingAddress?.__typename==="InvalidWalletPrefillingAddress"){const s=t.prefillingBillingAddress.validationErrors.filter(({code:r})=>J(r)).map(r=>r.code).join(", ");s&&e.counter({name:"WalletsPlatform_buyer_details_invalid_wallet_prefilling_billing_address",value:1,attributes:{wallet:u.AmazonPay,errorCode:s}})}return{buyerDetails:t}}}function Wt(){const e=T().paymentLines.value,[a]=st(e,[u.AmazonPay]);return!a}function kt(){const e=Wt(),a=Pe(),{nextPage:t}=Ne(),{inMemoryAmazonPayParts:{buyerDetails:n}}=W(),{progress:s,negotiate:r}=O(),o=Z(),[i,l]=ne(!1),{clearError:d}=ve(),{setBlocking:m}=Oe(),P=re(),c=P[rt],v=P[be],{checkout:y,router:_,observability:E,graphql:{coreGraphql:w}}=f(),k=y.configuration.layout.isOnePage.value,D=y.isCheckoutLayoutForcedToOnePage.value,{searchParams:B}=_.currentUrl.value,z=It(),I=ze({walletName:u.AmazonPay,excludedErrorTypes:[F]}),R=He(u.AmazonPay);_e({active:i});const b=Q();A(()=>{if(!c)return;e&&y.unstable_overwriteLatestReceipt(void 0);const p=B.get("storefront_wallet")!=="true";if(b({keep:D?["wallet"]:[]}),v)return;y.wallets.setEscalatedWallet(u.AmazonPay);const h=()=>k&&y.wallets.escalatedWallet.value!==u.AmazonPay,C=async()=>{m(!0,X),n.value={...n.value,loading:!0};const ue=await Se(E,u.AmazonPay)(()=>ke({walletName:u.AmazonPay,graphql:w,token:c,observability:E,telemetryEventName:"WalletsPlatform_buyer_details_count",expressWalletInCheckout:p}));if(h())return;const U=z(ue);d(),n.value={...n.value,details:U.buyerDetails},p&&R(),a(u.AmazonPay,U.buyerDetails),m(!1,X),y.wallets.clearActiveSession({invokingWallet:u.AmazonPay}),k||t.id==="thankYou"?await r({}):await s("amazon-pay-buyer-details-loaded")};l(!0),(async()=>(y.wallets.setActiveSession({newValue:u.AmazonPay,asPaymentMethod:!1}),await C().then(()=>{n.value={...n.value,error:!1}}).catch(H=>{I(H),!h()&&(n.value={...n.value,error:!0},o("buyer_details_failure"))}).finally(()=>{y.wallets.clearActiveSession({invokingWallet:u.AmazonPay}),m(!1,X),n.value={...n.value,loading:!1},l(!1)})))()},[])}function Dt(){const e=f().checkout.latestReceipt.value?.id,a=Z(),{hasError:t}=ge(we),n=!!Ue(u.AmazonPay).value,s=Q(),r=Ae(),{persistedAmazonSignal:o,inMemoryAmazonPayParts:{buyerDetails:i}}=W();A(()=>{n&&(t&&o.value?.receiptIdForAupError!==e?(Y(o,{receiptIdForAupError:e}),a("aup")):r&&(s({only:["amazon_cancelled"]}),i.value={...i.value,error:!0},a("amazon_cancelled")))},[t,n,e,i,r,o.value?.receiptIdForAupError,o,s,a])}function Mt(){const e=vt(),{progressing:a}=O(),t=a.value,{currentDetour:n}=se().value,s=Z(),{observability:r}=f();A(()=>{if(!e.value||n||t)return;const{expiration_timestamp:o}=K(e.value.method.walletParams);!o||Date.now()<new Date(o).getTime()||(r.counter({name:"WalletsPlatform_amazon_pay_session_expired_count",value:1}),s("session_expired"))},[e.value,n,t,s,r])}function Lt(){const{checkout:e,shop:a}=f(),t=e.configuration.layout.isOnePage.value,n=Z(),s=a.hasFlagEnabled(Ee),r=Ae(),o=e.extensibility.ui.hasAtRiskPlacement.value;return Mt(),kt(),Dt(),A(()=>{s&&!t&&!r&&!o&&n("3p_deceleration_to_1p")},[]),null}function Tt(){const e=L();return ae(()=>{const a=e.customAttributes.value,t=e.paymentMethods.value;let n;try{const s=a?.find(r=>r.key===ht)?.value;
1s&&(n=ot(s))}catch{}if(!n){const s=t?.find(r=>r.type==="walletsPlatform"&&r.name===u.BuyWithPrime);n=s?.configurationParams&&(s?.configurationParams).appId||n}return n})}class De extends Error{constructor(){super(...arguments),this.name="BuyWithPrimeAddressUpdatedNoPromiseIdError",this.terminalErrorReason="buyer_details_address_updated_no_promise_id_error"}}function Rt(){const{externalDeliveryIds:e}=T();return g(()=>e.value,[e])}function Ft(){const{observability:e,source:{type:a}}=f(),t=!le().value;return function(s,r){let o;if((!s||!r)&&t){const i=[];s||i.push("amazonCheckoutSessionId"),r||i.push("promiseId"),Ct(a)?(e.counter({name:"WalletsPlatform_buyer_details_buy_with_prime_missing_external_ids_count",value:1,attributes:{missing_promise_id:String(!r),missing_amazon_checkout_session_id:String(!s)}}),o=new Ie(`Amazon external ids are missing: ${i.join(", ")}`)):o=new We(`Amazon external ids are missing: ${i.join(", ")}. Unsupported source detected: ${a}`)}return{externalCheckoutSessionId:s,externalPromiseId:r,error:o}}}function Nt(){const{observability:e}=f(),{persistedAmazonSignal:a}=W();return g((t,n,s)=>{if(!t.walletParams)return e.counter({name:"WalletsPlatform_buyer_details_missing_wallet_params_count",value:1,attributes:{wallet:u.BuyWithPrime}}),{error:new te("Buyer details returned do not contain 'walletParams'.",{groupingHash:"BuyerDetailsContractError::BuyerDetailsMissing::WalletParams"})};if(t.prefillingShippingAddress?.__typename==="InvalidWalletPrefillingAddress"){const i=t.prefillingShippingAddress.validationErrors.filter(({code:l})=>J(l)).map(l=>l.code).join(", ");i&&(e.log("buy_with_prime_invalid_wallet_prefill_address_detected",`Buyer details shipping address has an InvalidWalletPrefillingAddress: ${i}`,{severity:"warning"}),e.counter({name:"WalletsPlatform_buyer_details_invalid_wallet_prefilling_shipping_address",value:1,attributes:{wallet:u.BuyWithPrime}}))}if(t.prefillingBillingAddress?.__typename==="InvalidWalletPrefillingAddress"){const i=t.prefillingBillingAddress.validationErrors.filter(({code:l})=>J(l)).map(l=>l.code).join(", ");i&&(e.log("buy_with_prime_invalid_wallet_prefill_address_detected",`Buyer details billing address has an InvalidWalletPrefillingAddress: ${i}`,{severity:"warning"}),e.counter({name:"WalletsPlatform_buyer_details_invalid_wallet_prefilling_billing_address",value:1,attributes:{wallet:u.BuyWithPrime}}))}if(t.prefillingShippingAddress){const o=Bt(t.prefillingShippingAddress),i=a.value?.lastRecordedAddressToken;if(i&&i!==o&&!n)return e.counter({name:"WalletsPlatform_buyer_details_buy_with_prime_address_updated_no_promise_id_count",value:1,attributes:{wallet:u.BuyWithPrime}}),{error:new De("Received updated address but no promise ID")};Y(a,{lastRecordedAddressToken:o})}const r=K(t.walletParams).external_customer_id??s?.externalCustomerId;return r?{buyerDetails:t,externalCustomerId:r}:(e.counter({name:"WalletsPlatform_buyer_details_missing_external_customer_id_count",value:1,attributes:{wallet:u.BuyWithPrime}}),{error:new te("Buyer details returned do not contain 'external_customer_id'.",{groupingHash:"BuyerDetailsContractError::BuyerDetailsMissing::ExternalCustomerId"})})},[e,a])}const Ot=[De,Ie,We,te,F];function Ht(e){return"terminalErrorReason"in e?e.terminalErrorReason:"buyer_details_failure"}function Ut(){const{observability:e}=f(),a=Ve(u.BuyWithPrime),t=T().merchandiseLines.value,[n,s]=ne(!1),{value:r}=L().deliveryNext,o=ut(r),i=G("deliveryNext").value;A(()=>{n||!i&&r?.status==="filled"&&!o&&a.value&&t&&t.filter(l=>l.requiresShipping).length>1&&(e.counter({name:"WalletsPlatform_buy_with_prime_multi_line_checkout_detected_count",value:1}),e.log("buy_with_prime_multi_line_checkout_detected","Multi line Buy with Prime checkout detected"),s(!0))},[a.value,i,r,n,o,t,e])}function $t(){const{attributes:e}=T();return()=>{const t=e.peek();e.value=ct(t??[])}}function Gt(){const{externalDeliveryIds:e}=T();function a(t){e.value=t}return a}function Vt(){const{hasError:e}=ge(we),{persistedAmazonSignal:a}=W(),t=f().checkout.latestReceipt.value?.id,n=V();A(()=>{e&&a.value?.receiptIdForAupError!==t&&n("aup")},[e,t,a.value?.receiptIdForAupError,n])}function qt(){const{i18n:e}=f(),{inMemoryAmazonPayParts:{buyerDetails:a}}=W(),{value:t}=it(),n=G("deliveryNext").value,{value:s}=lt(),r=G("deliveryExpectations").value,o=yt(t??[]),i=$e(s??[],o?.handle),{maxDeliveryDateTime:l,deliveryExpectationPresentmentTitle:d}=i||{},{short:m}=d||{},{type:P}=Ge();let c;return m?c=m:P==="no delivery strategy"?c=e.translate("shipping.different_shipping_method_summary"):c=e.translate("delivery_promise.buy_with_prime.default"),{promiseDate:l,promiseText:c,loading:a.value.loading||r||n}}function jt(){const e=Pe(),a=Gt(),t=$t(),{persistedAmazonSignal:n,inMemoryAmazonPayParts:{buyerDetails:s}}=W(),{client:r,observability:o,checkout:{wallets:i},graphql:{coreGraphql:l}}=f(),{negotiate:d}=O(),m=V(),[P,c]=ne(!1),{clearError:v}=ve(),y=T().interfaceFlow,_=Rt(),{amazonCheckoutSessionId:E,promiseId:w}=re(),k=Ft(),D=Nt(),B=r.unstable_getSerialization("forcedRedesignWallet");_e({active:P});const z=Q(),I=ze({walletName:u.BuyWithPrime,excludedErrorTypes:Ot});
1A(()=>{const R=_(),b=w??R?.externalPromiseId;z(B?{keep:["wallet"]}:void 0),i.setEscalatedWallet(u.BuyWithPrime),Y(n,{primeError:void 0});const p=async()=>{const{error:h,externalCheckoutSessionId:C,externalPromiseId:H}=k(E,b);if(h){I(h),m("buyer_details_failure_on_validate_required_ids");return}if(!C||!H)return;const U=await Se(o,u.BuyWithPrime)(()=>ke({walletName:u.BuyWithPrime,graphql:l,token:C,observability:o,telemetryEventName:"WalletsPlatform_buyer_details_count",expressWalletInCheckout:!1})),q=D(U,w);if(q.error){I(q.error),m("buyer_details_failure_on_validate_data");return}K(U.walletParams).external_promise_id=H,v(),t(),i.setActiveSession({newValue:u.BuyWithPrime,asPaymentMethod:!1}),i.clearActiveSession({invokingWallet:u.BuyWithPrime}),e(u.BuyWithPrime,q.buyerDetails),y.value="BUY_WITH_PRIME",a({externalCheckoutSessionId:E,externalCustomerId:q.externalCustomerId,externalPromiseId:b}),await d({force:!1,fieldsToResolve:["taxes","paymentMethods"],include:["paymentLines"]})};c(!0),s.value={...s.value,loading:!0},(async()=>await p().catch(h=>{I(h),m(Ht(h))}).finally(()=>{c(!1),s.value={...s.value,loading:!1}}))()},[])}function Jt(){const{promiseDate:e}=qt(),a=dt(),t=qe(),{shop:{currencyCode:n,marketDrivenShippingEnabled:s},source:r,i18n:{locale:o}}=f(),i=je(),l=Tt(),{isThankYouPage:d}=oe(),m=Je(),P=g(()=>{l.value&&t.publishCustomEvent(`shopify:app:pixels:load:${l.value}`,{},{sendTo:"PIXEL-LOADER"})},[l,t]),c=g(()=>{if(l.value){const y=ce({negotiated:a,source:r,locale:o,shopCurrencyCode:n,marketDrivenShippingEnabled:s});t.publishCustomEvent("bwp_checkout_started",{checkout:y},{sendTo:l.value})}},[a,r,o,t,l,n,s]),v=g(()=>{if(!i||m.shouldPrevent())return;const y=ce({negotiated:a,source:r,orderId:i.orderIdentity.id||void 0,locale:o,shopCurrencyCode:n,marketDrivenShippingEnabled:s});l.value&&(m.markAsEmitted(),requestAnimationFrame(()=>t.publishCustomEvent("bwp_checkout_completed",{checkout:y,deliveryPromiseTimestamp:e},{sendTo:l.value})))},[i,a,r,o,l,t,e,n,s,m]);return de(g(y=>{y.type==="initiate_checkout"&&!d&&c()},[c,d])),de(g(y=>{y.type==="complete_checkout"&&v()},[v])),A(()=>{P()},[P]),null}function Yt(){const e=le(),{progressing:a}=O(),t=a.value,{currentDetour:n}=se().value,{observability:s}=f(),r=V();A(()=>{if(!e.value||n||t)return;const{expiration_timestamp:o}=K(e.value.method.walletParams);o&&Date.now()>new Date(o).getTime()&&(s.counter({name:"WalletsPlatform_buy_with_prime_session_expired_count",value:1}),r("session_expired"))},[e.value,r,n,s,t])}function Qt(){const e=L().deliveryNext,a=G("deliveryNext"),t=L().paymentLines,n=L().deliveryExpectations,s=G("deliveryExpectations"),r=Ye(),o=Qe(r);return ae(()=>{const i=e.value,l=a.value,d=t.value,m=n.value,P=s.value,c=d?.lines.some(_=>_.method.type==="walletsPlatformPaymentMethod"&&_.method.name===u.BuyWithPrime),v=!!(i&&i.status==="filled"&&i.sourceIsBuyerProposal);if(l||v||P||!c)return;if(i?.status==="unavailable")return r.value||o.value?void 0:"delivery_next_unavailable";if(!i?.lines.some(_=>_.status==="available"&&_.methods.some(E=>E.brandedPromise?.handle===u.BuyWithPrime)))return"missing_shipping_option";if(m?.status==="unavailable")return"delivery_expectations_unavailable"})}function Kt(){const{isThankYouPage:e}=oe();return x(Te,{children:[x(Jt,{}),!e&&x(Zt,{})]})}function Zt(){const e=V(),a=f().checkout.configuration.layout.isOnePage.value,{value:t}=L().merchandiseLines,n=Ke(),s=Qt(),r=se(),o=t?.lines?.length??0;return Vt(),Yt(),jt(),Ut(),A(()=>{a||e("three_page_detected")},[]),A(()=>{!r.value.currentDetour&&s.value&&e(s.value)},[r,e,s.value]),A(()=>{!n.value&&o>1&&e("unsupported_split")},[e,n.value,o]),null}function Xt(){const{buyerDetailsContentLoaded:e}=W().inMemoryAmazonPayParts,a=xt(),t=fe(),{searchParams:n,isThankYouPage:s}=oe(),r=le();A(()=>{e.value=!0},[e]);const{progressing:o}=O(),i=o.value,l=V(),d=!!n.amazon_cancelled;A(()=>{!i&&!t.value&&r.value&&l("eligibility_lost")},[i,t.value,r.value,l]);const m=Q();return A(()=>{!t.value&&!a.value&&d&&m()},[t.value,a.value,d,m]),wt(),t.value?x(Kt,{}):!s&&a.value?x(Lt,{}):null}class M extends Error{constructor(){super(...arguments),this.name="PortableWalletsSandboxError"}}const ea="uaDLn",ta={PortableWalletsPCIButton:ea};function aa({wallet:e,isSdkOnly:a=!1}){const{i18n:t,shop:n,source:s,observability:r}=f(),{id:o}=n,{value:i}=L().buyerIdentity,{countryCode:l,presentmentCurrency:d}=i??{},P=Ze(e).value?.configurationParams,c=ee(null),{isScrimOpen:v,closePopupWindowsAndScrim:y}=ye({endpoint:c,invokingWallet:e}),{inMemoryAmazonPayParts:{buyWithPrimeButtonStatus:_,sdkStatus:E}}=W();A(()=>()=>{!a&&_.value.status!=="error"&&(_.value={status:"not_rendered"})},[_,a]);const w=j(null),k=j(null),D=pe(),B=g(({errorMessage:p})=>r.error(new M(p)),[r]),z=ee(!1),I=g(async p=>{E.value={status:N.Loading};const h=await p.call.configure({configurationParams:P,buyerCountry:l,buyerCurrency:d,shopId:o,cartId:s.sourceId,onlySdk:a});h?.status===$.Success?(E.value=na(e,c),a||(_.value={status:"rendered"},r.counter({name:"checkout_wallet_button_rendered",value:1,attributes:{wallet_name:e,status:"success",isPaymentMethodFlow:!1}
1}))):(h?.status===$.Error&&B({errorMessage:h?.message}),E.value={status:N.Error},a||(_.value={status:"error"},r.counter({name:"checkout_wallet_button_rendered",value:1,attributes:{wallet_name:e,status:"error",isPaymentMethodFlow:!1}})))},[P,l,o,d,s.sourceId,a,e,B,E,_,c,r]);z.value&&i?.countryCode&&i?.presentmentCurrency&&c.value&&(z.value=!1,I(c.value));const R=xe(),b=me(()=>({clicked:p=>{v.value=!0,D(k),p&&ra(p.skus,p.apiClientId)},closed:()=>v.value=!1,redirect:({redirectUrl:p,requestPayload:h})=>{try{if(h){if(!w.current){r.error(new S("Form container not found",{groupingHash:"AmazonPaySandboxError::PortableWalletsPCIButton::FormContainerNotFound"}));return}Ce({formContainer:w.current,url:p,requestPayload:h}).submit()}else window.location.assign(p)}catch(C){r.error(C)}},reportError:B,telemetry:R}),[v,B,r,D,R]);return x("div",{className:ta.PortableWalletsPCIButton,children:[x("div",{ref:w,style:{display:"none"}}),x(Be,{wallet:e,onConnect:p=>{c.value=p,z.value=!0},onTerminate:()=>c.value=null,hostMethods:b,isSdkOnly:a,ref:k}),x(he,{isOpen:v,walletName:t.translate("brand.buy_with_prime"),handleClose:y})]})}function na(e,a){return{status:N.Available,sdk:{buywithprime:{changePaymentMethod:({amazonPayOptions:t})=>{if(!t.amazonCheckoutSessionId)throw new M("Missing amazonCheckoutSessionId");a.value?.call.changePaymentMethod({wallet:e,changePaymentParams:{amazonCheckoutSessionId:t.amazonCheckoutSessionId,isDeclined:t.isDeclined}})},changeShippingAddress:({amazonCheckoutSessionId:t})=>{if(!t)throw new M("Missing amazonCheckoutSessionId");a.value?.call.changeShippingAddress({wallet:e,changeShippingParams:{amazonCheckoutSessionId:t}})},initCheckout:()=>{throw new M('Unexpected invocation of "initCheckout"')},renderButton:()=>{throw new M('Unexpected invocation of "renderButton"')}},Pay:{changePaymentMethod:()=>{throw new M('Unexpected invocation of AmazonPay "changePaymentMethod" in BWP flow')},changeShippingAddress:()=>{throw new M('Unexpected invocation of AmazonPay "changeShippingAddress" in BWP flow')},initCheckout:()=>{throw new M('Unexpected invocation of AmazonPay "initCheckout" in BWP flow')},renderButton:()=>{throw new M('Unexpected invocation of AmazonPay "renderButton" in BWP flow')}}}}}function ra(e,a){window.Shopify?.analytics?.publish&&(window.Shopify.analytics.publish(`shopify:app:pixels:load:${a}`,{},{sendTo:"PIXEL-LOADER"}),window.Shopify.analytics.publish("bwp_checkout_widget_click",{skus:e},{sendTo:a}))}const va=At,_a=Xt,ga=aa;export{_a as AmazonBuyerDetailsContent,va as AmazonPayButtonContent,ga as PortableWalletsPCIButtonContent};
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.