{"version":3,"sources":["webpack:///./transfer/components/unified/payment-type-choice/friends-and-family-card.js","webpack:///./transfer/components/unified/payment-type-choice/goods-and-services-card.js","webpack:///./transfer/components/unified/payment-type-choice/payment-type-choice.js","webpack:///./transfer/components/unified/payment-type-choice/T1213/styled-components.js","webpack:///./transfer/components/unified/payment-type-choice/T1213/styles.js","webpack:///./transfer/components/unified/payment-type-choice/T1213/index.js","webpack:///./transfer/components/unified/payment-type-choice/index.js","webpack:///./experiments/back-navigation-fix.js","webpack:///./transfer/components/unified/payment-type-choice/helpers.js"],"names":["phoneLandscapeMax","mobile","internetExplorer10and11","MSIE1011","mediaQueries","i18nPaymentType","content","i18nFunnelPage","sysColorBackgroundHighContrast","sysColorPrimaryMainHover","sysColorStructureBorderHighContrast","_PAYPAL_THEME","IconContainer","glamorous","div","marginTop","marginBottom","display","justifyContent","ButtonLink","button","flexDirection","border","borderRadius","backgroundColor","margin","position","textDecoration","maxWidth","cursor","padding","transition","color","width","alignItems","SelectContainer","boxSizing","textAlign","_ref","selected","boxShadow","borderColor","FriendsAndFamilyCard","React","Component","render","feeDescription","userAccountType","isCFPBEnabledCountry","userSubscriptionType","freeP2PType","defaultCurrencyCode","countryLocalizedName","this","props","FREEP2P_TYPE","EU","NON_EU","localCurrency","countryName","getCfpbDynamicContentKey","createElement","Media","query","concat","SIZE_MOBILE","matches","onClick","handleClick","tabindex","id","data-testid","data-nemo","name","_PersonalInfoIcon","size","aria-hidden","_BodyText","strong","_CaptionText","_defineProperty","connect","_ref2","server","user","subscriptionType","PurchaseProtectionLink","constructor","arguments","event","stopPropagation","trackClickUnifiedSend","_Link","_extends","handlePurchaseProtectionClick","href","target","GoodsAndServicesCard","className","_InsuredIcon","align","purchaseProtectionLink","Title","h2","PaymentTypeChoice","targetFlowType","pageAction","shouldUpdateTransactionData","flowType","preFlowType","isPurchase","paymentTypeIsSelected","isGuest","dispatch","UnifiedActions","currentPurchaseProtection","changedPurchaseProtection","trackGuestReturnToPagePmtChoice","handleCloseForOtherFlow","isPersonalDisabled","handleInterstitialCipFlow","isPurchaseDisabled","url","paymentTypeUrlMap","themeId","giftOption","changeThemeId","ViewActions","handleClose","componentWillUnmount","triggerSenderPhoneConfirmation","amount","currencyCode","payerId","recipient","displayName","thumbnailUrl","shouldReplaceUrl","data","redirectToDolphin","routeTo","replace","highlightPaymentType","PaymentTypes","gridAutoRows","gridRowGap","selectedPaymentType","getDefaultPaymentType","defaultPaymentType","isFriendsAndFamilySelected","PAYMENT_TYPE","PERSONAL","isGoodsAndServicesSelected","PURCHASE","_HeadingText","as","tabIndex","css","outline","bind","transaction","getFlowType","Container","styled","Header","ButtonContainer","mobileAndSmaller","bottom","OptionContainer","OptionContainerIcon","OptionContainerText","marginRight","paddingRight","gap","ContentDisplayDiv","greyBackgroundAndSmaller","PanelDetailsList","ul","ButtonLinksDiv","OverrideStyles","StyleSheet","create","acceptSpot","height","visibility","acceptSpotHidden","title","i18n","CDN_HOST_NAME","_get","serverProps","FriendsAndFamily","isSelected","_CustomersIcon","style","GoodsAndServices","_MerchantIcon","_ref3","note","overpanels","paymentTypeSelectionMessage","purchaseToPersonalTransactionPanelVisibility","purchaseToPersonalTransitionMessage","purchaseToPersonalTransactionPanel","noteLength","length","moneyPageOverPanel","recipientCountry","country","recipientAccountType","suggestedDesign","fromCurrencyCode","variant","showMessage","flowUrl","useRef","prevOverpanel","setPrevOverpanel","useState","paymentType","setPaymentType","initialPaymentType","useEffect","localFlowType","current","options","handleNextButton","newPaymentType","nextFlowType","isPayRequest","close","value","label","CardStyles","container","description","selectionOptions","onChange","nextPaymentType","tracking","Events","p2p_payment_type_transition_message","hideLabel","recipientText","_Alert","type","typeIconAriaLabel","bodyText","showNextButton","purchaseToPersonalTransactionPanelDetails","details","map","dataMsg","key","Fragment","src","alt","message","_Button","p2p_protection_overpanel_gns_pressed","tertiary","p2p_protection_overpanel_fnf_pressed","level","_SingleSelectionGroup","secondary","handleContinueButton","p2p_payment_type_continue_pressed","protection_design","suggested_protection_design","sender_currency","receiver_account_type","receiver_country","receiver_currency","note_character_length","payment_type","p2p_protection_overpanel_shown","OverpanelActions","togglePaymentTypeChoiceOverpanel","show","send","buy","paymentTypeChoice","overpanelType","selectedFundingOption","receiverFee","ownProps","undefined","updateTransactionData","isDCSendMoneyRequest","isAmountValid","SendActions","PayRequestActions","Choice","onClosed","rest","_objectWithoutProperties","_excluded","MONEY_PAGE","CTRL_CONTENT_V2_WEB","PaymentTypeChoiceSelector","CTRL_VENMO_CONTENT_MESSAGE_WEB","CTRL_CONTENT_V2_ORDER_WEB","Overpanel","p2p_protection_overpanel_dismissed","trackCancelBtn","a11yTitle","styleOverrides","hasSelectedFundingOption","fee","pxp","pathName","window","location","pathname","isGoodAndServices","includes","isFriendsAndFamily"],"mappings":"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","file":"default~contact-list~guest~send-page~universal-preview.esm.js","sourcesContent":["import PropTypes from 'prop-types'\nimport React from 'react'\nimport content from 'pp-react-l10n'\nimport { connect } from 'transfer/utils/p2p-connect'\n\nimport glamorous from 'glamorous'\nimport { mediaQueries } from 'transfer/styles'\nimport Media from 'react-media'\n\nimport { SIZE_MOBILE } from 'lib/styles/media-queries'\nimport { getCfpbDynamicContentKey } from '../../../../lib/contentUtils'\nimport { FREEP2P_TYPE } from '../../../../../../lib/constants'\nimport {\n BodyText,\n CaptionText,\n PersonalInfoIcon,\n PAYPAL_THEME,\n} from '@paypalcorp/pp-react'\n\nconst {\n phoneLandscapeMax: mobile,\n internetExplorer10and11: MSIE1011,\n} = mediaQueries\nconst i18nPaymentType = content('transfer/inc/paymentTypeChoices')\nconst i18nFunnelPage = content('transfer/page/funnel')\nconst {\n sysColorBackgroundHighContrast,\n sysColorPrimaryMainHover,\n sysColorStructureBorderHighContrast,\n} = PAYPAL_THEME\n\nconst IconContainer = glamorous.div({\n marginTop: '0%',\n marginBottom: '4%',\n display: 'flex',\n justifyContent: 'center',\n})\n\nconst ButtonLink = glamorous.button({\n display: 'flex',\n justifyContent: 'center',\n flexDirection: 'column',\n border: '0px',\n borderRadius: '10px',\n backgroundColor: 'white',\n margin: '0 auto',\n position: 'relative',\n textDecoration: 'none',\n maxWidth: '95%',\n cursor: 'pointer',\n padding: '1%',\n transition: 'border-color ease .2s',\n color: sysColorBackgroundHighContrast,\n width: '100%',\n alignItems: 'center',\n [MSIE1011]: {\n /*\n * This media query will add a bottom margin to the friends and family card\n * because IE doesn't understand grids in the conventional way. So we need\n * to add some spacing between the two cards.\n */\n marginBottom: '3%',\n },\n})\n\nconst SelectContainer = glamorous.div(\n {\n display: 'flex',\n justifyContent: 'center',\n flexDirection: 'column',\n boxSizing: 'border-box',\n borderRadius: '6px',\n backgroundColor: 'white',\n margin: '1% auto',\n position: 'relative',\n textDecoration: 'none',\n maxWidth: '28rem',\n cursor: 'pointer',\n padding: '6%',\n color: sysColorBackgroundHighContrast,\n width: '100%',\n transition: 'border-color ease .2s',\n textAlign: 'center',\n [mobile]: {\n maxWidth: '95%',\n },\n },\n ({ selected }) => ({\n border: selected ? '3px solid' : '1px solid',\n boxShadow: selected ? '0 0 0 0.375rem rgb(16 114 235 / 16%)' : 'none',\n borderColor: selected\n ? sysColorPrimaryMainHover\n : sysColorStructureBorderHighContrast,\n ':hover': {\n borderColor: sysColorPrimaryMainHover,\n },\n })\n)\n\nclass FriendsAndFamilyCard extends React.Component {\n static propTypes = {\n selected: PropTypes.bool.isRequired,\n handleClick: PropTypes.func.isRequired,\n freeP2PType: PropTypes.string.isRequired,\n isCFPBEnabledCountry: PropTypes.bool,\n userAccountType: PropTypes.string.isRequired,\n userSubscriptionType: PropTypes.string.isRequired,\n defaultCurrencyCode: PropTypes.string.isRequired,\n countryLocalizedName: PropTypes.string.isRequired,\n }\n\n static defaultProps = {\n selected: false,\n }\n\n render() {\n const {\n selected,\n userAccountType,\n isCFPBEnabledCountry,\n userSubscriptionType,\n freeP2PType,\n defaultCurrencyCode,\n countryLocalizedName,\n } = this.props\n\n let feeDescription\n switch (freeP2PType) {\n case FREEP2P_TYPE.EU:\n feeDescription = i18nFunnelPage('freep2p.description')\n break\n case FREEP2P_TYPE.NON_EU:\n feeDescription = i18nFunnelPage('freep2p.descriptionNonEU', {\n localCurrency: defaultCurrencyCode,\n countryName: countryLocalizedName,\n })\n break\n default:\n feeDescription = i18nPaymentType(\n getCfpbDynamicContentKey(\n 'personal.description',\n isCFPBEnabledCountry,\n userAccountType,\n userSubscriptionType\n )\n )\n }\n\n return (\n \n {matches => (\n \n \n \n \n \n {i18nPaymentType('personal.title')}\n {matches ? (\n {feeDescription}\n ) : (\n {feeDescription}\n )}\n \n \n )}\n \n )\n }\n}\n\nexport default connect(({ server, user }) => ({\n freeP2PType: server.freeP2PType,\n userAccountType: server.userAccountType,\n userSubscriptionType: user.subscriptionType,\n defaultCurrencyCode: server.defaultCurrencyCode,\n countryLocalizedName: server.countryLocalizedName,\n}))(FriendsAndFamilyCard)\n","/* eslint consumerweb/require-pagename:0 */\n\nimport PropTypes from 'prop-types'\nimport React from 'react'\nimport Media from 'react-media'\n\nimport glamorous from 'glamorous'\n\nimport { mediaQueries } from 'transfer/styles'\nimport { SIZE_MOBILE } from 'lib/styles/media-queries'\nimport { trackClickUnifiedSend } from 'transfer/utils/unified-send-analytics'\nimport content from 'pp-react-l10n'\n\nconst i18nPaymentType = content('transfer/inc/paymentTypeChoices')\nconst { phoneLandscapeMax: mobile } = mediaQueries\nimport {\n BodyText,\n CaptionText,\n InsuredIcon,\n Link,\n PAYPAL_THEME,\n} from '@paypalcorp/pp-react'\n\nconst {\n sysColorBackgroundHighContrast,\n sysColorPrimaryMainHover,\n sysColorStructureBorderHighContrast,\n} = PAYPAL_THEME\n\nconst IconContainer = glamorous.div({\n margin: '0 0 4% 0',\n display: 'flex',\n justifyContent: 'center',\n})\n\nconst ButtonLink = glamorous.button({\n display: 'flex',\n justifyContent: 'center',\n flexDirection: 'column',\n backgroundColor: 'white',\n margin: '0 auto',\n border: '0px',\n position: 'relative',\n textDecoration: 'none',\n padding: '1%',\n maxWidth: '95%',\n cursor: 'pointer',\n color: sysColorBackgroundHighContrast,\n width: '100%',\n alignItems: 'center',\n})\n\nconst SelectContainer = glamorous.div(\n {\n display: 'flex',\n justifyContent: 'center',\n flexDirection: 'column',\n border: '3px solid',\n boxSizing: 'border-box',\n borderRadius: '6px',\n backgroundColor: 'white',\n margin: '1% auto',\n position: 'relative',\n textDecoration: 'none',\n maxWidth: '28rem',\n cursor: 'pointer',\n padding: '6%',\n color: sysColorBackgroundHighContrast,\n width: '100%',\n transition: 'border-color ease .2s',\n textAlign: 'center',\n [mobile]: {\n maxWidth: '95%',\n },\n // [mobile]: {\n // minHeight: '240px',\n // },\n },\n ({ selected }) => ({\n border: selected ? '3px solid' : '1px solid',\n boxShadow: selected ? '0 0 0 0.375rem rgb(16 114 235 / 16%)' : 'none',\n // eslint-disable-next-line no-nested-ternary\n borderColor: selected\n ? sysColorPrimaryMainHover\n : sysColorStructureBorderHighContrast,\n ':hover': {\n // eslint-disable-next-line no-nested-ternary\n borderColor: sysColorPrimaryMainHover,\n },\n })\n)\n\nclass PurchaseProtectionLink extends React.Component {\n handlePurchaseProtectionClick = event => {\n event.stopPropagation()\n trackClickUnifiedSend('purchaseProtection')\n }\n\n render() {\n return (\n \n {matches => (\n \n {i18nPaymentType('goods.purchaseProtection')}\n \n )}\n \n )\n }\n}\n\nclass GoodsAndServicesCard extends React.Component {\n static propTypes = {\n selected: PropTypes.bool.isRequired,\n handleClick: PropTypes.func.isRequired,\n }\n\n static defaultProps = {\n selected: false,\n }\n\n render() {\n const { selected } = this.props\n\n // We must move the text outside the button, due to HTML5 not allowing links inside buttons.\n return (\n \n {matches => (\n \n \n \n \n \n \n {i18nPaymentType('goods.title')}\n \n {matches ? (\n \n {i18nPaymentType('goods.description', {\n purchaseProtectionLink: ,\n })}\n \n ) : (\n \n {i18nPaymentType('goods.description', {\n purchaseProtectionLink: ,\n })}\n \n )}\n \n \n )}\n \n )\n }\n}\n\nexport default GoodsAndServicesCard\n","import PropTypes from 'prop-types'\nimport React from 'react'\nimport { connect } from 'transfer/utils/p2p-connect'\nimport { routeTo } from 'transfer/utils/routeHelper'\nimport glamorous from 'glamorous'\nimport { mediaQueries } from 'transfer/styles'\n\nimport * as UnifiedActions from 'transfer/actions/unified-actions'\nimport * as ViewActions from 'transfer/actions/Actions'\nimport { changeThemeId } from 'transfer/actions/theme'\nimport {\n trackClickUnifiedSend,\n trackGuestReturnToPagePmtChoice,\n} from 'transfer/utils/unified-send-analytics'\nimport content from 'pp-react-l10n'\nimport { HeadingText } from '@paypalcorp/pp-react'\nimport FriendsAndFamilyCard from './friends-and-family-card'\nimport GoodsAndServicesCard from './goods-and-services-card'\nimport { paymentTypeUrlMap } from './index'\nimport { getFlowType } from '../../../utils/url-utils'\nimport { redirectToDolphin } from '../../../actions/unified-actions'\nimport { handleInterstitialCipFlow } from '../../../utils/homeInfoUtils'\nimport { getDefaultPaymentType } from 'transfer/components/unified/payment-type-choice/helpers'\nimport { PAYMENT_TYPE } from '../../../../../../lib/constants'\n\nconst i18nPaymentType = content('transfer/inc/paymentTypeChoices')\nconst { phoneLandscapeMax: mobile } = mediaQueries\n\nconst Title = glamorous.h2({\n marginTop: 0,\n})\n\nexport class PaymentTypeChoice extends React.Component {\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n flowType: PropTypes.string,\n handleClose: PropTypes.func,\n handleCloseForOtherFlow: PropTypes.func,\n isGuest: PropTypes.bool,\n isPurchase: PropTypes.bool,\n hasSelectedFundingOption: PropTypes.bool,\n themeId: PropTypes.string,\n giftOption: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.shape({\n giftOption: PropTypes.string,\n }),\n ]),\n triggerSenderPhoneConfirmation: PropTypes.bool,\n amount: PropTypes.any,\n currencyCode: PropTypes.string,\n thumbnailUrl: PropTypes.string,\n displayName: PropTypes.string,\n recipient: PropTypes.string,\n payerId: PropTypes.string,\n paymentTypeIsSelected: PropTypes.bool,\n isPersonalDisabled: PropTypes.bool,\n isPurchaseDisabled: PropTypes.bool,\n highlightPaymentType: PropTypes.string,\n shouldReplaceUrl: PropTypes.bool,\n }\n\n url = null\n targetFlowType = null\n\n // we route on unmount because if we route immediately after dispatching the action to close the overpanel,\n // it's too fast and the overpanel stays attached to the DOM.. so we let the overpanel unmounting do the routing\n componentWillUnmount() {\n const {\n triggerSenderPhoneConfirmation,\n amount,\n currencyCode,\n payerId,\n recipient,\n displayName,\n thumbnailUrl,\n shouldReplaceUrl = false,\n } = this.props\n\n if (\n this.props.flowType !== 'payRequest' &&\n triggerSenderPhoneConfirmation\n ) {\n const flowType = this.targetFlowType || this.props.flowType\n const data = {\n flowType,\n amount,\n currencyCode,\n payerId,\n recipient,\n displayName,\n thumbnailUrl,\n }\n this.props.dispatch(redirectToDolphin(data))\n } else if (this.url && this.url !== 'payRequest') {\n routeTo(this.url, { replace: shouldReplaceUrl })\n }\n }\n\n handleCloseForOtherFlow = targetFlowType => {\n let shouldUpdateTransactionData = false\n\n if (this.props.flowType === 'payRequest') {\n const preFlowType = this.props.isPurchase ? 'buy' : 'send'\n if (!this.props.paymentTypeIsSelected || preFlowType !== targetFlowType) {\n shouldUpdateTransactionData = true\n }\n } else if (targetFlowType && targetFlowType !== this.props.flowType) {\n shouldUpdateTransactionData = true\n }\n\n // don't do anything unless target flow is different from current\n if (shouldUpdateTransactionData) {\n shouldUpdateTransactionData = true\n this.targetFlowType = targetFlowType\n let pageAction\n if (this.props.isGuest) {\n pageAction =\n targetFlowType === 'send' ? 'guestSelectFF' : 'guestSelectGS'\n } else {\n pageAction = targetFlowType === 'send' ? 'selectFF' : 'selectGS'\n }\n\n trackClickUnifiedSend(pageAction)\n\n this.props.dispatch(\n UnifiedActions.changedPurchaseProtection({\n currentPurchaseProtection: targetFlowType === 'buy',\n changedPurchaseProtection: true,\n })\n )\n if (this.props.isGuest) {\n trackGuestReturnToPagePmtChoice(pageAction)\n }\n }\n\n this.props.handleCloseForOtherFlow(shouldUpdateTransactionData, {\n isPurchase: targetFlowType === 'buy',\n })\n }\n\n handleClick = targetFlowType => {\n let shouldUpdateTransactionData = false\n\n if (this.props.isPersonalDisabled && targetFlowType === 'send') {\n return handleInterstitialCipFlow(targetFlowType)\n }\n if (this.props.isPurchaseDisabled && targetFlowType === 'buy') {\n return handleInterstitialCipFlow(targetFlowType)\n }\n\n // the handleClose is closely coupled to send flow\n // this is hack for other flows so that we do not need to do the routing\n if (this.props.handleCloseForOtherFlow) {\n return this.handleCloseForOtherFlow(targetFlowType)\n }\n\n const url =\n this.props.flowType !== 'payRequest'\n ? paymentTypeUrlMap[targetFlowType]\n : 'payRequest'\n\n if (this.props.flowType === 'payRequest') {\n const preFlowType = this.props.isPurchase ? 'buy' : 'send'\n if (!this.props.paymentTypeIsSelected || preFlowType !== targetFlowType) {\n shouldUpdateTransactionData = true\n }\n } else if (targetFlowType && targetFlowType !== this.props.flowType) {\n shouldUpdateTransactionData = true\n }\n\n // don't do anything unless target flow is different from current\n if (shouldUpdateTransactionData) {\n this.url = url\n this.targetFlowType = targetFlowType\n shouldUpdateTransactionData = true\n const pageAction = targetFlowType === 'send' ? 'selectFF' : 'selectGS'\n trackClickUnifiedSend(pageAction)\n // purely for instrumentation\n this.props.dispatch(\n UnifiedActions.changedPurchaseProtection({\n currentPurchaseProtection: targetFlowType === 'buy',\n changedPurchaseProtection: true,\n })\n )\n }\n const { themeId, giftOption } = this.props\n if (targetFlowType === 'buy' && themeId && giftOption) {\n this.props.dispatch(changeThemeId(''))\n this.props.dispatch(ViewActions.changeGiftOption(''))\n }\n this.props.dispatch(ViewActions.setPaymentTypeSelected(true))\n this.props.handleClose(shouldUpdateTransactionData, {\n isPurchase: targetFlowType === 'buy',\n })\n }\n\n render() {\n const { flowType, isPurchase, highlightPaymentType } = this.props\n\n const PaymentTypes = glamorous.div({\n margin: '8% auto',\n display: 'grid',\n gridAutoRows: '1fr',\n gridRowGap: '10px',\n [mobile]: {\n margin: '8%',\n },\n })\n\n const selectedPaymentType = getDefaultPaymentType({\n flowType,\n isPurchase,\n defaultPaymentType: highlightPaymentType,\n })\n const isFriendsAndFamilySelected =\n selectedPaymentType === PAYMENT_TYPE.PERSONAL\n const isGoodsAndServicesSelected =\n selectedPaymentType === PAYMENT_TYPE.PURCHASE\n\n return (\n
\n \n {i18nPaymentType('main.title')}\n \n \n \n \n \n
\n )\n }\n}\n\nexport default connect(({ server, user, recipient, amount, transaction }) => ({\n flowType: getFlowType(),\n triggerSenderPhoneConfirmation:\n server.triggerSenderPhoneConfirmation ||\n user.triggerSenderPhoneConfirmation,\n displayName: recipient.displayName,\n thumbnailUrl: recipient.thumbnailUrl,\n amount: amount.amount,\n currencyCode: amount.currencyCode,\n recipient: recipient.recipient,\n payerId: recipient.payerId,\n isPurchase: transaction.isPurchase,\n paymentTypeIsSelected: transaction.paymentTypeIsSelected,\n isPersonalDisabled: user.isPersonalDisabled,\n isPurchaseDisabled: user.isPurchaseDisabled,\n highlightPaymentType: recipient.highlightPaymentType,\n}))(PaymentTypeChoice)\n","import styled from '@emotion/styled'\nimport {\n greyBackgroundAndSmaller,\n mobileAndSmaller,\n} from '../../../../../lib/styles/media-queries'\n\nexport const Container = styled.div({\n display: 'flex',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center',\n maxWidth: '446px',\n})\n\nexport const Header = styled.div({\n textAlign: 'center',\n marginBottom: '32px',\n})\n\nexport const ButtonContainer = styled.div({\n marginTop: '32px',\n textAlign: 'center',\n [mobileAndSmaller]: {\n width: '100%',\n padding: '1rem',\n position: 'absolute',\n bottom: 0,\n },\n})\n\nexport const OptionContainer = styled.div({\n display: 'flex',\n width: '100%',\n})\n\nexport const OptionContainerIcon = styled.div({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n margin: '32px 16px',\n [mobileAndSmaller]: {\n margin: '16px',\n },\n})\n\nexport const OptionContainerText = styled.div({\n textAlign: 'left',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n maxWidth: '100%',\n marginRight: '16px',\n paddingRight: '7px',\n gap: '6px',\n [mobileAndSmaller]: {\n margin: '16px 4px',\n },\n})\n\nexport const ContentDisplayDiv = styled.div({\n padding: '0 4.25rem',\n [greyBackgroundAndSmaller]: {\n padding: 0,\n },\n})\n\nexport const PanelDetailsList = styled.ul({\n marginTop: '1.25rem',\n})\n\nexport const ButtonLinksDiv = styled.div({\n textAlign: 'center',\n margin: '3rem 0 1.5rem',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n})\n","import { StyleSheet } from '../../../../../lib/paypalphrodite'\nimport { mobileAndSmaller } from '../../../../../lib/styles/media-queries'\nexport { CardStyles } from '../../../../../lib/styles/styles'\n\nexport const OverrideStyles = StyleSheet.create({\n acceptSpot: {\n width: '2rem',\n height: '2rem',\n border: 'none',\n padding: 'unset',\n visibility: 'visible',\n },\n purchaseProtectionLink: {\n marginTop: '14px',\n marginBottom: '14px',\n textAlign: 'center',\n },\n acceptSpotHidden: {\n visibility: 'hidden',\n },\n button: {\n [mobileAndSmaller]: {\n width: '100%',\n },\n },\n title: {\n textAlign: 'center',\n },\n})\n","/* eslint-disable consumerweb/require-pagename */\nimport React, { useEffect, useRef, useState } from 'react'\nimport _ from 'lodash'\nimport PropTypes from 'prop-types'\nimport {\n ButtonContainer,\n ButtonLinksDiv,\n Container,\n ContentDisplayDiv,\n OptionContainer,\n OptionContainerIcon,\n OptionContainerText,\n Header,\n PanelDetailsList,\n} from './styled-components'\nimport { CardStyles, OverrideStyles } from './styles'\nimport { css } from '../../../../../lib/paypalphrodite'\nimport content from 'pp-react-l10n'\nimport {\n Alert,\n Button,\n BodyText,\n CaptionText,\n HeadingText,\n Link,\n SingleSelectionGroup,\n PAYPAL_THEME,\n CustomersIcon,\n MerchantIcon,\n} from '@paypalcorp/pp-react'\nimport { PAYMENT_TYPE } from '../../../../../../../lib/constants'\nimport { paymentTypeUrlMap } from '..'\nimport {\n trackClickUnifiedSend,\n trackGuestReturnToPagePmtChoice,\n} from '../../../../utils/unified-send-analytics'\nimport { connect } from 'transfer/utils/p2p-connect'\nimport * as UnifiedActions from 'transfer/actions/unified-actions'\nimport { routeTo } from '../../../../utils/routeHelper'\nimport { handleInterstitialCipFlow } from '../../../../utils/homeInfoUtils'\nimport * as ViewActions from '../../../../actions/Actions'\nimport {\n redirectToDolphin,\n togglePaymentTypeChoiceOverpanel,\n} from '../../../../actions/unified-actions'\nimport { getDefaultPaymentType } from 'transfer/components/unified/payment-type-choice/helpers'\nimport { tracking } from '../../../../../lib/analytics/mParticle'\nimport Events from '../../../../../lib/analytics/eventTags'\nimport serverProps from '../../../../utils/serverProps'\nimport * as OverpanelActions from '../../../../../transfer/actions/overpanels'\n\nconst { sysColorBackgroundHighContrast } = PAYPAL_THEME\n\nconst i18nPaymentType = content('transfer/inc/paymentTypeChoices')\nconst purchaseProtectionLink = '/webapps/mpp/paypal-safety-and-security'\nconst i18n = content('transfer/alert')\nconst CDN_HOST_NAME = _.get(serverProps, 'cdnHostName')\n\nconst FriendsAndFamily = ({ selectedPaymentType }) => {\n const isSelected = selectedPaymentType === PAYMENT_TYPE.PERSONAL\n\n return (\n \n \n \n \n \n \n {i18nPaymentType('t12.personal.title')}\n \n \n {i18nPaymentType('t12.personal.description')}\n \n \n \n )\n}\n\nFriendsAndFamily.propTypes = {\n selectedPaymentType: PropTypes.string,\n}\n\nconst GoodsAndServices = ({ selectedPaymentType }) => {\n const isSelected = selectedPaymentType === PAYMENT_TYPE.PURCHASE\n\n return (\n \n \n \n \n \n \n {i18nPaymentType('t12.purchaseProtection.title')}\n \n \n {i18nPaymentType('t12.purchaseProtection.description')}\n \n \n \n )\n}\n\nGoodsAndServices.propTypes = {\n selectedPaymentType: PropTypes.string,\n}\n\nconst PaymentTypeChoiceSelector = props => {\n const {\n amount,\n variant,\n isGuest,\n payerId,\n flowType,\n dispatch,\n recipient,\n isPurchase,\n displayName,\n handleClose,\n showMessage,\n thumbnailUrl,\n currencyCode,\n isPersonalDisabled,\n isPurchaseDisabled,\n highlightPaymentType,\n paymentTypeIsSelected,\n purchaseToPersonalTransitionMessage,\n purchaseToPersonalTransactionPanel,\n purchaseToPersonalTransactionPanelVisibility,\n handleCloseForOtherFlow,\n paymentTypeSelectionMessage,\n triggerSenderPhoneConfirmation,\n moneyPageOverPanel,\n suggestedDesign,\n fromCurrencyCode,\n recipientAccountType,\n recipientCountry,\n noteLength,\n shouldReplaceUrl = false,\n } = props\n\n const flowUrl = useRef(null)\n const targetFlowType = useRef(flowType)\n const [prevOverpanel, setPrevOverpanel] = useState(null)\n const [paymentType, setPaymentType] = useState(\n getDefaultPaymentType({\n flowType,\n isPurchase,\n defaultPaymentType: highlightPaymentType,\n })\n )\n\n const initialPaymentType = useRef(paymentType)\n\n useEffect(() => {\n return function cleanup() {\n if (flowType !== 'payRequest' && triggerSenderPhoneConfirmation) {\n const localFlowType = targetFlowType.current\n const data = {\n amount,\n payerId,\n flowType: localFlowType,\n recipient,\n displayName,\n currencyCode,\n thumbnailUrl,\n }\n\n dispatch(redirectToDolphin(data))\n } else if (flowUrl.current && flowUrl.current !== 'payRequest') {\n routeTo(flowUrl.current, { replace: shouldReplaceUrl })\n }\n }\n }, [])\n\n useEffect(() => {\n if (purchaseToPersonalTransactionPanelVisibility) {\n setPrevOverpanel('purchaseToPersonalTransactionPanel')\n }\n }, [purchaseToPersonalTransactionPanelVisibility])\n\n const close = nextFlowType => {\n const isPayRequest = flowType === 'payRequest'\n let shouldUpdateTransactionData = false\n\n if (isPayRequest) {\n if (!paymentTypeIsSelected) {\n shouldUpdateTransactionData = true\n } else {\n const preFlowType = isPurchase ? 'buy' : 'send'\n if (preFlowType !== nextFlowType) {\n shouldUpdateTransactionData = true\n }\n }\n } else if (nextFlowType && nextFlowType !== flowType) {\n shouldUpdateTransactionData = true\n }\n\n if (shouldUpdateTransactionData) {\n let pageAction\n shouldUpdateTransactionData = true\n targetFlowType.current = nextFlowType\n if (isGuest) {\n pageAction = nextFlowType === 'send' ? 'guestSelectFF' : 'guestSelectGS'\n } else {\n pageAction = nextFlowType === 'send' ? 'selectFF' : 'selectGS'\n }\n\n trackClickUnifiedSend(pageAction)\n dispatch(\n UnifiedActions.changedPurchaseProtection({\n currentPurchaseProtection: nextFlowType === 'buy',\n changedPurchaseProtection: true,\n })\n )\n\n if (isGuest) {\n trackGuestReturnToPagePmtChoice(pageAction)\n }\n\n handleCloseForOtherFlow(shouldUpdateTransactionData, {\n isPurchase: nextFlowType === 'buy',\n })\n }\n }\n\n const handleNextButton = newPaymentType => {\n const nextFlowType =\n newPaymentType === PAYMENT_TYPE.PURCHASE ? 'buy' : 'send'\n let shouldUpdateTransactionData = false\n\n const isPayRequest = flowType === 'payRequest'\n\n if (isPersonalDisabled && nextFlowType === 'send') {\n return handleInterstitialCipFlow(nextFlowType)\n }\n\n if (isPurchaseDisabled && nextFlowType === 'buy') {\n return handleInterstitialCipFlow(nextFlowType)\n }\n\n if (handleCloseForOtherFlow) {\n return close(nextFlowType)\n }\n\n const url = !isPayRequest ? paymentTypeUrlMap[nextFlowType] : 'payRequest'\n\n if (isPayRequest) {\n if (!paymentTypeIsSelected) {\n shouldUpdateTransactionData = true\n } else {\n const preFlowType = isPurchase ? 'buy' : 'send'\n if (preFlowType !== nextFlowType) {\n shouldUpdateTransactionData = true\n }\n }\n } else if (nextFlowType && nextFlowType !== flowType) {\n shouldUpdateTransactionData = true\n }\n\n if (shouldUpdateTransactionData) {\n flowUrl.current = url\n targetFlowType.current = nextFlowType\n shouldUpdateTransactionData = true\n }\n\n dispatch(ViewActions.setPaymentTypeSelected(true))\n handleClose(shouldUpdateTransactionData, {\n isPurchase: nextFlowType === 'buy',\n })\n }\n\n const handleContinueButton = () => {\n trackClickUnifiedSend('continue')\n tracking(\n Events.p2p_payment_type_continue_pressed({\n protection_design: moneyPageOverPanel,\n suggested_protection_design: suggestedDesign,\n sender_currency: fromCurrencyCode,\n receiver_account_type: recipientAccountType,\n receiver_country: recipientCountry,\n receiver_currency: currencyCode,\n note_character_length: noteLength,\n payment_type: paymentType,\n })\n )\n if (\n purchaseToPersonalTransactionPanel &&\n initialPaymentType.current === PAYMENT_TYPE.PURCHASE &&\n paymentType === PAYMENT_TYPE.PERSONAL\n ) {\n tracking(Events.p2p_protection_overpanel_shown())\n dispatch(\n OverpanelActions.setPurchaseToPersonalTransactionPanelVisibility(true)\n )\n dispatch(togglePaymentTypeChoiceOverpanel({ show: false }))\n return\n }\n handleNextButton(paymentType)\n }\n\n const changePaymentType = event => {\n const nextPaymentType = event.target.value\n trackClickUnifiedSend(\n nextPaymentType === PAYMENT_TYPE.PERSONAL ? 'selectFF' : 'selectGS'\n )\n if (\n purchaseToPersonalTransitionMessage &&\n nextPaymentType === PAYMENT_TYPE.PERSONAL\n ) {\n tracking(Events.p2p_payment_type_transition_message())\n }\n setPaymentType(nextPaymentType)\n }\n\n let options\n if (variant === 'T12') {\n options = [\n {\n value: PAYMENT_TYPE.PERSONAL,\n label: ,\n className: css(CardStyles.container),\n },\n {\n value: PAYMENT_TYPE.PURCHASE,\n label: ,\n className: css(CardStyles.container),\n },\n ]\n } else if (variant === 'T13') {\n options = [\n {\n value: PAYMENT_TYPE.PURCHASE,\n label: ,\n className: css(CardStyles.container),\n },\n {\n value: PAYMENT_TYPE.PERSONAL,\n label: ,\n className: css(CardStyles.container),\n },\n ]\n }\n\n const selectionOptions = {\n label: i18nPaymentType('t12.label'),\n align: 'vertical',\n value: paymentType,\n name: 'paymentType',\n onChange: changePaymentType,\n hideLabel: true,\n options,\n }\n\n const recipientText = displayName || recipient\n let description\n if (\n showMessage &&\n paymentTypeSelectionMessage &&\n paymentTypeSelectionMessage.length > 0\n ) {\n description = (\n \n {paymentTypeSelectionMessage}\n \n )\n } else if (purchaseToPersonalTransitionMessage) {\n if (paymentType === PAYMENT_TYPE.PERSONAL) {\n description = (\n \n {purchaseToPersonalTransitionMessage}\n \n )\n }\n } else {\n description = (\n \n {i18nPaymentType('t12.description', { recipient: recipientText })}\n \n )\n }\n\n const showNextButton =\n paymentType === PAYMENT_TYPE.PERSONAL ||\n paymentType === PAYMENT_TYPE.PURCHASE\n\n const purchaseToPersonalTransactionPanelDetails =\n purchaseToPersonalTransactionPanel &&\n purchaseToPersonalTransactionPanel.details.map((dataMsg, key) => (\n \n {dataMsg}\n \n ))\n\n return (\n \n {purchaseToPersonalTransactionPanelVisibility ||\n prevOverpanel === 'purchaseToPersonalTransactionPanel' ? (\n <>\n \n \n \n {purchaseToPersonalTransactionPanel.title}\n \n {purchaseToPersonalTransactionPanel.message}\n \n {purchaseToPersonalTransactionPanelDetails}\n \n \n {\n tracking(Events.p2p_protection_overpanel_gns_pressed())\n handleNextButton(PAYMENT_TYPE.PURCHASE)\n }}\n >\n {i18nPaymentType('SwitchToGoodsAndServices')}\n \n {\n tracking(Events.p2p_protection_overpanel_fnf_pressed())\n handleNextButton(PAYMENT_TYPE.PERSONAL)\n }}\n style={{ marginTop: '1.5rem' }}\n >\n {i18nPaymentType('KeepFriendsAndFamily')}\n \n \n \n \n ) : (\n <>\n
\n \n {i18nPaymentType('t12.label')}\n \n {description}\n
\n \n trackClickUnifiedSend('purchaseProtection')}\n href={purchaseProtectionLink}\n target=\"_blank\"\n className={css(OverrideStyles.purchaseProtectionLink)}\n >\n {i18nPaymentType('purchaseProtectionGnsLink')}\n \n \n {showNextButton && (\n \n {i18nPaymentType('t12.continueButtonText')}\n \n )}\n \n \n )}\n
\n )\n}\n\nPaymentTypeChoiceSelector.propTypes = {\n showMessage: PropTypes.bool,\n dispatch: PropTypes.func.isRequired,\n flowType: PropTypes.string,\n handleClose: PropTypes.func,\n handleCloseForOtherFlow: PropTypes.func,\n highlightPaymentType: PropTypes.string,\n isGuest: PropTypes.bool,\n hasSelectedFundingOption: PropTypes.bool,\n triggerSenderPhoneConfirmation: PropTypes.bool,\n amount: PropTypes.any,\n currencyCode: PropTypes.string,\n thumbnailUrl: PropTypes.string,\n displayName: PropTypes.string,\n recipient: PropTypes.string,\n payerId: PropTypes.string,\n isPurchase: PropTypes.bool,\n paymentTypeIsSelected: PropTypes.bool,\n purchaseToPersonalTransactionPanelVisibility: PropTypes.bool,\n purchaseToPersonalTransitionMessage: PropTypes.string,\n purchaseToPersonalTransactionPanel: PropTypes.object,\n isPersonalDisabled: PropTypes.bool,\n isPurchaseDisabled: PropTypes.bool,\n variant: PropTypes.oneOf(['T12', 'T13']),\n paymentTypeSelectionMessage: PropTypes.string,\n moneyPageOverPanel: PropTypes.string,\n noteLength: PropTypes.number,\n recipientCountry: PropTypes.string,\n recipientAccountType: PropTypes.string,\n fromCurrencyCode: PropTypes.string,\n suggestedDesign: PropTypes.string,\n shouldReplaceUrl: PropTypes.bool,\n}\n\nexport default connect(\n ({ server, transaction, recipient, amount, user, note, overpanels }) => ({\n paymentTypeSelectionMessage: recipient.paymentTypeSelectionMessage,\n transaction: transaction.isPurchase,\n purchaseToPersonalTransactionPanelVisibility:\n overpanels.purchaseToPersonalTransactionPanelVisibility,\n highlightPaymentType: recipient.highlightPaymentType,\n triggerSenderPhoneConfirmation:\n server.triggerSenderPhoneConfirmation ||\n user.triggerSenderPhoneConfirmation,\n displayName: recipient.displayName,\n thumbnailUrl: recipient.thumbnailUrl,\n amount: amount.amount,\n currencyCode: amount.currencyCode,\n recipient: recipient.recipient,\n payerId: recipient.payerId,\n isPurchase: transaction.isPurchase,\n paymentTypeIsSelected: transaction.paymentTypeIsSelected,\n purchaseToPersonalTransitionMessage:\n _.get(\n transaction,\n 'paymentTypeTransitions.purchaseToPersonalTransition.message'\n ) || '',\n purchaseToPersonalTransactionPanel: _.get(\n transaction,\n 'paymentTypeTransitions.purchaseToPersonalTransition.panel'\n ),\n isPersonalDisabled: user.isPersonalDisabled,\n isPurchaseDisabled: user.isPurchaseDisabled,\n noteLength: note.note.length,\n moneyPageOverPanel: recipient.moneyPageOverPanel,\n recipientCountry: recipient.country,\n recipientAccountType: recipient.recipientAccountType,\n suggestedDesign: recipient.suggestedDesign,\n fromCurrencyCode: amount.fromCurrencyCode,\n })\n)(PaymentTypeChoiceSelector)\n","// @flow\nimport React from 'react'\nimport content from 'pp-react-l10n'\nimport PaymentTypeChoice from './payment-type-choice'\nimport Overpanel from 'react-components/overpanel'\nimport { connect } from 'transfer/utils/p2p-connect'\nimport {\n togglePaymentTypeChoiceOverpanel,\n updateTransactionData,\n} from 'transfer/actions/unified-actions'\nimport { getFlowType } from 'transfer/utils/url-utils'\nimport { PAYMENT_TYPE, MONEY_PAGE } from '../../../../../../lib/constants'\nimport { trackCancelBtn } from '../../../utils/unified-send-analytics'\nimport * as SendActions from '../../../actions/send'\nimport * as PayRequestActions from '../../../actions/pay-request'\nimport { isBackNavigationFixed } from 'experiments/back-navigation-fix'\n\n// T12-T13 Variants\nimport PaymentTypeChoiceSelector from './T1213'\nimport { tracking } from '../../../../lib/analytics/mParticle'\nimport Events from '../../../../lib/analytics/eventTags'\nimport * as OverpanelActions from '../../../actions/overpanels'\n\nconst i18nPaymentType = content('transfer/inc/paymentTypeChoices')\n\nconst paymentTypeUrlMap = {\n [PAYMENT_TYPE.PERSONAL]: '/homepage/send/preview',\n [PAYMENT_TYPE.PURCHASE]: '/homepage/buy/preview',\n send: '/homepage/send/preview',\n buy: '/homepage/buy/preview',\n}\n\ntype Props = Overpanel & {\n flowType?: string,\n handleCloseForOtherFlow?: () => {},\n isGuest?: boolean,\n purchaseToPersonalTransactionPanelVisibility: boolean,\n}\n\nfunction PaymentTypeChoiceOverpanel({\n show = false,\n handleClose,\n onClosed,\n overpanelType,\n flowType,\n selectedFundingOption,\n receiverFee,\n isAmountValid,\n currencyCode,\n triggerSenderPhoneConfirmation,\n isDCSendMoneyRequest,\n dispatch,\n purchaseToPersonalTransactionPanelVisibility,\n ...rest\n}: Props) {\n let Choice\n\n switch (overpanelType) {\n case MONEY_PAGE.CTRL_CONTENT_V2_WEB: // T12\n Choice = props => \n break\n case MONEY_PAGE.CTRL_VENMO_CONTENT_MESSAGE_WEB: // T14\n Choice = props => (\n \n )\n break\n case MONEY_PAGE.CTRL_CONTENT_V2_ORDER_WEB: // T13\n Choice = props => \n break\n default:\n Choice = PaymentTypeChoice\n }\n\n const handleTrackingOverPanelCloseEvent = () =>\n purchaseToPersonalTransactionPanelVisibility\n ? tracking(Events.p2p_protection_overpanel_dismissed())\n : trackCancelBtn()\n\n return (\n {\n handleClose()\n handleTrackingOverPanelCloseEvent()\n }}\n a11yTitle={i18nPaymentType('main.title')}\n onClosed={onClosed}\n styleOverrides={{\n content: {\n display: 'flex',\n justifyContent: 'center',\n },\n }}\n >\n \n \n )\n}\n\n/**\n * Payment type choice overpanel: goods and service or friends and family\n */\nexport default connect(\n ({ overpanels, recipient, transaction, amount }) => ({\n show:\n overpanels.paymentTypeChoice ||\n overpanels.purchaseToPersonalTransactionPanelVisibility,\n purchaseToPersonalTransactionPanelVisibility:\n overpanels.purchaseToPersonalTransactionPanelVisibility,\n overpanelType: recipient.moneyPageOverPanel,\n flowType: getFlowType(),\n selectedFundingOption: transaction.selectedFundingOption || {},\n receiverFee: amount.receiverFee,\n currencyCode: amount.currencyCode,\n }),\n (dispatch, ownProps) => ({\n handleClose: (shouldUpdateTransactionData = false, { isPurchase } = {}) => {\n if (shouldUpdateTransactionData) {\n dispatch(updateTransactionData({ isPurchase }))\n\n // Fetch Funding Options here if user not yet choose payment type\n // So user lands to preview page directly after the payment type is selected\n // Do not fetch funding options if its phone confirmation flow\n if (\n !ownProps.isDCSendMoneyRequest &&\n !ownProps.flowType &&\n ownProps.isAmountValid &&\n !ownProps.triggerSenderPhoneConfirmation\n ) {\n dispatch(SendActions.fetchFundingOptions())\n }\n\n if (\n ownProps.flowType === 'payRequest' &&\n !ownProps.paymentTypeIsSelected &&\n ownProps.isAmountValid &&\n !ownProps.triggerSenderPhoneConfirmation\n ) {\n dispatch(PayRequestActions.fetchFundingOptions())\n }\n }\n dispatch(\n OverpanelActions.setPurchaseToPersonalTransactionPanelVisibility(false)\n )\n dispatch(togglePaymentTypeChoiceOverpanel({ show: false }))\n },\n })\n)(PaymentTypeChoiceOverpanel)\n\nexport { paymentTypeUrlMap, PaymentTypeChoiceOverpanel }\n","/**\n * Browser back button navigation fix.\n * Previously, on review screen when user clicked on the browser's back button\n * the browser was staying on the review page when the user has transaction user\n *\n * https://internal.msmaster.qa.paypal.com/elmo/experiment/126580\n * Jira: DTNUAPOLLO-459\n\n */\n\nimport * as pxp from '../lib/pxp'\n\nexport function isBackNavigationFixed() {\n return pxp.isTreatment('Trmt_p2p_back_navigation_fix')\n}\n","import { PAYMENT_TYPE } from '../../../../../../lib/constants'\n\nexport function getDefaultPaymentType({\n flowType,\n isPurchase,\n defaultPaymentType,\n}) {\n const pathName = window.location.pathname\n const isGoodAndServices = pathName.includes('buy/preview')\n const isFriendsAndFamily = pathName.includes('send/preview')\n\n if (isGoodAndServices) {\n return PAYMENT_TYPE.PURCHASE\n }\n\n if (isFriendsAndFamily) {\n return PAYMENT_TYPE.PERSONAL\n }\n\n if (flowType === 'payRequest') {\n return isPurchase ? PAYMENT_TYPE.PURCHASE : PAYMENT_TYPE.PERSONAL\n }\n\n return defaultPaymentType\n}\n"],"sourceRoot":""}