{"version":3,"sources":["webpack:///./screens/create-slug/create-profile.js","webpack:///./screens/create-slug/index.js","webpack:///./screens/shared/components/header.js","webpack:///./screens/index.js","webpack:///./screens/shared/components/share.js","webpack:///./screens/my-profile/my-profile.js","webpack:///./screens/my-profile/profile-details.js","webpack:///./screens/my-profile/my-profile-old.js","webpack:///./screens/my-profile/index.js","webpack:///./utils/generate-urls.js","webpack:///./screens/recipient-slug/slug-recipient-profile.js","webpack:///./screens/recipient-slug/slug-not-found.js","webpack:///./screens/recipient-slug/recipient-slug.js","webpack:///./screens/recipient-slug/recipient-slug-profile.js","webpack:///./screens/recipient-slug/easter-egg-amounts.js","webpack:///./screens/recipient-slug/extract-amount-info.js","webpack:///./screens/recipient-slug/recipient-slug-old.js","webpack:///./screens/recipient-slug/index.js","webpack:///./screens/shared/components/cover-photo.js","webpack:///./screens/shared/components/profile-card.js","webpack:///./utils/name.js","webpack:///./utils/photo.js"],"names":["l10n","getContent","createSlugMutation","CreateProfile","slugName","props","slug","e","a","preventDefault","variables","state","client","request","data","setState","target","value","type","onChange","this","handleChange","onSubmit","handleSubmit","Component","Create","match","params","React","Header","isUserLoggedIn","mobileBannerStyle","padding","clientData","isProfileTreatment","userHasCoverPhoto","position","background","borderColor","addZIndex","zIndex","className","role","href","style","color","paddingTop","Main","id","children","dangerouslySetInnerHTML","__html","footerHtml","l10nSettings","ShareTitle","glamorous","div","grey700","SVGParent","span","textAlign","display","width","margin","cursor","transition","transform","marginRight","SVGStyling","SVG","forwardProps","rootEl","SpanText","fontSize","TooltipCopied","bottom","fontWeight","left","backgroundColor","content","height","borderLeft","borderRight","marginLeft","borderBottom","top","opacity","trackShareLinks","linkName","trackLink","ShareYourLink","isCopied","slugInfo","slugDetails","paypalmeSlugName","sharing","shareURLByFacebook","locale","twitterShareLink","encodeURIComponent","shareByTwitter","shareByWhatsApp","shareURLByMessenger","window","location","setTimeout","strong","as","lang","marginTop","text","onCopy","copyToClipboard","tabIndex","onKeyPress","key","_ref","click","ref","input","svgString","svgImages","clipBoard","onClick","handleFBClick","facebook","handleMessengerClick","messenger","handleTwitterClick","twitter","transitionName","transitionEnterTimeout","transitionLeaveTimeout","locality","Container","flexDirection","alignItems","CoverContainer","marginBottom","ProfileCardContainer","ShareContainer","maxWidth","MyProfile","settings","userInfo","profilePhotoUrl","displayName","displayAddress","personalizationSettings","coverPhotoUrl","coverPhotoVerticalPan","welcomeNote","photoUrl","photoVerticalPan","getProfilePhotoUrl","getDisplayName","handle","displayLocation","blurb","profile","imageURL","containerStyles","backgroundSize","backgroundRepeat","paddingBottom","backgroundPosition","boxShadow","myProfilePage","ProfileDetails","to","SettingsContainer","country","generateUrlLoggedInState","flow","encodedFlow","getFlowData","host","getDomain","generateUrlLoggedOutState","onboardDataRegularSignUp","JSON","stringify","intent","redirect_url","sendMoneyText","onboardData","obj","payerId","givenName","familyName","unescapedDisplayName","queryString","thumbnailUrl","DEFAULT_PROFILE_PHOTO","firstName","lastName","networkId","Object","keys","reduce","qs","push","join","base64","PPBASE64","toString","isDev","isStage","origin","isProd","ReportContainer","ReportLink","SlugRecipientProfile","useEffect","trackImpression","INSTRUMENTATION","PAGE_GROUP","PAGE_NAME","tracking","IMPRESSION","EVENT_TYPE","useState","toLowerCase","reportLink","useRef","current","showActions","sendLink","onSend","SEND","CLICK","requestLink","onRequest","REQUEST","secondary","rel","REPORT","Wrapper","justifyContent","SubHeader","p","SlugNotFound","aria-hidden","orange500","aria-level","SlugDetails","recipientSlugDetails","isProfileStatusActive","ProfileViewStyling","ProfileViewParentStyling","PayPalMeProfile","initialAmount","initialCurrencyCode","right","showAmountInput","recipientSlugPage","pi","sqrt2","phi","tau","graham","avogadro","googolplex","googol","beer","pizza","coffee","hamburger","Math","random","toFixed","חי","currencyRegex","extractAmountInfo","amountString","decodedAmountString","decodeURI","easterEggResult","getEasterEggInfo","primaryCurrencyCode","supportedCurrencyCode","currency","amountOnly","replace","includes","toUpperCase","amount","Number","toCanonicalNumber","easterEggAmounts","firstPart","slice","length","secondPart","amountInfo","isNaN","Boolean","RecipientSlug","RecipientSlugOld","CONTAINER_HEIGHT_PX","CONTAINER_WIDTH_PX","ContainerBase","DraggableContainer","css","FadeIn","keyframes","from","Photo","fadeIn","borderRadius","backgroundPositionX","backgroundPositionY","animation","EditButton","button","border","outline","grey100","EditText","clip","overflow","whiteSpace","DragButton","ChevronContainer","ChevronUpIcon","DragText","WithDrag","isDraggable","onDrag","onDragEnd","onDragCancel","onPan","onPanEnd","onPanCancel","options","recognizers","pan","threshold","CoverPhoto","isEditable","onEdit","isLoaded","setIsLoaded","isPhotoCached","setIsPhotoCached","photoImage","Image","onload","onerror","src","complete","getDisplayCoverPhotoUrl","aria-label","name","PrimaryText","SecondaryText","grey600","Card","minHeight","Content","overflowWrap","AvatarContainer","AvatarStyles","GenericAvatar","blue600","lineHeight","PhotoAvatar","backgroundImage","AvatarEdit","font","grey200","EditCamera","ShareButton","SecondaryContent","TertiaryContent","Footer","Button","borderTop","flexBasis","minWidth","textDecoration","ProfileCard","isShareable","onShare","size","url"],"mappings":"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","file":"ppme-slug.bundle.js","sourcesContent":["// @flow\n\nimport React, { Component } from 'react'\nimport { client } from 'utils/client'\nimport getContent from 'pp-react-l10n'\n\nconst l10n = getContent('pages/create-slug')\n\n/**\n * This React component is responsible for querying Apollo for the posts\n * and passing the results to the child Post components for rendering\n */\n\nconst createSlugMutation = `\n mutation CreateSlug ($slugName: String!) {\n createSlug(name: $slugName) {\n slug\n }\n}`\n\ntype Props = {\n slug: string,\n}\n\ntype State = {\n slugName: string,\n}\n\nclass CreateProfile extends Component {\n state = {\n slugName: this.props.slug,\n }\n\n handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault()\n\n // mutate comes here\n const variables = {\n slugName: this.state.slugName,\n }\n\n const data = await client.request(createSlugMutation, variables)\n return data\n }\n\n handleChange = (e: SyntheticInputEvent) => {\n this.setState({\n slugName: e.target.value,\n })\n }\n\n render() {\n return (\n
\n \n \n
\n )\n }\n}\n\n// Use the graphql container to run the allPosts query and pass the results to PostsContainer\nexport default CreateProfile\n","// @flow\n\nimport React from 'react'\nimport CreateProfile from './create-profile'\n\ntype Props = {\n match: { params: { slug: string } },\n}\n\ntype State = {\n slug: string,\n}\n\nclass Create extends React.Component {\n render() {\n const { match: { params: { slug = '' } = {} } = {} } = this.props\n return \n }\n}\n\nexport default Create\n","// @flow\n// Component renders a simple PayPal header when users are not logged in\nimport React, { Fragment } from 'react'\nimport getContent from 'pp-react-l10n'\n\nimport clientData from 'utils/client-data'\n\nconst l10n = getContent('inc/header')\n\ntype Props = {\n isUserLoggedIn: boolean,\n userHasCoverPhoto: boolean,\n}\n\nexport default class Header extends React.Component {\n render() {\n if (this.props.isUserLoggedIn) {\n return null\n }\n\n const mobileBannerStyle = {\n padding: '0 30px 0 40px',\n ...(!clientData.isProfileTreatment && this.props.userHasCoverPhoto\n ? {\n position: 'absolute',\n background: 'transparent',\n borderColor: 'transparent',\n }\n : {}),\n }\n\n // Needed to place log in/Paypal home buttons on top level for\n // mobile views when slug has a cover photo. Creates an overlay effect.\n const addZIndex = {\n ...(this.props.userHasCoverPhoto ? { zIndex: 801 } : {}),\n }\n return (\n \n
\n
\n \n \n \n
\n
\n \n {l10n('header.login')}\n {l10n('header.login')}\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n \n
\n
    \n
  • \n \n {l10n('header.login')}\n {l10n('header.login')}\n \n
  • \n
\n
\n
\n
\n )\n }\n}\n","// @flow\n/**\n * Main Flow Container. This will contain all the other container components.\n * This component is mounted at 'transfer/'.\n * If we ever move header/footer to React this is where it should live...\n */\n\nimport React from 'react'\nimport type { Node } from 'react'\nimport clientData from 'utils/client-data'\nimport _ from 'lodash'\nimport Header from 'screens/shared/components/header'\ntype Props = {\n children: Node,\n}\ntype State = {\n userHasCoverPhoto: boolean,\n}\n\nclass Main extends React.Component {\n state = {\n userHasCoverPhoto: !!_.get(\n clientData,\n 'recipientSlugDetails.slugDetails.personalizationSettings.coverPhotoUrl',\n '',\n ),\n }\n\n render() {\n return (\n
\n \n
\n
\n {this.props.children}\n
\n \n
\n
\n )\n }\n}\n\nexport default Main\n","// @flow\n\nimport React, { Fragment } from 'react'\nimport { CSSTransitionGroup } from 'react-transition-group'\nimport glamorous from 'glamorous'\nimport getContent from 'pp-react-l10n'\nimport { BodyText, grey700 } from '@paypalcorp/pp-react'\nimport CopyToClipboard from 'react-copy-to-clipboard'\nimport sharing from 'consumerweb-sharing'\n\nimport { trackLink } from 'lib/analytics'\n\nimport { svgImages } from 'components/index'\nimport SVG from 'components/svg-logo'\n\nconst l10n = getContent('pages/shared')\nconst l10nSettings = getContent('pages/settings')\n\nconst ShareTitle = glamorous.div({ color: grey700 })\n\nconst SVGParent = glamorous.span({\n textAlign: 'center',\n display: 'inline-block',\n width: '3.75rem',\n margin: '0 0.625rem',\n cursor: 'pointer',\n transition: 'all .2s ease-in-out',\n ':hover': {\n transform: 'scale(1.1)',\n },\n '@media (max-width: 880px)': {\n transform: 'scale(0.95)',\n marginRight: '10px',\n },\n '@media (max-width: 320px)': {\n transform: 'scale(0.9)',\n marginRight: 0,\n },\n})\n\nconst SVGStyling = glamorous(SVG, {\n forwardProps: ['svgString'],\n rootEl: 'span',\n})({})\n\nconst SpanText = glamorous.span({\n display: 'inline-table',\n fontSize: '0.8125rem',\n color: '#ababab',\n position: 'relative',\n})\n\nconst TooltipCopied = glamorous.span({\n padding: '0.25rem 0.5rem',\n position: 'absolute',\n bottom: '-2.75rem',\n fontWeight: 500,\n left: '0.5rem',\n backgroundColor: '#e1e7eb',\n color: 'black',\n\n ':before': {\n content: '\"\"',\n position: 'absolute',\n width: 0,\n height: 0,\n borderLeft: '6px solid transparent',\n borderRight: '6px solid transparent',\n marginLeft: '5px',\n borderBottom: '6px solid #e1e7eb',\n top: '-6px',\n },\n\n '&.tooltip-enter': {\n opacity: 0.01,\n },\n\n '&.tooltip-enter.tooltip-enter-active': {\n opacity: '1',\n transition: 'opacity 300ms ease-in',\n },\n\n '&.tooltip-leave.tooltip-leave-active': {\n opacity: 0.01,\n transition: 'opacity 300ms ease-in',\n },\n})\n\nconst trackShareLinks = linkName =>\n trackLink(linkName, 'main:ppme:profile', 'main:ppme:profile:::', 'link')\n\ntype State = {\n isCopied: boolean,\n}\ntype Props = {\n slugInfo: { slugDetails: SlugDetails },\n locale?: string,\n}\n\nclass ShareYourLink extends React.Component {\n _ref: ?HTMLElement = null\n\n state = {\n isCopied: false,\n }\n handleFBClick = (e: SyntheticEvent) => {\n e.preventDefault()\n\n trackShareLinks('facebook')\n\n const {\n slugInfo: { slugDetails: { paypalmeSlugName = '' } = {} } = {},\n } = this.props\n sharing.shareURLByFacebook(\n `https://paypal.me/${paypalmeSlugName}?locale.x=${this.props.locale}`,\n 575,\n 400,\n )\n }\n\n handleTwitterClick = (e: SyntheticEvent) => {\n e.preventDefault()\n\n trackShareLinks('twitter')\n\n const {\n slugInfo: { slugDetails: { paypalmeSlugName = '' } = {} } = {},\n } = this.props\n const twitterShareLink = `${l10n(\n 'share.twitter',\n )} https://paypal.me/${encodeURIComponent(paypalmeSlugName)}?locale.x=${\n this.props.locale\n }`\n sharing.shareByTwitter(twitterShareLink, 575, 400)\n }\n\n handleWhatsappClick = (e: SyntheticEvent) => {\n e.preventDefault()\n\n trackShareLinks('whatsapp')\n\n const {\n slugInfo: { slugDetails: { paypalmeSlugName = '' } = {} } = {},\n } = this.props\n sharing.shareByWhatsApp(\n `https://paypal.me/${encodeURIComponent(paypalmeSlugName)}?locale.x=${\n this.props.locale\n }`,\n 575,\n 400,\n )\n }\n\n handleMessengerClick = (e: SyntheticEvent) => {\n e.preventDefault()\n\n trackShareLinks('messenger')\n\n const {\n slugInfo: { slugDetails: { paypalmeSlugName = '' } = {} } = {},\n } = this.props\n sharing.shareURLByMessenger(\n `https://paypal.me/${encodeURIComponent(paypalmeSlugName)}?locale.x=${\n this.props.locale\n }`,\n '1624118454533304',\n window.location.href,\n )\n }\n\n copyToClipboard() {\n trackShareLinks('copylink')\n\n this.setState({ isCopied: true })\n setTimeout(() => {\n this.setState({ isCopied: false })\n }, 1000)\n }\n\n render() {\n const {\n slugInfo: { slugDetails: { paypalmeSlugName = '' } = {} } = {},\n } = this.props\n\n return (\n \n \n {l10n('header.share')}\n \n
\n {\n this.copyToClipboard()\n }}\n tabIndex=\"0\"\n role=\"button\"\n >\n \n e.key === 'Enter' && this._ref && this._ref.click()\n }\n ref={input => (this._ref = input)}\n >\n \n \n {l10nSettings('share.copy')}\n \n \n \n \n \n {l10nSettings('share.facebook')}\n \n \n \n {l10nSettings('share.messenger')}\n \n \n \n {l10nSettings('share.twitter')}\n \n
\n \n {this.state.isCopied && (\n \n \n \n )}\n \n
\n )\n }\n}\n\nexport default ShareYourLink\n","// @flow\n\nimport React from 'react'\nimport glamorous from 'glamorous'\n\nimport clientData from 'utils/client-data'\nimport { getProfilePhotoUrl } from 'utils/photo'\nimport { getDisplayName } from 'utils/name'\n\nimport CoverPhoto from 'screens/shared/components/cover-photo'\nimport ProfileCard from 'screens/shared/components/profile-card'\nimport Share from 'components/share'\n\nconst { locality: { locale } = {} } = clientData\n\nconst Container = glamorous.div({\n marginTop: '1.75rem',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n})\n\nconst CoverContainer = glamorous.div({\n zIndex: 0,\n marginBottom: '-6.375rem',\n})\n\nconst ProfileCardContainer = glamorous.div({\n zIndex: 1,\n})\n\nconst ShareContainer = glamorous.div({\n maxWidth: '21.5rem',\n marginTop: '1.5rem',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n position: 'relative', // for copied tooltip\n})\n\ntype Props = {\n history: {\n push: () => any,\n },\n settings: SettingsState,\n}\n\nfunction MyProfile(props: Props) {\n const {\n settings: {\n state: {\n slugDetails = {},\n slugDetails: {\n paypalmeSlugName = '',\n userInfo: {\n profilePhotoUrl = '',\n displayName = '',\n displayAddress = '',\n } = {},\n personalizationSettings: {\n coverPhotoUrl = '',\n coverPhotoVerticalPan = '50',\n welcomeNote = '',\n } = {},\n } = {},\n } = {},\n } = {},\n } = props\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n )\n}\n\nexport default MyProfile\n","// @flow\n\nimport React, { Component, Fragment } from 'react'\nimport ProfileView from '../shared/components/profile-view'\nimport SettingsState from '../settings/state'\nimport LazyLoader from 'components/lazy-load-image'\n\n/**\n * This React component is responsible for querying Apollo for the posts\n * and passing the results to the child Post components for rendering\n */\n\ntype Props = {\n profile: SettingsState,\n}\n\nclass MyProfile extends Component {\n render() {\n const {\n profile: {\n state,\n state: {\n userHasCoverPhoto,\n slugDetails: {\n personalizationSettings: {\n coverPhotoUrl,\n coverPhotoVerticalPan = '50',\n } = {},\n } = {},\n } = {},\n },\n } = this.props\n\n return (\n \n {coverPhotoUrl && (\n \n )}\n \n \n )\n }\n}\n\nexport default MyProfile\n","// @flow\n\nimport React from 'react'\nimport MyProfile from './profile-details'\nimport SettingsContainer from '../settings/state'\nimport { Subscribe } from 'unstated'\n\ntype Props = {\n profile: SettingsContainer,\n}\n\nclass ProfileDetails extends React.Component {\n render() {\n return (\n
\n \n
\n )\n }\n}\n\n// Use the graphql container to run the allPosts query and pass the results to PostsContainer\nexport default () => (\n \n {profile => }\n \n)\n","import _ from 'lodash'\n\nimport clientData from 'utils/client-data'\n\nimport MyProfile from './my-profile'\nimport MyProfileOld from './my-profile-old'\n\nconst isProfileTreatment = _.get(clientData, 'isProfileTreatment', false)\n\nconst Component = isProfileTreatment ? MyProfile : MyProfileOld\n\nexport default Component\n","// @flow\n\nimport * as base64 from 'base64-paypal'\nimport getContent from 'pp-react-l10n'\nimport { unescape } from 'lodash'\nimport clientData from './client-data'\nimport { DEFAULT_PROFILE_PHOTO } from './constants'\n\nconst {\n locality: { country = 'US' },\n} = clientData\n\nexport function generateUrlLoggedInState(flow = 'send', slugDetails = {}) {\n const encodedFlow = getFlowData(slugDetails, clientData)\n const host = getDomain(clientData)\n return `${host}/myaccount/transfer/${flow}/external/profile?flow=${encodedFlow}`\n}\n\nexport function generateUrlLoggedOutState(flow = 'send', slugDetails = {}) {\n const encodedFlow = getFlowData(slugDetails, clientData)\n const host = getDomain(clientData)\n\n const {\n locality: { locale, country },\n } = clientData\n const { userInfo: { displayName = '' } = {} } = slugDetails\n const l10n = getContent('pages/shared')\n const onboardDataRegularSignUp = JSON.stringify({\n 'country.x': country,\n 'locale.x': locale,\n intent: 'paypalme',\n redirect_url: `${host}/myaccount/transfer/${flow}/external/profile?flow=${encodedFlow}`,\n sendMoneyText: encodeURIComponent(`${l10n('msg.send')} ${displayName}`),\n })\n const onboardData = `=${encodeURIComponent(onboardDataRegularSignUp)}`\n\n return `${host}/signin?returnUri=${host}/myaccount/transfer/${flow}/external/profile?flow=${encodedFlow}&${onboardData}`\n}\n\nexport function getReportLink() {\n const host = getDomain(clientData)\n return `${host}/${country.toLowerCase()}/smarthelp/contact-us?email=paypalme`\n}\n\nfunction getFlowData(slugDetails, clientData) {\n const {\n payerId = '',\n paypalmeSlugName = '',\n userInfo: {\n displayName = '',\n givenName = '',\n familyName = '',\n profilePhotoUrl = '',\n } = {},\n } = slugDetails\n\n const {\n locality: { locale, country },\n } = clientData\n\n const unescapedDisplayName = unescape(displayName)\n const queryString = queryify({\n payerId,\n displayName: unescapedDisplayName,\n thumbnailUrl:\n profilePhotoUrl === DEFAULT_PROFILE_PHOTO ? '' : profilePhotoUrl,\n firstName: givenName || '',\n lastName: familyName || '',\n networkId: paypalmeSlugName,\n 'locale.x': locale,\n 'country.x': country,\n })\n\n return base64.encode(queryString, base64.CharacterSet.PPBASE64, '').toString()\n}\n\nfunction getDomain(clientData) {\n let host = 'https://www.paypal.com'\n if (clientData.isDev) {\n host = 'https://localhost.paypal.com'\n }\n\n if (clientData.isStage) {\n host = window.location.origin\n }\n\n if (clientData.isProd) {\n host = 'https://www.paypal.com'\n }\n return host\n}\n\nfunction queryify(obj: { [key: string]: string }) {\n return Object.keys(obj)\n .reduce((qs, key) => {\n qs.push(`${key}=${encodeURIComponent(obj[key])}`)\n return qs\n }, [])\n .join('&')\n}\n","// @flow\n\nimport React, { useEffect, useState, useRef } from 'react'\nimport glamorous from 'glamorous'\nimport getContent from 'pp-react-l10n'\nimport { Link } from '@paypalcorp/pp-react'\n\nimport clientData from 'utils/client-data'\nimport { getProfilePhotoUrl } from 'utils/photo'\nimport { getDisplayName } from 'utils/name'\nimport {\n generateUrlLoggedInState,\n generateUrlLoggedOutState,\n getReportLink,\n} from 'utils/generate-urls'\nimport { trackImpression, trackLink, tracking } from 'lib/analytics'\n\nimport {\n PROFILE_SLUG_INSTRUMENTATION as INSTRUMENTATION,\n EVENT_TYPE,\n} from 'utils/constants'\n\nimport CoverPhoto from 'screens/shared/components/cover-photo'\nimport ProfileCard from 'screens/shared/components/profile-card'\n\nconst l10n = getContent('pages/shared')\n\nconst PAGE_GROUP = 'main:ppme:recipientprofile'\nconst PAGE_NAME = 'main:ppme:recipientprofile:::'\n\nconst Container = glamorous.div({\n margin: '2.25rem 0 2rem',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n})\n\nconst CoverContainer = glamorous.div({\n zIndex: 0,\n marginBottom: '-6.375rem',\n})\n\nconst ProfileCardContainer = glamorous.div({\n zIndex: 1,\n})\n\nconst ReportContainer = glamorous.div({\n marginTop: '3rem',\n})\nconst ReportLink = glamorous.a({ fontSize: '0.875rem' })\n\ntype Props = {\n slugDetails: SlugDetails,\n}\n\nfunction SlugRecipientProfile(props: Props) {\n useEffect(() => {\n trackImpression(INSTRUMENTATION.PAGE_GROUP, INSTRUMENTATION.PAGE_NAME)\n tracking(INSTRUMENTATION.IMPRESSION, EVENT_TYPE.IMPRESSION)\n }, [])\n\n const [reportLink] = useState(() => getReportLink())\n const { current: isUserLoggedIn } = useRef(clientData.isUserLoggedIn)\n\n const {\n slugDetails = {},\n slugDetails: {\n paypalmeSlugName = '',\n userInfo: {\n profilePhotoUrl = '',\n displayName = '',\n displayAddress = '',\n } = {},\n personalizationSettings: {\n coverPhotoUrl = '',\n coverPhotoVerticalPan = '50',\n welcomeNote = '',\n } = {},\n } = {},\n } = props\n\n const onSend = () => {\n trackLink(\n 'send',\n INSTRUMENTATION.PAGE_GROUP,\n INSTRUMENTATION.PAGE_NAME,\n 'link',\n )\n tracking(INSTRUMENTATION.SEND, EVENT_TYPE.CLICK)\n }\n\n const onRequest = () => {\n trackLink(\n 'request',\n INSTRUMENTATION.PAGE_GROUP,\n INSTRUMENTATION.PAGE_NAME,\n 'link',\n )\n tracking(INSTRUMENTATION.REQUEST, EVENT_TYPE.CLICK)\n }\n\n const onReport = () => {\n trackLink('report', PAGE_GROUP, PAGE_NAME, 'link')\n tracking(INSTRUMENTATION.REPORT, EVENT_TYPE.CLICK)\n }\n\n return (\n \n \n \n \n \n \n \n \n \n {l10n('button.report')}\n \n \n \n )\n}\n\nexport default SlugRecipientProfile\n","// @flow\n\nimport React from 'react'\nimport glamorous from 'glamorous'\nimport getContent from 'pp-react-l10n'\nimport { orange500, grey700 } from '@paypalcorp/pp-react'\n\nimport { IconInfoLarge } from 'components'\n\nconst l10n = getContent('pages/error')\n\nconst Wrapper = glamorous.div({\n display: 'flex',\n justifyContent: 'center',\n})\nconst Container = glamorous.div({\n margin: '5rem 0',\n maxWidth: '21rem',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n})\n\nconst Header = glamorous.div({\n marginTop: '2.25rem',\n fontSize: '1.875rem',\n fontWeight: '300',\n color: grey700,\n textAlign: 'center',\n})\nconst SubHeader = glamorous.p({\n marginTop: '2.25rem',\n fontSize: '0.9375rem',\n color: grey700,\n textAlign: 'center',\n width: 300,\n})\n\nfunction SlugNotFound() {\n return (\n \n \n \n
\n {l10n('error.title.slugDoesNotExist')}\n
\n {l10n('error.subheader.slugDoesNotExist')}\n
\n
\n )\n}\n\nexport default SlugNotFound\n","// @flow\n\nimport React from 'react'\n\nimport clientData from 'utils/client-data'\n\nimport SlugRecipientProfile from './slug-recipient-profile'\nimport SlugNotFound from './slug-not-found'\n\nfunction SlugDetails() {\n const { recipientSlugDetails: { slugDetails = {} } = {} } = clientData\n\n return (\n <>\n {clientData.slug && slugDetails.isProfileStatusActive ? (\n \n ) : (\n \n )}\n \n )\n}\n\nexport default SlugDetails\n","// @flow\n\nimport React, { Component } from 'react'\nimport ProfileView from 'components/profile-view'\nimport glamorous from 'glamorous'\nimport LazyLoader from 'components/lazy-load-image'\n\n/**\n * This React component is responsible for querying Apollo for the posts\n * and passing the results to the child Post components for rendering\n */\n\ntype Props = {\n recipientSlugDetails: {\n slugDetails: SlugDetails,\n },\n userHasCoverPhoto: boolean,\n initialAmount?: string,\n initialCurrencyCode?: string,\n}\n\nconst ProfileViewStyling = glamorous.div({\n width: '480px',\n textAlign: 'center',\n margin: '0 auto',\n '@media (max-width: 640px)': {\n width: '100%',\n },\n})\n\nconst ProfileViewParentStyling = glamorous.div({\n paddingTop: '26px',\n '@media (max-width: 844px)': {\n paddingTop: '0',\n },\n})\n\nclass PayPalMeProfile extends Component {\n render() {\n const {\n recipientSlugDetails,\n recipientSlugDetails: {\n slugDetails: {\n personalizationSettings: {\n coverPhotoUrl,\n coverPhotoVerticalPan = '50',\n } = {},\n } = {},\n },\n userHasCoverPhoto,\n initialAmount,\n initialCurrencyCode,\n } = this.props\n\n return (\n \n \n {coverPhotoUrl && (\n \n )}\n \n \n \n )\n }\n}\n\nexport default PayPalMeProfile\n","export default {\n // Mathematical constants\n e: '2.71',\n pi: '3.14',\n sqrt2: '1.41',\n phi: '1.62',\n tau: '6.28',\n graham: '99999.99',\n avogadro: '999999.99',\n googolplex: '99999.99',\n googol: '99999.99',\n\n // Food and their emojis\n beer: '3.82',\n '🍺': '3.82',\n pizza: '9.00',\n '🍕': '9.00',\n coffee: '2.95',\n '☕️': '2.95',\n hamburger: '3.57',\n '🍔': '3.57',\n\n // Other\n '💰': (Math.random() * 80 + 20).toFixed(2),\n // chai\n חי: '18.00',\n}\n","// This module is used to take the \"amountInfo\" part of the URL on the\n// receipient page (the part that comes after the user's slug) and attempts\n// to parse it into the amount and currency\nimport easterEggAmounts from './easter-egg-amounts'\nimport { toCanonicalNumber } from 'amount-utils'\nimport clientData from 'utils/client-data'\nimport _ from 'lodash'\n\nconst currencyRegex = /[A-Za-z]{3}/\n\n// This is the main function that performs the amount info extraction.\nfunction extractAmountInfo(amountString = '') {\n const decodedAmountString = decodeURI(amountString)\n const easterEggResult = getEasterEggInfo(decodedAmountString)\n if (easterEggResult) {\n return easterEggResult\n }\n\n const primaryCurrencyCode = _.get(\n clientData,\n 'recipientSlugDetails.slugDetails.userInfo.primaryCurrencyCode',\n 'USD',\n )\n\n const supportedCurrencyCode = _.get(clientData, 'supportedCurrencies', [])\n\n let [currency = 'USD'] =\n decodedAmountString.match(currencyRegex) || [primaryCurrencyCode] || []\n\n const amountOnly = decodedAmountString.replace(currency, '') || '0'\n\n // if the currency code passed by user is not supported then default back to the recipients user currency code\n if (!supportedCurrencyCode.includes(currency.toUpperCase())) {\n currency = primaryCurrencyCode\n }\n\n return {\n amount: Number(toCanonicalNumber(amountOnly)).toFixed(2),\n currency: currency.toUpperCase(),\n }\n}\n\nexport function isValidNumber(amountString = '') {\n const { amount } = extractAmountInfo(amountString)\n return !isNaN(amount)\n}\n\n// This will check whether the amountString is referencing one of the easter\n// eggs (emoji/mathmatical constants/etc.)\nfunction getEasterEggInfo(amountString) {\n const supportedCurrencyCode = _.get(clientData, 'supportedCurrencies', [])\n const primaryCurrencyCode = _.get(\n clientData,\n 'recipientSlugDetails.slugDetails.userInfo.primaryCurrencyCode',\n 'USD',\n )\n\n // `pizza`\n if (easterEggAmounts[amountString]) {\n return {\n amount: easterEggAmounts[amountString],\n currency: primaryCurrencyCode,\n }\n }\n\n // `pizzaUSD`\n const firstPart = amountString.slice(0, amountString.length - 3)\n if (easterEggAmounts[firstPart]) {\n let currency = amountString.slice(-3).toUpperCase()\n\n // if the currency code passed by user is not supported then default back to the recipients user currency code\n if (!supportedCurrencyCode.includes(currency.toUpperCase())) {\n currency = primaryCurrencyCode\n }\n\n return {\n amount: easterEggAmounts[firstPart],\n currency,\n }\n }\n\n // `USDpizza`\n const secondPart = amountString.slice(3)\n if (easterEggAmounts[secondPart]) {\n let currency = amountString.slice(0, 3).toUpperCase()\n\n // if the currency code passed by user is not supported then default back to the recipients user currency code\n if (!supportedCurrencyCode.includes(currency.toUpperCase())) {\n currency = primaryCurrencyCode\n }\n return {\n amount: easterEggAmounts[secondPart],\n currency,\n }\n }\n return null\n}\n\nexport { extractAmountInfo }\n","// @flow\n\nimport React, { Component } from 'react'\nimport _ from 'lodash'\nimport PayPalMeProfile from './recipient-slug-profile'\nimport clientData from 'utils/client-data'\nimport SlugNotFound from './slug-not-found'\nimport { extractAmountInfo } from './extract-amount-info'\n\ntype Props = {\n match: {\n params: {\n slug: string,\n amountInfo?: string,\n },\n },\n recipientSlugDetails: { slugDetails: SlugDetails },\n userHasCoverPhoto: boolean,\n}\n\nclass SlugDetails extends Component {\n static defaultProps = {\n recipientSlugDetails: _.get(clientData, 'recipientSlugDetails'),\n userHasCoverPhoto: Boolean(\n _.get(\n clientData,\n 'recipientSlugDetails.slugDetails.personalizationSettings.coverPhotoUrl',\n ),\n ),\n }\n\n render() {\n const { amount, currency } = extractAmountInfo(\n this.props.match.params.amountInfo,\n )\n\n const {\n recipientSlugDetails,\n recipientSlugDetails: { slugDetails = {} } = {},\n userHasCoverPhoto,\n } = this.props\n\n return (\n
\n {clientData.slug &&\n slugDetails.isProfileStatusActive &&\n !isNaN(amount) ? (\n \n ) : (\n \n )}\n
\n )\n }\n}\n\nexport default SlugDetails\n","import _ from 'lodash'\n\nimport clientData from 'utils/client-data'\n\nimport RecipientSlug from './recipient-slug'\nimport RecipientSlugOld from './recipient-slug-old'\n\nconst isProfileTreatment = _.get(clientData, 'isProfileTreatment', false)\n\nconst Component = isProfileTreatment ? RecipientSlug : RecipientSlugOld\n\nexport default Component\n","// @flow\n\nimport React, { useState, useEffect } from 'react'\nimport Hammer from 'react-hammerjs'\nimport { css } from 'glamor'\nimport glamorous from 'glamorous'\nimport getContent from 'pp-react-l10n'\nimport { Icon, grey100 } from '@paypalcorp/pp-react'\n\nimport { getDisplayCoverPhotoUrl } from 'utils/image-utils'\n\nconst l10n = getContent('pages/profile')\n\nexport const CONTAINER_HEIGHT_PX = '286'\nexport const CONTAINER_WIDTH_PX = '494'\n\nconst ContainerBase = {\n position: 'relative',\n height: `${CONTAINER_HEIGHT_PX / 16}rem`,\n width: `${CONTAINER_WIDTH_PX / 16}rem`,\n}\n\nconst Container = glamorous.div({\n ...ContainerBase,\n})\n\nconst DraggableContainer = css({\n ...ContainerBase,\n cursor: 'move',\n cursor: 'grab', // eslint-disable-line no-dupe-keys\n '&:active': {\n cursor: 'grabbing',\n },\n})\n\nconst FadeIn = css.keyframes({ from: { opacity: 0 }, to: { opacity: 1 } })\nconst Photo = glamorous.div(\n ({ photoUrl, photoVerticalPan, fadeIn = true }) => ({\n height: '100%',\n width: '100%',\n borderRadius: '5% 5% 100% 100% / 10% 10% 50% 50%',\n background: `url(${photoUrl})`,\n backgroundSize: 'cover',\n backgroundPositionX: '50%',\n backgroundPositionY: `${photoVerticalPan}%`,\n backgroundRepeat: 'no-repeat',\n ...(fadeIn && { animation: `${FadeIn} 0.2s` }),\n }),\n)\n\nconst EditButton = glamorous.button({\n position: 'absolute',\n top: '0',\n right: '0',\n border: 'none',\n padding: '0.15rem',\n cursor: 'pointer',\n outline: 'inherit',\n color: grey100,\n background: 'rgba(0, 0, 0, 0.3)',\n borderRadius: '50%',\n margin: '0.5rem 0.5rem 0 0',\n})\n\n// hide text visually without hiding it from assistive technology\nconst EditText = glamorous.div({\n border: '0',\n clip: 'rect(0 0 0 0)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: '0',\n position: 'absolute',\n whiteSpace: 'nowrap',\n width: '1px',\n})\n\nconst DragButton = glamorous.div({\n position: 'absolute',\n top: '20%',\n left: '50%',\n transform: 'translateX(-50%)',\n padding: '0 1.75rem',\n color: 'white',\n background: 'rgba(0, 0, 0, 0.3)',\n borderRadius: '99999rem',\n display: 'flex',\n alignItems: 'center',\n})\n\nconst ChevronContainer = glamorous.div({\n display: 'flex',\n flexDirection: 'column',\n marginRight: '0.5rem',\n})\n\nconst ChevronUpIcon = css({\n marginBottom: '-0.75rem',\n})\n\nconst DragText = glamorous.span({\n fontWeight: '500',\n fontSize: '0.8125rem',\n})\n\ntype Props = {\n photoUrl: string,\n photoVerticalPan: string,\n isEditable?: boolean,\n onEdit?: () => any,\n isDraggable?: boolean,\n onDrag?: () => any,\n onDragEnd?: () => any,\n onDragCancel?: () => any,\n}\n\nfunction CoverPhoto(props: Props) {\n const {\n photoUrl,\n photoVerticalPan,\n isEditable = false,\n onEdit,\n isDraggable = false,\n onDrag = () => {},\n onDragEnd = () => {},\n onDragCancel = () => {},\n } = props\n\n const [isLoaded, setIsLoaded] = useState(false)\n const [isPhotoCached, setIsPhotoCached] = useState(false)\n\n useEffect(() => {\n const photoImage = new Image()\n photoImage.onload = () => {\n setIsLoaded(true)\n }\n photoImage.onerror = () => {\n // image failed to load so do nothing\n }\n photoImage.src = photoUrl\n if (photoImage.complete) {\n setIsPhotoCached(true)\n }\n\n return () => {\n photoImage.onload = () => {}\n }\n }, [])\n\n return (\n \n {isLoaded && (\n <>\n \n {isEditable && (\n \n \n {l10n('cover.edit')}\n \n )}\n {isDraggable && (\n \n \n \n \n \n {l10n('cover.drag')}\n \n )}\n \n )}\n \n )\n}\n\nfunction WithDrag({\n isDraggable = false,\n onDrag,\n onDragEnd,\n onDragCancel,\n children,\n}) {\n return isDraggable ? (\n \n
{children}
\n \n ) : (\n {children}\n )\n}\n\nexport default CoverPhoto\n","// @flow\n\nimport React, { useState, useEffect } from 'react'\nimport glamorous from 'glamorous'\nimport { css } from 'glamor'\nimport getContent from 'pp-react-l10n'\nimport {\n HeadingText,\n BodyText,\n Link,\n Icon,\n grey100,\n grey200,\n grey600,\n grey700,\n blue600,\n} from '@paypalcorp/pp-react'\n\nconst l10n = getContent('pages/profile')\n\nconst PrimaryText = glamorous.div({\n color: grey700,\n})\nconst SecondaryText = glamorous.div({\n color: grey600,\n})\n\nconst Card = glamorous.div({\n minHeight: '12.125rem',\n width: '21.5rem',\n borderRadius: '0.75rem',\n backgroundColor: 'white',\n boxShadow: '0 2px 4px 0 rgba(0,0,0,0.15)',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n})\n\nconst Content = glamorous.div(({ showActions = false }) => ({\n margin: `1rem 1.5rem ${showActions ? '1.5rem' : '2rem'}`,\n overflowWrap: 'break-word',\n}))\n\nconst AvatarContainer = glamorous.div({\n height: '5.625rem',\n width: '5.625rem',\n marginTop: '-3.125rem',\n marginLeft: '1.25rem',\n position: 'relative',\n})\nconst AvatarStyles = {\n width: 'inherit',\n height: 'inherit',\n border: '4px solid white',\n borderRadius: '50%',\n}\nconst GenericAvatar = glamorous.div(({ background = blue600 }) => ({\n ...AvatarStyles,\n background,\n textAlign: 'center',\n ' span': {\n color: 'white',\n lineHeight: '5.125rem',\n },\n}))\nconst FadeIn = css.keyframes({ from: { opacity: 0 }, to: { opacity: 1 } })\nconst PhotoAvatar = glamorous.div(({ photoUrl, fadeIn = true }) => ({\n ...AvatarStyles,\n backgroundImage: `url(${photoUrl})`,\n backgroundSize: 'cover',\n backgroundPosition: '50%',\n backgroundRepeat: 'no-repeat',\n ...(fadeIn && { animation: `${FadeIn} 0.2s` }),\n}))\nconst AvatarEdit = glamorous.button({\n color: 'inherit',\n padding: 0,\n font: 'inherit',\n cursor: 'pointer',\n outline: 'inherit',\n width: '2rem',\n height: '2rem',\n border: '2px solid white',\n textAlign: 'center',\n borderRadius: '50%',\n backgroundColor: grey200,\n position: 'absolute',\n bottom: 0,\n right: 0,\n})\n\nconst EditCamera = css({\n color: grey700,\n lineHeight: '1.75rem',\n})\n\nconst ShareContainer = glamorous.div({\n position: 'absolute',\n top: '0.8125rem',\n right: '0.5rem',\n})\nconst ShareButton = glamorous.button({\n background: 'none',\n border: 'none',\n padding: '0',\n cursor: 'pointer',\n outline: 'inherit',\n})\n\nconst SecondaryContent = glamorous.div({ marginTop: '0.125rem' })\nconst TertiaryContent = glamorous.div({ marginTop: '1.5rem' })\n\nconst Footer = glamorous.div({\n display: 'flex',\n marginTop: 'auto',\n overflowWrap: 'break-word',\n})\n\nconst Button = glamorous.a(({ borderRight }) => ({\n borderTop: `1px solid ${grey100}`,\n ...(borderRight && { borderRight: `1px solid ${grey100}` }),\n flexBasis: '50%',\n minWidth: 0, // let flex item shrink smaller than content\n padding: '1rem 0',\n textDecoration: 'none',\n '&:active, &:focus, &:hover, &:visited': {\n textDecoration: 'none',\n },\n}))\n\ntype Props = {\n isEditable?: boolean,\n onEdit?: () => {},\n isShareable?: boolean,\n onShare?: () => {},\n photoUrl?: string,\n displayName: string,\n handle: string,\n displayLocation?: string,\n blurb?: string,\n showActions?: boolean,\n requestLink?: string,\n onRequest?: () => any,\n sendLink?: string,\n onSend?: () => any,\n}\n\nfunction ProfileCard(props: Props) {\n const {\n isEditable = false,\n onEdit,\n isShareable = false,\n onShare,\n photoUrl,\n displayName,\n handle,\n displayLocation,\n blurb,\n requestLink,\n onRequest,\n sendLink,\n onSend,\n showActions = false,\n } = props\n\n const [isLoaded, setIsLoaded] = useState(!photoUrl)\n const [isPhotoCached, setIsPhotoCached] = useState(false)\n\n useEffect(() => {\n if (!photoUrl) {\n return\n }\n\n const photoImage = new Image()\n photoImage.onload = () => {\n setIsLoaded(true)\n }\n photoImage.onerror = () => {\n // image failed to load so do nothing\n }\n photoImage.src = photoUrl\n if (photoImage.complete) {\n setIsPhotoCached(true)\n }\n\n return () => {\n photoImage.onload = () => {}\n }\n }, [])\n\n return (\n \n \n {photoUrl ? (\n isLoaded ? (\n \n ) : (\n \n )\n ) : (\n \n \n \n )}\n {isEditable && isLoaded && (\n \n \n \n )}\n \n {isShareable && (\n \n \n \n \n \n )}\n \n \n {displayName}\n \n \n {handle}\n {displayLocation && (\n {displayLocation}\n )}\n \n {blurb && (\n \n {blurb}\n \n )}\n \n {showActions && (\n \n )}\n \n )\n}\n\nexport default ProfileCard\n","// @flow\n\nimport _ from 'lodash'\n\nexport function getDisplayName(displayName: string) {\n // display name is escaped at the service layer but React escapes strings by default\n // so this string ends up getting double escaped and does not get displayed properly\n return _.unescape(displayName)\n}\n","// @flow\n\nimport { DEFAULT_PROFILE_PHOTO } from 'utils/constants'\n\nexport function getProfilePhotoUrl(url?: string) {\n // return any profile photo URL except for default SVG\n if (url !== DEFAULT_PROFILE_PHOTO) {\n return url\n }\n}\n"],"sourceRoot":""}