import{h as e,u as a,m as r,v as t,T as n}from"./2c1ab0fe.Dbn2KvkT.js";import{af as o,cn as s,bL as i,bM as l,ag as c,co as u,w as d,cp as m,bS as p,cq as v,cr as _,cs as y,ct as g,cu as b,cv as f,cw as h}from"./164ad2e3.FTBuhkTQ.js";import{d as E,aR as P,bR as M,bS as S,bT as A,bU as R,bV as T,bW as I,aC as w,bX as C,a4 as L,bY as k,bZ as B,b_ as D,b$ as O,c0 as Y,c1 as F,c2 as N,c3 as j,c4 as x,c5 as U,c6 as H,c7 as V,Q as $,bb as q}from"./4b4bc88f.z1yoAwwH.js";import{h as z,a as G,u as X}from"./58314944.C8o0ZBBk.js";function J({bannerId:r,errorType:t,children:n,...s}){const{observability:i}=E(),{tone:l,...c}=s;return e(()=>{i.log("error_log_banner_error_banner_rendered","[Displayed Error] Error banner was rendered",{bannerId:r})},[r,i]),a(o,{errorType:t,id:r,tone:l,...c,children:n})}function Q(){const{checkout:e,i18n:a,shopPay:n}=E(),{value:o}=e.negotiator.current.fields.paymentMethods,{value:c}=e.negotiator.current.fields.managedByMarketsPro,u=w({managedByMarketsPro:c}),d=r(()=>P({checkout:e})),m=s(),{value:p}=e.negotiator.current.fields.deferredTotal,v=n.session.selectedPaymentMethod.value,_=n.session.paymentMethodOption.value,y=i(l(M)).value,g=v&&S(v)?A(v.paymentAttributes.brand):void 0,b=R(),f=t(()=>{if("SHOPIFY_INSTALLMENTS"!==_?.name){if(b.value)return!0;if(!v)return!0;if(m.value&&!p?.amount.amount)return!0;if(S(v)){if(y)return!1;const e=o?.filter(e=>"direct"===e.type).flatMap(e=>e.paymentBrands);if(e&&e.length>0){const a=T(v.paymentAttributes);if(!a)return;return e.includes(a)}}return!I(v)||function(e,a,r){return!e&&a&&r?.some(e=>C(e,["ideal"]))}(d.value,u,o)}},[_?.name,b.value,v,m.value,p?.amount.amount,y,o,d.value,u]),h=t(()=>{if(v&&!1===f){if(S(v))return g?a.translate("payment.brand_not_available",{brand:g}):a.translate("payment.generic_incorrect_card_info");if(I(v))return d.value?a.translate("payment_errors.payment_method_unavailable_with_subscriptions"):a.translate("payment.shop_pay_ideal_unavailable_error")}},[f,v,g,a,d.value]);return{paymentMethods:o,isSelectedPaymentMethodSupported:f,notSupportedError:h,label:g}}function W(){const{i18n:e,checkout:a,embed:r,shopPay:t}=E(),{delegatedPaymentInstrument:o,inventoryRecoverySignal:s}=a.negotiator.context,{lastJourneyProgression:c}=a.negotiator,{progressing:u}=d(),{walletUsedForSubmissionSignal:P,inMemoryApplePayParts:{asPaymentMethod:S},receiptErrorSignal:A}=L(),{paymentMethods:R}=a.negotiator.current.fields,{notSupportedError:T}=Q(),{violations:I}=l(M),w=i(l(k)).value,C=i(l(B)).value,J=i(l(D)).value,W=i(l(O)).value,{violations:Z}=l(Y),K=i({violations:I}).value,ee=Z.value,ae=!(("success"===c.value.type||"error"===c.value.type)&&"completion"===c.value.negotiationStage)&&1===ee.size&&"PAYMENTS_METHOD"===ee.values().next().value.code,re=i(l(F)).value,te=m(),{hasError:ne,error:oe}=p(N),{hasError:se,error:ie}=v(),{hasError:le}=_(),{hasError:ce}=y(),ue=g(oe?{type:"payment",code:oe}:void 0),de=function(e){const{i18n:a}=E();if(e&&"SURVEY_EXITED"!==e.code)return a.translate("hsa_qualification_errors",{scope:e.code.toLowerCase()})}(ie),me=a.negotiator.parts.generalPaymentError.value,pe=a.negotiator.parts.generalPaymentErrorCode.value,ve=z(a.negotiator.parts.directPaymentErrors),_e=G(a.negotiator.parts.directPaymentErrors),ye=n(!1),ge=b(),be=X(me,pe),fe=be&&!j(pe)&&!x(pe)&&!U(pe)&&!H(pe),he=e.translate("order_errors.inventory_reservation_failure"),Ee=i(f(V)).value,Pe=Boolean($(R.value).length),Me=q("billingAddress").value,Se=h().value,Ae="APPLE_PAY"===P.value||Se,Re="INCORRECT_CVC"===oe&&"CREDIT_CARD"===t?.session.selectedPaymentMethod.value?.paymentMethod,Te=s.value,Ie=null!=Te&&Te.receiptId===a.latestReceipt.value?.id,we="failed"===c.value.type&&"completion"===c.value.negotiationStage,Ce=Boolean(fe||_e||te||we),Le=Ie&&!Te.dismissed&&!Ce,ke=t.installments.failedAttempt.value,Be=ke?.retryable&&ke.recoveryAction,De=r&&a.configuration.isPaymentInstrumentsDelegationEnabled&&o.value&&Ee&&!Me;if(u.value)return{tone:"auto"};let Oe,Ye,Fe="critical";if(De&&(Oe=e.translate("payment_errors.payment_method_billing_address")),fe&&(ye.current=!0,Fe="warning",Oe=be),te&&(ye.current=!0,Oe=te),(ve||_e&&(ye.current||le))&&(Oe=e.translate("payment.generic_incorrect_card_info")),!(ne&&oe&&ue)||ye.current||"GOOGLE_PAY"===P.value||Ae&&!S.value||A.value||ge||Re||(Oe=ue),we&&"failed"===c.value.type&&(Oe=c.value.fetchFailed?e.translate("order_errors.network_failure"):"decision_rule_block"===c.value.reason?e.translate("payment_errors.generic_error"):e.translate("order_errors.creation_failure")),ce&&!ye.current&&(Oe=e.translate("order_errors.creation_failure")),le&&!Ce&&(Ie?Le:!ye.current)&&(Oe=he,Le&&(Fe="critical")),se&&de&&!ye.current&&(Oe=de),Be&&!a.installments.isUnavailable.value&&t.session.isInstallmentsSelected.value&&!Ce&&!A.value&&!De){const a=a=>e.translate("payment_errors.installments",{scope:`${Be.toLowerCase()}.${a}`});Oe=a("body"),Ye={heading:a("heading"),message:Oe,tone:"RESTART_PAYMENT_METHOD"===Be?"warning":"critical"}}if(re&&(Oe=e.translate("store_credit_errors.generic_error")),w&&(Oe=e.translate("payment.expired_payment_method")),K){const a=[...I.value][0],r=a?.nonLocalizedMessage?.split(":")[1]?.toLowerCase().trim();Oe=r?e.translate("payment.brand_not_available",{brand:e.translate("payment_brand",{scope:r})}):e.translate("payment.generic_incorrect_card_info")}return J&&(Oe=e.translate("payment.generic_incorrect_card_info")),W&&(Oe=e.translate("payment_errors.method_not_available")),C&&(Oe=e.translate("payment_errors.generic_error")),ae&&(Oe=e.translate("payment_errors.available_methods_updated"),Fe="info"),T&&(Oe=T,Fe="critical"),Pe&&Ee&&(Oe=e.translate("address_management.invalid_billing_address_selected")),Ye&&Ye.message===Oe?Ye:{message:Oe,tone:Fe,inventoryRecoveryReceiptId:Le&&Oe===he?a.latestReceipt.value?.id:void 0}}function Z({heading:r,message:t,tone:o,inventoryRecoveryReceiptId:s}){const{observability:i}=E(),l=n(Boolean(s)).current;return e(()=>{s&&i.counter({name:"inventory_recovery_error_banner_displayed",value:1})},[s,i]),a(ee,{heading:r,identifier:"PaymentErrorBanner",tone:o,suppressAutoFocus:l,children:t})}function K(){const e=W();return e.message?a(Z,{...e}):null}function ee({heading:e,children:r,identifier:t,tone:n,suppressAutoFocus:o=!1}){return"critical"===n||"warning"===n?a(J,{errorType:c.PaymentError,bannerId:t,heading:e,tone:n,autoFocus:!o,focusable:o,children:r}):a(u,{heading:e,tone:n,children:r})}export{J as E,ee as P,K as a,Q as b,Z as c,W as u};