{"version":3,"file":"968.bundle.js","mappings":"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","sources":["webpack:///./utils/analytics/fpti-helper.js","webpack:///./hooks/useTracking.js","webpack:///./utils/analytics/fpti-constants.js","webpack:///./utils/contentHelper.js","webpack:///./utils/helper.js","webpack:///./utils/poll.js"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable complexity */\n// https://github.paypal.com/pages/Tracking-R/client-side-instrumentation/#record_ac\n\nimport { FPTI_PREFIX, fptiTypes } from './fpti-constants'\n\nimport { isRenderingOnServer } from '../helper'\nimport poll from '../poll'\n\n// Validate if analytics object is available on window.\nconst validateAnalyticsObject = () => {\n if (\n !(typeof window !== 'undefined' && window.PAYPAL && window.PAYPAL.analytics)\n ) {\n return Promise.reject()\n }\n return Promise.resolve()\n}\n\n/**\n * Function to poll and check if analytics is available on window. If available fire FPTI.\n * @param options\n * @param callback\n * @returns {Promise}\n */\nexport const trackingHelper = (options, callback) =>\n poll(validateAnalyticsObject, 4, 500)\n .then(() => {\n return callback(options)\n })\n .catch(() => {})\n\nconst generateFptiTagValues = ({ name, type, event_name }, pageName) => {\n if (!name || !type || !pageName) {\n throw new Error('Missing name || type || pageName to generate FPTI data')\n }\n\n // name should be in lower case always and hyphen case\n name = name.toLowerCase().replaceAll('_', '-')\n\n // event_name should be in snake case format\n pageName = pageName.replaceAll('-', '_')\n\n let fpti = {}\n switch (type) {\n case fptiTypes.SUCCESS: {\n fpti.page = `${FPTI_PREFIX}${name}`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_shown_in_${pageName}_page`\n break\n }\n\n case fptiTypes.ERROR: {\n fpti.page = `${FPTI_PREFIX}${name}-error`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_error_in_${pageName}_page`\n break\n }\n\n case fptiTypes.ON_CLICK: {\n fpti.page = `${FPTI_PREFIX}${name}`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_click_in_${pageName}_page`\n break\n }\n\n case fptiTypes.NO_DATA: {\n fpti.page = `${FPTI_PREFIX}${name}-no-data`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_no_data_to_render_in_${pageName}_page`\n break\n }\n\n case fptiTypes.VALIDATION_ERROR: {\n fpti.page = `${FPTI_PREFIX}${name}-validation-error`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_validation_error_in_${pageName}_page`\n break\n }\n\n case fptiTypes.SERVICE_INIT: {\n fpti.page = `${FPTI_PREFIX}${name}-service-init`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_service_init_in_${pageName}_page`\n break\n }\n\n case fptiTypes.SERVICE_SUCCESS: {\n fpti.page = `${FPTI_PREFIX}${name}-service-success`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_service_success_in_${pageName}_page`\n break\n }\n\n case fptiTypes.SERVICE_ERROR: {\n fpti.page = `${FPTI_PREFIX}${name}-service-error`\n fpti.event_name = event_name\n ? event_name\n : `${name.replaceAll('-', '_')}_service_error_in_${pageName}_page`\n break\n }\n\n default: {\n fpti.event_name = ''\n break\n }\n }\n\n return fpti\n}\n\n// Get FPTI Options\n// eslint-disable-next-line complexity\nexport const mapFptiOptions = (fptiOptions, baseOptions = {}) => {\n if (isRenderingOnServer()) {\n return {}\n }\n\n const FPTIObject = (window && window.fpti) || {}\n\n // generate FPTI tags and values\n\n const generatedOptions = generateFptiTagValues(\n fptiOptions,\n baseOptions.pageName,\n )\n\n // clearing out error props in case they exist\n FPTIObject.erpg = null\n FPTIObject.erfd = null\n FPTIObject.eccd = null\n\n // For setting link\n if (fptiOptions.link) {\n FPTIObject.link = fptiOptions.link || ''\n FPTIObject.pgln = `${generatedOptions.page}|${fptiOptions.link}`\n FPTIObject.pglk = `${baseOptions.pgrp}|${fptiOptions.link}`\n } else {\n FPTIObject.link = null\n FPTIObject.pgln = null\n FPTIObject.pglk = null\n }\n\n // Set event Type\n FPTIObject.e = fptiOptions.e || null\n\n // set article doc id\n FPTIObject.article_doc_id = fptiOptions.article_doc_id || null\n\n // add hpid if it is part of the options, else clear it\n FPTIObject.hpid = fptiOptions.hpid || null\n\n // add help_doc_id and help_component_ids if available in the options, else clear them\n FPTIObject.help_doc_id = fptiOptions.help_doc_id || ''\n FPTIObject.help_component_ids = fptiOptions.help_component_ids || ''\n\n // Search keyword\n FPTIObject.srch = fptiOptions.srch || null // TODO:Datamasking - check if data masking is required as we are doing in smarthelp\n\n // customer confirmed\n FPTIObject.link_name = fptiOptions.link_name || ''\n\n FPTIObject.channel_name = fptiOptions.channel_name || ''\n\n FPTIObject.rpa = fptiOptions.rpa || null\n\n FPTIObject.hcar = fptiOptions.hcar || null\n\n FPTIObject.hcaf = fptiOptions.hcaf || null\n\n FPTIObject.exp = fptiOptions.exp || null\n\n FPTIObject.articleContentExp = fptiOptions.articleContentExp || null\n\n // reset params added from activity widget\n FPTIObject.evnt_type = fptiOptions.evnt_type || null\n FPTIObject.widgetVariant = fptiOptions.widgetVariant || null\n FPTIObject.module = fptiOptions.module || null\n FPTIObject.product = fptiOptions.product || null\n\n FPTIObject.hc_event_info = fptiOptions.hc_event_info || null\n FPTIObject.error_description = fptiOptions.error_description || null\n\n return { ...FPTIObject, ...baseOptions, ...generatedOptions }\n}\n\n// // Track Impression event\nexport const trackImpression = (params) =>\n trackingHelper(params, (options) => {\n const fptiData = mapFptiOptions(options)\n return window.PAYPAL.analytics.Analytics.prototype.recordImpression({\n data: fptiData,\n })\n })\n\nexport const trackActivityEvent = (params) =>\n trackingHelper(params, (options) => {\n const fptiData = options\n fptiData.e = 'ac'\n window.PAYPAL.analytics.Analytics.prototype.recordEvent(\n fptiData.event_name,\n { data: fptiData },\n )\n })\n\n// Track Click Event\nexport const trackClickEvent = (params) =>\n trackingHelper(params, (options) => {\n const fptiData = options\n fptiData.e = 'cl'\n window.PAYPAL.analytics.Analytics.prototype.recordEvent(\n fptiData.event_name,\n { data: fptiData },\n )\n })\n\n// // Track Javascript Error\n// https://github.paypal.com/pages/Tracking-R/client-side-instrumentation/#record_error\nexport const trackJSError = (errorObject) => {\n if (window.PAYPAL && window.PAYPAL.trackJSError) {\n window.PAYPAL.trackJSError(errorObject)\n }\n}\n","/* eslint-disable no-shadow */\nimport { useCallback, useMemo } from 'react'\nimport {\n mapFptiOptions,\n trackActivityEvent,\n trackClickEvent,\n} from '../utils/analytics/fpti-helper'\nimport serverData from '../utils/server-data'\nimport { isRenderingOnServer } from '../utils/helper'\nimport {\n COMPONENT_NAME,\n FPTI_PREFIX,\n fptiTypes,\n} from '../utils/analytics/fpti-constants'\n\nconst mapBaseOptions = (options) => {\n if (isRenderingOnServer()) {\n return {}\n }\n\n const { pageProps, reqContextData } = serverData\n const { pageName } = pageProps\n const { userUiExp } = reqContextData\n\n const baseOptions = {\n ...options,\n pgrp: `${FPTI_PREFIX}${pageName}`,\n comp: COMPONENT_NAME,\n pageName,\n exp: userUiExp, // This the value that holds what the exp the user is viewing on the exp that the user is on in the client side.\n }\n\n return baseOptions\n}\n\n// hook-based, memoized FPTI tracker for functional components\nconst useTracking = (options) => {\n const mappedBaseOptions = useMemo(() => {\n return mapBaseOptions(options)\n }, [options])\n\n const trackClick = useCallback(\n (options) => {\n const mergedOptions = {\n ...mapFptiOptions(options, mappedBaseOptions),\n }\n\n trackClickEvent(mergedOptions)\n },\n [mappedBaseOptions],\n )\n\n const trackActivity = useCallback(\n (options) => {\n const mergedOptions = {\n ...mapFptiOptions(options, mappedBaseOptions),\n }\n\n trackActivityEvent(mergedOptions)\n },\n [mappedBaseOptions],\n )\n\n const fptiTypeByStatusCode = useCallback((statusCode) => {\n if (statusCode) {\n if (statusCode === 404) {\n return fptiTypes.NO_DATA\n }\n\n if (statusCode === 400) {\n return fptiTypes.VALIDATION_ERROR\n }\n\n if (statusCode === 200) {\n return fptiTypes.SUCCESS\n }\n\n if (statusCode >= 500) {\n return fptiTypes.SERVICE_ERROR\n }\n }\n return fptiTypes.ERROR\n }, [])\n\n const trackErrorFPTI = useCallback((data, componentName) => {\n if (!data || typeof data !== 'object' || !componentName) {\n throw new Error('Missing data || componentName - In firing error FPTI')\n }\n\n const { isError, statusCode } = data\n const type = isError && fptiTypeByStatusCode(statusCode)\n return trackActivity({ name: componentName, type })\n }, [])\n\n return {\n trackClick,\n trackActivity,\n fptiTypeByStatusCode,\n trackErrorFPTI,\n }\n}\n\n// non-hook-based FPTI tracker for class components\n// TODO: Still under work\nexport const fpti = (componentOptions) => {\n const mappedComponentOptions = mapBaseOptions(componentOptions)\n\n const fptiClick = (options) => {\n const mergedOptions = {\n ...mapBaseOptions(options),\n ...mappedComponentOptions,\n }\n trackActivityEvent(mergedOptions, mappedComponentOptions)\n }\n\n return {\n fptiClick,\n }\n}\n\nexport default useTracking\n","import { POSITIONS } from '../../constants/index'\n\nexport const FPTI_PREFIX = 'main:help:center:'\n\nexport const fptiTypes = {\n SUCCESS: 'success',\n ERROR: 'error',\n NO_DATA: 'no-data',\n ON_CLICK: 'on-click',\n VALIDATION_ERROR: 'valdation-error',\n SERVICE_ERROR: 'service-error',\n SERVICE_INIT: 'service-init',\n SERVICE_SUCCESS: 'service-success',\n}\n\n// Feature/ component names\nexport const componentNames = {\n ARTICLE_CONTENT: 'article-content',\n RELATED_ARTICLES: 'related-articles',\n TOPIC_TREE: 'topic-tree',\n TOPIC_ACCORDIONS: 'topic-accordions',\n HERO_MODULE: 'hero-module',\n SEARCH_BAR: 'search-bar',\n RECOMMENDED_SOLUTIONS: 'recommended-solutions',\n SEARCH_AUTO_SUGGESTIONS: 'search-auto-suggestions',\n SEARCH_TOP_POPULAR_ARTICLES: 'search-top-popular-articles',\n BREADCRUMB: 'breadcrumb',\n MORE_WAYS_OF_HELP: 'more-ways-of-help',\n ARTICLE_FEEDBACK: 'article-feedback',\n COMMUNITY_POSTS: 'community-posts',\n TAB_SWITCHER: 'tab-switcher',\n LOGIN_PROMPT: 'login-prompt',\n SURVEY: 'survey',\n DISPUTE_TRACKER: 'dispute-tracker',\n REFUND_TRACKER: 'refund-tracker',\n CURRENCY_CONVERTER: 'currency-converter',\n ALERT: 'alert',\n COMPLAINTS: 'complaints',\n SUBMIT_COMPLAINT: 'submit-complaint',\n COMPLAINTS_SUMMARY_SHEET: 'complaints-summary-sheet',\n COMPLAINTS_LOGIN_SHEET: 'complaints-login-sheet',\n CALL_US_LOGIN_SHEET: 'call-us-login-sheet',\n CALL_US: 'call-us',\n INTENT_CHATBOT_PROMPT: 'intent-chatbot-prompt',\n CHAT_BOT: 'chat-bot',\n ASYNC_CHAT_BOT: 'async-chat-bot',\n PAYPAL_ASSISTANT: 'paypal-assistant',\n ARTICLE_INTENTS: 'article-intents',\n ACTIVITY_WIDGET: 'activity-widget',\n GEN_AI_SUMMARY: 'gen-ai-summary',\n SEARCH_RESULTS: 'search-results',\n SEARCH_FILTER_MOBILE: 'search-filter-mobile',\n SEARCH_FILTER_DESKTOP: 'search-filter-desktop',\n AUPVIOLATION_QUICK_ANSWERS: 'aupviolation-quick-answers',\n AUPVIOLATION_REPORT: 'aupviolation-report',\n AUPVIOLATION_WEBFORM: 'aupviolation-webform',\n STEPUP_AUTH_LOGIN_VALIDATION: 'stepup-auth-login-validation',\n LIMITATION_WIDGET: 'limitation-widget',\n COMMON_ISSUES: 'common-issues',\n CONTACT_CHANNELS: 'contact-channels',\n CONTACT_CHANNEL: 'contact-channel',\n MSG_US_LOGIN_DIALOG: 'message-us-login-dialog',\n STEP_UP: 'step-up',\n STEP_UP_DIALOG: 'step-up-dialog',\n}\n\nexport const ARTICLE_INTENTS_NO_DATA_EVENT =\n 'article_intents_no_data_in_article_page'\n\nexport const COMPONENT_NAME = 'helpcenternodeweb'\n\nexport const AW_POSITION_EVENTS = {\n [POSITIONS.TOP]: 'activity_widget_shown_at_top',\n [POSITIONS.BOTTOM]: 'activity_widget_shown_at_bottom',\n}\n\nexport const TOPIC_PAGE_LEVEL = {\n L2: 'L2',\n L3: 'L3',\n}\n","import template from 'string-placeholder';\nimport { INVALID_CONTENT_REQUEST } from '../constants/index';\n\nconst defaultConfig = { before: '{', after: '}' };\n\nconst contentHelper = (content, data, option = defaultConfig) => {\n if (content) {\n if (data) {\n return template(content, data, option);\n }\n return template(content, undefined, { ...defaultConfig, clean: true });\n }\n return INVALID_CONTENT_REQUEST;\n};\n\nexport default contentHelper;\n","import {\n ASTERISK_REGEX,\n CHAT_ENTRY_POINTS,\n CONTACT_US_TOPIC_DETAILS_PATH,\n CVV_PIN_REGEX,\n DOB_REGEX,\n MAX_LENGTH_SEARCH_CHAR,\n MIN_LENGTH_SEARCH_CHAR,\n MSMASTER_URL,\n NUMBER_REGEX,\n ONLY_ALPHA_NUMERIC,\n URL_REGEX,\n VENMO_ID_REGEX,\n YT_IFRAME_SCRIPT_URL,\n pageNames,\n signInUri,\n urlConstants,\n} from '../constants'\n\nimport _isString from 'lodash/isString'\nimport contentHelper from './contentHelper'\n\nconst maskRegEx =\n /(\\d\\d+|(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,}))/g // eslint-disable-line\nconst maskPattern = '#########'\n\n// Function to filter list of words from url for SEO purpose\nexport const filterURLWordSEO = (articleTitle) => {\n //TODO:: check on this later\n // try {\n // if (true) {\n // // Will remove special character from the string to filter out words\n // const specialCharactersToReplace = /[?.,!{}()\"-]/g; // Add characters here to remove it from the article\n // const seoWordsLowerCase = seoURlFilter.filterWords.map((item) => item.toLowerCase());\n // return articleTitle\n // .replace(specialCharactersToReplace, '')\n // .toLowerCase()\n // .split(' ')\n // .filter((item) => !seoWordsLowerCase.includes(item))\n // .join(' ');\n // }\n // return articleTitle;\n // } catch (e) {\n // return articleTitle;\n // }\n return articleTitle\n}\n\n/**\n Function to convert a string to a URL-friendly format by replacing\n special characters with hyphens and removing all other special characters.\n 1) .replace(/ /g, '-'): This replaces all occurrences of space characters with hyphens.\n 2) .replace(/[&\\/\\\\#, +()$~%.'\":*?<>{}]/g, ''): This removes all special characters that are not allowed in URLs.\n 3) .replace(/[/\\\\]/g, '-'): This replaces forward slashes and backslashes with hyphens.\n * @param {*} title\n * @returns\n */\nexport const getFaqUrlFromTitle = (title) => {\n return encodeURIComponent(\n title &&\n filterURLWordSEO(title)\n .replace(/ /g, '-')\n .replace(/[&\\/\\\\#, +()$~%.'\":*?<>{}]/g, '')\n .replace(/[/\\\\]/g, '-')\n .toLowerCase(),\n )\n}\n\nexport const getTitleForArticleUrl = (title, articleId) => {\n return decodeURIComponent(\n `${getFaqUrlFromTitle(filterURLWordSEO(title))}-${articleId.toLowerCase()}`,\n )\n}\n\nexport const isRenderingOnServer = () => {\n return typeof window === 'undefined'\n}\n\n// Filter top contact reason response data\nexport const filterSearchResponse = (responseData, options) => {\n if (responseData && responseData.data) {\n const { data } = responseData\n let dataSet = data\n if (!Array.isArray(data)) {\n return []\n }\n\n if (options && options.maxResults) {\n dataSet = data.slice(0, options.maxResults)\n }\n\n return dataSet.map((article, index) => ({\n id: `suggestion_${index + 1}`,\n value: article.articleTitle || article.document_title,\n docid: article.articleId || article.document_id,\n rank: article.rank || '',\n }))\n }\n return []\n}\n\nexport const getSanitizedValue = (masker, value) => {\n let returnValue = value ? value.trim() : ''\n try {\n returnValue = masker\n ? masker(returnValue)?.replace(ASTERISK_REGEX, '').trim()\n : value\n\n if (DOB_REGEX.test(returnValue)) {\n returnValue = returnValue.replace(DOB_REGEX, '').trim()\n }\n if (CVV_PIN_REGEX && returnValue.search(CVV_PIN_REGEX) > -1) {\n returnValue = returnValue.replace(NUMBER_REGEX, '').trim()\n }\n return encodeURIComponent(returnValue)\n } catch (error) {\n return returnValue\n }\n}\n\nexport function dataMasking(data) {\n if (_isString(data)) {\n return data.replace(maskRegEx, maskPattern)\n }\n\n return data\n}\n\n/*\n * applicable only for iframe having source of videos hosted on paypalobjects\n * @param { object } iframe html element\n * @returns { string } html string\n */\nexport const getArticleVideoIframeSrcDoc = (iframeElement) => {\n const { height, width, src } = iframeElement\n return ``\n}\n\n/**\n * load Youtube Iframe API asynchronously\n */\nexport const loadYTIframeScript = () => {\n const script = document.createElement('script')\n script.src = YT_IFRAME_SCRIPT_URL\n script.async = true\n document.body.appendChild(script)\n}\n\n/**\n * Function to generate the Complaints webform URL using selected complaint reason and locale\n * @param {*} complaintReason\n * @param {*} locale\n */\nexport const getComplaintsWebformUrl = (complaintReason, locale) => {\n return `/smarthelp/contact-us/complaints?complaint_reason=${complaintReason}&locale.x=${locale}`\n}\n\nexport const isSearchMinMaxCharValid = (query = '') => {\n if (query.length <= MIN_LENGTH_SEARCH_CHAR) {\n return {\n isValid: false,\n type: 'MIN_ERROR',\n }\n }\n\n if (query.length >= MAX_LENGTH_SEARCH_CHAR) {\n return {\n isValid: false,\n type: 'MAX_ERROR',\n }\n }\n\n return {\n isValid: true,\n type: null,\n }\n}\n\nexport const validateEmailAddress = (emailAddress) => {\n const email = emailAddress\n const pattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/\n // Use the test() method to check if the email matches the pattern\n return pattern.test(email)\n}\n\nexport const validateTextAlphaNumeric = (value) => {\n const textValue = value\n return ONLY_ALPHA_NUMERIC.test(textValue)\n}\n\nexport const validateUrl = (url) => {\n const urlText = url\n\n let checkUrl\n try {\n const urlObject = new URL(urlText)\n checkUrl = urlObject ? true : URL_REGEX.test(urlText)\n } catch (_) {\n checkUrl = URL_REGEX.test(urlText)\n }\n\n return checkUrl\n}\n\nexport const validateUserID = (value) => {\n const userId = value\n\n // check PayPal user ID\n const validPayPalUserId = validateEmailAddress(userId)\n if (validPayPalUserId) {\n return true\n }\n // check Venmo user ID\n const countHyphen = userId.match(/-/g)?.length || 0\n const countAt = userId.match(/@/g)?.length || 0\n const countUnderscore = userId.match(/_/g)?.length || 0\n const invalidSpecialCharacterCount =\n countHyphen > 1 || countUnderscore > 1 || countAt > 1\n\n if (invalidSpecialCharacterCount) {\n return false\n }\n return VENMO_ID_REGEX.test(userId)\n}\n\n// Get login host url, on localhost return msmaster\nexport const getLoginHostUrl = () => {\n const { host, protocol } = window.location\n const loginHostUrl = !host.includes('localhost.paypal.com')\n ? `${protocol}//${host}`\n : MSMASTER_URL\n return loginHostUrl\n}\n\nexport const navigateToCallUsWithAppCtx = ({\n appCtx,\n isLoginRedirect = false,\n}) => {\n const { pageProps, reqContextData } = appCtx\n const { coBrand } = reqContextData\n const { pageName } = pageProps\n let query = ''\n if (pageName === pageNames.CALL_US) {\n // click of log in link within call us page\n const { entryPoint, topicId } = pageProps\n query = `?entryPoint=${entryPoint}`\n if (topicId) {\n query = `?entryPoint=${entryPoint}&topicId=${topicId}`\n }\n } else if (pageName === pageNames.CONTACT_US) {\n // call us clicked from contact-us default page\n query = `?entryPoint=${pageName}`\n } else if (pageName === pageNames.TOPIC_DETAILS) {\n // call us clicked from contact-us final intent page\n const { topicParams } = pageProps\n const { topicId } = topicParams\n query = `?entryPoint=${pageName}&topicId=${topicId}`\n }\n let destinationUrl = `/${coBrand}${urlConstants.CSHELP_CALLUS}${query}`\n if (isLoginRedirect) {\n destinationUrl = `${getLoginHostUrl()}${signInUri}${\n window.location.origin\n }/${coBrand}${urlConstants.CSHELP_CALLUS}${encodeURIComponent(query)}`\n }\n window.location = destinationUrl\n}\n\n// get chat entry point\nexport const getChatEntryPoint = (name, options) => {\n return contentHelper(CHAT_ENTRY_POINTS[name], options)\n}\n\nexport const getContactUsFinalIntentUrl = (topicId) => {\n if (!topicId) {\n return ''\n }\n return `${CONTACT_US_TOPIC_DETAILS_PATH}/${topicId}`\n}\n\nexport const setHtmlAttribute = (elementId, attribute, value) => {\n if (elementId && attribute) {\n let element = document.getElementById(elementId);\n if(element) {\n element.setAttribute(attribute, value);\n }\n }\n}\n","/* eslint-disable promise/no-return-wrap */\n// Polling + exponential backoff function\n// eslint-disable-next-line no-promise-executor-return\nconst waitForTimeout = (duration) =>\n new Promise((res) => setTimeout(res, duration))\n\nexport default function poll(customDataValidator, retries = 1, delay = 200) {\n if (!retries || typeof customDataValidator !== 'function') {\n return Promise.reject('validator needs to be a function')\n }\n\n return customDataValidator()\n .then((response) => Promise.resolve(response))\n .catch((err) => {\n if (retries > 1) {\n return waitForTimeout(delay).then(() =>\n poll(customDataValidator, retries - 1, delay * 2),\n )\n }\n return Promise.reject(err)\n })\n}\n\n/*\nEXAMPLE of how to use this file:\n\nvar data; <- variable that's defined but has no data in it yet.\n\n// Let's simulate server lag time.\nsetTimeout(() => {\n data = 'hello!!!';\n}, 10);\n\n// This is a custom validator function which makes it so our poll function can be super generic since it doesn't care about how to validate data\nfunction testForData() {\n return (data) ? Promise.resolve(data) : Promise.reject(false);\n}\n\npoll(testForData, 3, 100)\n .then((resp) => console.log(resp))\n .catch((err) => console.log(err));\n\n*/\n"],"names":["validateAnalyticsObject","window","PAYPAL","analytics","Promise","resolve","reject","trackingHelper","options","callback","poll","then","catch","mapFptiOptions","fptiOptions","baseOptions","isRenderingOnServer","FPTIObject","fpti","generatedOptions","pageName","name","type","event_name","Error","toLowerCase","replaceAll","fptiTypes","SUCCESS","page","FPTI_PREFIX","ERROR","ON_CLICK","NO_DATA","VALIDATION_ERROR","SERVICE_INIT","SERVICE_SUCCESS","SERVICE_ERROR","generateFptiTagValues","erpg","erfd","eccd","link","pgln","pglk","pgrp","e","article_doc_id","hpid","help_doc_id","help_component_ids","srch","link_name","channel_name","rpa","hcar","hcaf","exp","articleContentExp","evnt_type","widgetVariant","module","product","hc_event_info","error_description","mappedBaseOptions","useMemo","pageProps","serverData","reqContextData","userUiExp","comp","COMPONENT_NAME","mapBaseOptions","trackClick","useCallback","mergedOptions","fptiData","Analytics","prototype","recordEvent","data","trackActivity","fptiTypeByStatusCode","statusCode","trackErrorFPTI","componentName","isError","componentNames","ARTICLE_CONTENT","RELATED_ARTICLES","TOPIC_TREE","TOPIC_ACCORDIONS","HERO_MODULE","SEARCH_BAR","RECOMMENDED_SOLUTIONS","SEARCH_AUTO_SUGGESTIONS","SEARCH_TOP_POPULAR_ARTICLES","BREADCRUMB","MORE_WAYS_OF_HELP","ARTICLE_FEEDBACK","COMMUNITY_POSTS","TAB_SWITCHER","LOGIN_PROMPT","SURVEY","DISPUTE_TRACKER","REFUND_TRACKER","CURRENCY_CONVERTER","ALERT","COMPLAINTS","SUBMIT_COMPLAINT","COMPLAINTS_SUMMARY_SHEET","COMPLAINTS_LOGIN_SHEET","CALL_US_LOGIN_SHEET","CALL_US","INTENT_CHATBOT_PROMPT","CHAT_BOT","ASYNC_CHAT_BOT","PAYPAL_ASSISTANT","ARTICLE_INTENTS","ACTIVITY_WIDGET","GEN_AI_SUMMARY","SEARCH_RESULTS","SEARCH_FILTER_MOBILE","SEARCH_FILTER_DESKTOP","AUPVIOLATION_QUICK_ANSWERS","AUPVIOLATION_REPORT","AUPVIOLATION_WEBFORM","STEPUP_AUTH_LOGIN_VALIDATION","LIMITATION_WIDGET","COMMON_ISSUES","CONTACT_CHANNELS","CONTACT_CHANNEL","MSG_US_LOGIN_DIALOG","STEP_UP","STEP_UP_DIALOG","ARTICLE_INTENTS_NO_DATA_EVENT","AW_POSITION_EVENTS","POSITIONS","TOP","BOTTOM","TOPIC_PAGE_LEVEL","L2","L3","defaultConfig","before","after","content","option","template","undefined","clean","INVALID_CONTENT_REQUEST","maskRegEx","maskPattern","getFaqUrlFromTitle","title","encodeURIComponent","replace","getTitleForArticleUrl","articleId","decodeURIComponent","filterSearchResponse","responseData","dataSet","Array","isArray","maxResults","slice","map","article","index","id","value","articleTitle","document_title","docid","document_id","rank","getSanitizedValue","masker","returnValue","trim","ASTERISK_REGEX","DOB_REGEX","test","CVV_PIN_REGEX","search","NUMBER_REGEX","error","dataMasking","_isString","getArticleVideoIframeSrcDoc","iframeElement","height","width","src","loadYTIframeScript","script","document","createElement","YT_IFRAME_SCRIPT_URL","async","body","appendChild","getComplaintsWebformUrl","complaintReason","locale","isSearchMinMaxCharValid","query","length","MIN_LENGTH_SEARCH_CHAR","isValid","MAX_LENGTH_SEARCH_CHAR","validateEmailAddress","emailAddress","validateTextAlphaNumeric","ONLY_ALPHA_NUMERIC","validateUrl","url","checkUrl","urlText","URL","URL_REGEX","_","validateUserID","userId","countHyphen","match","countAt","countUnderscore","VENMO_ID_REGEX","getLoginHostUrl","location","host","protocol","includes","MSMASTER_URL","navigateToCallUsWithAppCtx","appCtx","isLoginRedirect","coBrand","pageNames","entryPoint","topicId","CONTACT_US","TOPIC_DETAILS","topicParams","destinationUrl","urlConstants","CSHELP_CALLUS","signInUri","origin","getChatEntryPoint","contentHelper","CHAT_ENTRY_POINTS","getContactUsFinalIntentUrl","CONTACT_US_TOPIC_DETAILS_PATH","setHtmlAttribute","elementId","attribute","element","getElementById","setAttribute","waitForTimeout","duration","res","setTimeout","customDataValidator","retries","delay","response","err"],"sourceRoot":""}