Loading
function(e,t,n){n.d(t,{od:()=>x}),n(321073);var r=n(477900),l=n(582128),i=n(132500),o=n(192308),a=n(231723),s=n(228366),u=n(166532),c=n(925847),d=n(310829),h=n(174459),C=n(75304),p=n(145659),m=n(241440),E=n(37756),A=n(982291),f=n(852607),y=n(331611),S=n(169797),g=n(652215);n(322076);var _=n(202541),T=n(375708);let P={[C.C.ORB_CHECKOUT]:{allowGiftCustomization:!1,excludePaymentAuthSteps:!0,predicateStepType:"unified"},[C.C.COLLECTIBLES_CHECKOUT]:{allowGiftCustomization:!0,predicateStepType:"one_time_payment"},[C.C.SLAYER_STOREFRONT_CHECKOUT]:{allowGiftCustomization:!0,predicateStepType:"one_time_payment"},[C.C.PREMIUM_CHECKOUT]:{allowGiftCustomization:!1,predicateStepType:"subscription"},[C.C.INBOUND_PREMIUM_PROMOTION_CHECKOUT]:{allowGiftCustomization:!1},[C.C.PREMIUM_APPS_OTP_CHECKOUT]:{allowGiftCustomization:!0,predicateStepType:"one_time_payment"},[C.C.PREMIUM_APPS_SUBSCRIPTION_CHECKOUT]:{allowGiftCustomization:!1},[C.C.GUILD_BOOST_CHECKOUT]:{allowGiftCustomization:!1},[C.C.GUILD_PRODUCT_CHECKOUT]:{allowGiftCustomization:!1,predicateStepType:"one_time_payment"},[C.C.GUILD_ROLE_CHECKOUT]:{allowGiftCustomization:!1,predicateStepType:"subscription"},[C.C.GAME_SERVER_SUBSCRIPTION_CHECKOUT]:{allowGiftCustomization:!1,predicateStepType:"subscription"}},I=(0,l.lazy)(()=>Promise.all([n.e("339384"),n.e("793438"),n.e("154791"),n.e("725246"),n.e("312665"),n.e("208430")]).then(n.bind(n,427325)).then(e=>{let{UnifiedCheckoutInstance:t}=e;return{default:t}}));function N(e){return(0,r.jsx)(I,{...e})}class x{checkoutFlow;checkoutFlowConfiguration;tenantCheckoutFlowConfig;internalCheckoutFlowControls;override_analytic_params;constructor({checkoutFlow:e}){this.checkoutFlow=e;const t=E.Y[e];if(!function(e,t){return null!=t&&t.implemented&&t.flowType===e}(e,t))throw Error(`Checkout flow ${e} is not implemented`);this.checkoutFlowConfiguration=t,this.tenantCheckoutFlowConfig=t.TENANT_CHECKOUT_FLOW_CONFIG,this.internalCheckoutFlowControls=P[e],this.override_analytic_params=this.tenantCheckoutFlowConfig.TENANT_PROVIDER_CONFIGS.overrideAnalyticParams}getCheckoutStep(e){return this.tenantCheckoutFlowConfig.CHECKOUT_STEPS[e]}generateRenderHeader(){let{CustomHeaderComponent:e}=this.tenantCheckoutFlowConfig;if(null!=e)return t=>{let{handleClose:n,step:l}=t;return(0,r.jsx)(e,{onClose:n,step:l})}}getPredicateStepConfig(){let{CUSTOM_PREDICATE_STEP_CONFIG:e}=this.tenantCheckoutFlowConfig,{predicateStepType:t}=this.internalCheckoutFlowControls;return null!=e?{key:null,renderStep:e.renderStep,options:e.options}:"one_time_payment"===t?f.kO:"subscription"===t?f.r3:{key:null,renderStep:e=>(0,r.jsx)(y.e,{paymentModalStepProps:e,defaultStep:u.pn.REVIEW})}}getAddPaymentStepConfig(e){let{isGift:t}=e,{allowGiftCustomization:n}=this.internalCheckoutFlowControls;if(this.checkoutFlow!==C.C.ORB_CHECKOUT)return{key:u.pn.ADD_PAYMENT_STEPS,renderStep:e=>(0,r.jsx)(A.c,{checkoutFlow:this.checkoutFlow,paymentModalStepProps:e,returnStep:u.pn.REVIEW,returnStepIfNoPaymentSources:t&&n?u.pn.GIFT_CUSTOMIZATION:void 0}),options:{renderHeader:!0}}}getGiftCustomizationStepConfig(e){let{isGift:t}=e,{allowGiftCustomization:n}=this.internalCheckoutFlowControls,l=this.getCheckoutStep(u.pn.GIFT_CUSTOMIZATION);if(t&&n&&null!=l)return{key:u.pn.GIFT_CUSTOMIZATION,renderStep:e=>(0,r.jsx)(l,{...e}),options:{modalSizeGetter:()=>"xl",useBreadcrumbLabel:()=>T.intl.string(T.t["W685+b"])}}}getReviewStepConfig(){let e=this.getCheckoutStep(u.pn.REVIEW);return{key:u.pn.REVIEW,renderStep:t=>(0,r.jsx)(e,{...t}),options:{useBreadcrumbLabel:()=>T.intl.string(T.t.QBnNHq)}}}createDefinedStepConfigsArray(e){return e.filter(e=>null!=e)}generateCheckoutStepConfigs(e){let{isGift:t}=e,{CUSTOM_CONFIRM_STEP_CONFIG:n,STEPS_BEFORE_CHECKOUT:r=[]}=this.tenantCheckoutFlowConfig,{excludePaymentAuthSteps:l}=this.internalCheckoutFlowControls,i=this.getPredicateStepConfig(),o=this.getGiftCustomizationStepConfig({isGift:t}),a=this.getAddPaymentStepConfig({isGift:t}),s=this.getReviewStepConfig(),c=this.createDefinedStepConfigsArray([i,...null!=o?[o]:[],...r,a,...l?[]:f.PL,s]);return null!=n&&c.push({key:u.pn.CONFIRM,renderStep:n.renderStep,options:n.options}),c}getApplicationId(e){return this.checkoutFlow===C.C.ORB_CHECKOUT&&null!=e?(0,d.P)(e):this.checkoutFlow===C.C.COLLECTIBLES_CHECKOUT?g.FYj:this.checkoutFlow===C.C.PREMIUM_CHECKOUT?_.tv:void 0}trackPaymentFlowCanceled(e){let{loadId:t,skuId:n,skuProductLine:r,applicationId:l,discoverySessionId:i,analyticsLocation:o,analyticsLocations:a,analyticsObject:s,analyticsSourceLocation:u,isGift:c,eligibleForTrial:d}=e;h.default.track(g.HAw.PAYMENT_FLOW_CANCELED,{load_id:t,discovery_session_id:i,payment_type:g.frM[this.checkoutFlowConfiguration.purchaseType],is_gift:c,sku_id:n,sku_product_line:r,application_id:l,location:o??s,location_stack:a,source:u,eligible_for_trial:d,payment_modal_version:"v2",checkout_design:p.r.UNIFIED,checkout_flow:this.checkoutFlow,...this.checkoutFlow===C.C.PREMIUM_CHECKOUT?{subscription_type:g.rzx.PREMIUM}:{},...this.override_analytic_params})}getStandaloneLoadId(){return(0,c.A)()??(0,i.A)()}renderCheckoutInstance(e){let{giftContextProps:t,checkoutHandlers:{onComplete:u,onClose:c}={},checkoutConfiguration:{skuId:d,skuProductLine:h,discoverySessionId:C,applicationId:p,activeSubscription:E,initialPaymentSourceId:A},unifiedCheckoutProviderProps:{analyticsLocations:f,analyticsSourceLocation:y},forwardedPaymentModalProps:{analyticsObject:g,..._}={},tenantParams:T}=e,P=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"modal",I=arguments.length>2?arguments[2]:void 0,x=arguments.length>3?arguments[3]:void 0,O={current:x??(0,i.A)()},k={current:null},{modalKey:R}=I,v=this.generateRenderHeader(),M=p??this.getApplicationId(d),L=!!(null!=t&&t.isGift),j=!1,w={..._,checkoutFlow:this.checkoutFlow,checkoutFlowConfiguration:this.checkoutFlowConfiguration,tenantCheckoutFlowConfig:this.tenantCheckoutFlowConfig,stepConfigs:this.generateCheckoutStepConfigs({isGift:L}),onComplete:e=>{null!=u&&u(e),j=!0},onClose:c,renderHeader:v,skuId:d??null,tenantParams:T??{},loadId:O.current,onOrderCreated:function(e){O.current=e.id,k.current=e},discoverySessionId:C,activeSubscription:E??null,initialPaymentSourceId:A??null,applicationId:M,analyticsLocations:f,analyticsObject:g,analyticsSourceLocation:y,giftContextProps:t};if("modal"===P)return(0,o.openModalLazy)(async()=>{let{UnifiedCheckoutInstance:e}=await Promise.all([n.e("339384"),n.e("793438"),n.e("154791"),n.e("725246"),n.e("312665"),n.e("208430")]).then(n.bind(n,427325));return t=>(0,r.jsx)(e,{...w,renderModalProps:t})},{...I,onCloseRequest:()=>{null!=I.onCloseRequest&&I.onCloseRequest(j,O.current),I.skipCloseModalOnCloseRequest||(0,o.closeModal)(R)},onCloseCallback:()=>{s.h.dispatch({type:"CHECKOUT_MODAL_CLOSE",didSucceed:j}),j||((0,m.S)({checkoutSucceeded:j,order:k.current}),this.trackPaymentFlowCanceled({loadId:O.current,skuId:d,skuProductLine:h,applicationId:M,discoverySessionId:C,analyticsLocation:_.analyticsLocation,analyticsLocations:f,analyticsObject:g,analyticsSourceLocation:y,isGift:L,eligibleForTrial:null!=_.trialId})),null!=I.onCloseCallback&&I.onCloseCallback(j),null!=c&&c(j,d)},modalKey:R});{let e=_.paymentModalOnClose??c,t={transitionState:a.ip.ENTERED,onClose:()=>(null!=e&&e(!1),Promise.resolve())};return(0,r.jsx)(l.Suspense,{fallback:(0,r.jsx)(S.KT,{}),children:(0,r.jsx)(N,{...w,paymentModalOnClose:e,renderModalProps:t})})}}openCheckoutModal(e){let{modalAPIOptions:t}=e;return this.renderCheckoutInstance(e,"modal",t)}renderStandaloneCheckout(e,t){return this.renderCheckoutInstance(e,"standalone",{modalKey:"standalone-checkout"},t)}}}