{"version":3,"sources":["webpack://_N_E/./node_modules/process/browser.js","webpack://_N_E/./node_modules/next/link.js","webpack://_N_E/../../client/link.tsx","webpack://_N_E/(webpack)/webpack/global.js","webpack://_N_E/./node_modules/next/node_modules/@babel/runtime/helpers/defineProperty.js","webpack://_N_E/./config.js","webpack://_N_E/./old-logo-club-ids.js","webpack://_N_E/../../client/use-intersection.tsx"],"names":["cachedSetTimeout","cachedClearTimeout","process","module","exports","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","e","call","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","length","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","arguments","i","push","prototype","apply","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","name","binding","cwd","chdir","dir","umask","prefetched","prefetch","isLocalURL","router","err","curLocale","options","href","props","p","pathname","React","resolveHref","as","resolvedAs","children","child","Children","childRef","useIntersection","rootMargin","setRef","el","setIntersectionRef","useEffect","shouldPrefetch","isVisible","locale","isPrefetched","childProps","ref","onClick","nodeName","event","target","isModifiedEvent","scroll","replace","shallow","success","document","linkClicked","priority","localeDomain","getDomainLocale","addBasePath","addLocale","__webpack_modules__","149","g","Function","window","__webpack_module_cache__","__nccwpck_require__","moduleId","threw","ab","__dirname","obj","key","value","Object","defineProperty","enumerable","configurable","writable","localConfig","oldLogoClubIds","require","console","log","rootDomain","brandedDomain","twitterHandle","links","support","verifiedRules","highSchoolVerifiedRules","wePayOrganizerFaq","eventOrganizerFaq","creatingDraws","howToMarketEvent","customizableFlyer","upgradeCollegeTypeform","addScoreArticle","algorithmUnderstandingLink","countsToUTR","diffVerifiedUtr","selfPostScoreRules","findDemoPlayers","hsRosterArticle","appStoreUrl","googleStoreUrl","messaging","pollingIntervalMin","pollingIntervalMax","devAppInsightsKey","devRoxKey","stripePublishableKey","STRIPE_PUBLISHABLE_KEY","nonProdSegmentKey","googleMapsApiKey","nonProdFacebookPixelId","localDevSettings","siteBaseUrl","brandedUrl","twitterAccount","appHost","appHostName","marketingAppHost","apiHost","userSiteHost","teamTennisAppHost","teamTennisAppHostName","userSiteHostName","fontUrl","appInsightsKey","wePayHost","wePayClientId","wePayEnvironment","roxKey","stripeKey","alwaysUseProxy","isDev","pixelId","createTestSettings","environmentName","APPHOST","APPHOSTNAME","MARKETINGAPPHOST","APIHOST","USERSITEHOST","LEAGUES_APP_HOST","LEAGUES_APP_HOST_NAME","FONTURL","APPINSIGHTS_INSTRUMENTATIONKEY","cdnUrl","staticCdnUrl","segmentKey","qaServerSettings","ciServerSettings","testServerSettings","test2ServerSettings","test3ServerSettings","test4ServerSettings","test5ServerSettings","test6ServerSettings","test7ServerSettings","test8ServerSettings","test9ServerSettings","test10ServerSettings","test11ServerSettings","rcServerSettings","prodServerSettings","WEPAY_HOST","WEPAY_CLIENT_ID","WEPAY_ENV","ROX_KEY","MESSAGING","CDN_URL","redirectToWww","stagingSettings","apiAuthToken","APIAUTHTOKEN","config","configSource","toLowerCase","isDisabled","unobserve","useState","useCallback","id","instance","observers","elements","observer","IntersectionObserver","entries","entry","callback","createObserver","observe","setVisible","idleCallback","requestIdleCallback","cancelIdleCallback","hasIntersectionObserver"],"mappings":"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","file":"static/chunks/156c6748930458b65f2da29d05029fb81e5bd928.240f36bed73d6dd4824d.js","sourcesContent":["// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","module.exports = require('./dist/client/link')\n","import React, { Children, useEffect } from 'react'\nimport { UrlObject } from 'url'\nimport {\n addBasePath,\n addLocale,\n getDomainLocale,\n isLocalURL,\n NextRouter,\n PrefetchOptions,\n resolveHref,\n} from '../next-server/lib/router/router'\nimport { useRouter } from './router'\nimport { useIntersection } from './use-intersection'\n\ntype Url = string | UrlObject\ntype RequiredKeys = {\n [K in keyof T]-?: {} extends Pick ? never : K\n}[keyof T]\ntype OptionalKeys = {\n [K in keyof T]-?: {} extends Pick ? K : never\n}[keyof T]\n\nexport type LinkProps = {\n href: Url\n as?: Url\n replace?: boolean\n scroll?: boolean\n shallow?: boolean\n passHref?: boolean\n prefetch?: boolean\n locale?: string | false\n}\ntype LinkPropsRequired = RequiredKeys\ntype LinkPropsOptional = OptionalKeys\n\nconst prefetched: { [cacheKey: string]: boolean } = {}\n\nfunction prefetch(\n router: NextRouter,\n href: string,\n as: string,\n options?: PrefetchOptions\n): void {\n if (typeof window === 'undefined' || !router) return\n if (!isLocalURL(href)) return\n // Prefetch the JSON page if asked (only in the client)\n // We need to handle a prefetch error here since we may be\n // loading with priority which can reject but we don't\n // want to force navigation since this is only a prefetch\n router.prefetch(href, as, options).catch((err) => {\n if (process.env.NODE_ENV !== 'production') {\n // rethrow to show invalid URL errors\n throw err\n }\n })\n const curLocale =\n options && typeof options.locale !== 'undefined'\n ? options.locale\n : router && router.locale\n\n // Join on an invalid URI character\n prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')] = true\n}\n\nfunction isModifiedEvent(event: React.MouseEvent): boolean {\n const { target } = event.currentTarget as HTMLAnchorElement\n return (\n (target && target !== '_self') ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey ||\n event.altKey || // triggers resource download\n (event.nativeEvent && event.nativeEvent.which === 2)\n )\n}\n\nfunction linkClicked(\n e: React.MouseEvent,\n router: NextRouter,\n href: string,\n as: string,\n replace?: boolean,\n shallow?: boolean,\n scroll?: boolean,\n locale?: string | false\n): void {\n const { nodeName } = e.currentTarget\n\n if (nodeName === 'A' && (isModifiedEvent(e) || !isLocalURL(href))) {\n // ignore click for browser’s default behavior\n return\n }\n\n e.preventDefault()\n\n // avoid scroll for urls with anchor refs\n if (scroll == null) {\n scroll = as.indexOf('#') < 0\n }\n\n // replace state instead of push if prop is present\n router[replace ? 'replace' : 'push'](href, as, {\n shallow,\n locale,\n scroll,\n }).then((success: boolean) => {\n if (!success) return\n if (scroll) {\n // FIXME: proper route announcing at Router level, not Link:\n document.body.focus()\n }\n })\n}\n\nfunction Link(props: React.PropsWithChildren) {\n if (process.env.NODE_ENV !== 'production') {\n function createPropError(args: {\n key: string\n expected: string\n actual: string\n }) {\n return new Error(\n `Failed prop type: The prop \\`${args.key}\\` expects a ${args.expected} in \\`\\`, but got \\`${args.actual}\\` instead.` +\n (typeof window !== 'undefined'\n ? \"\\nOpen your browser's console to view the Component stack trace.\"\n : '')\n )\n }\n\n // TypeScript trick for type-guarding:\n const requiredPropsGuard: Record = {\n href: true,\n } as const\n const requiredProps: LinkPropsRequired[] = Object.keys(\n requiredPropsGuard\n ) as LinkPropsRequired[]\n requiredProps.forEach((key: LinkPropsRequired) => {\n if (key === 'href') {\n if (\n props[key] == null ||\n (typeof props[key] !== 'string' && typeof props[key] !== 'object')\n ) {\n throw createPropError({\n key,\n expected: '`string` or `object`',\n actual: props[key] === null ? 'null' : typeof props[key],\n })\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _: never = key\n }\n })\n\n // TypeScript trick for type-guarding:\n const optionalPropsGuard: Record = {\n as: true,\n replace: true,\n scroll: true,\n shallow: true,\n passHref: true,\n prefetch: true,\n locale: true,\n } as const\n const optionalProps: LinkPropsOptional[] = Object.keys(\n optionalPropsGuard\n ) as LinkPropsOptional[]\n optionalProps.forEach((key: LinkPropsOptional) => {\n const valType = typeof props[key]\n\n if (key === 'as') {\n if (props[key] && valType !== 'string' && valType !== 'object') {\n throw createPropError({\n key,\n expected: '`string` or `object`',\n actual: valType,\n })\n }\n } else if (key === 'locale') {\n if (props[key] && valType !== 'string') {\n throw createPropError({\n key,\n expected: '`string`',\n actual: valType,\n })\n }\n } else if (\n key === 'replace' ||\n key === 'scroll' ||\n key === 'shallow' ||\n key === 'passHref' ||\n key === 'prefetch'\n ) {\n if (props[key] != null && valType !== 'boolean') {\n throw createPropError({\n key,\n expected: '`boolean`',\n actual: valType,\n })\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _: never = key\n }\n })\n\n // This hook is in a conditional but that is ok because `process.env.NODE_ENV` never changes\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const hasWarned = React.useRef(false)\n if (props.prefetch && !hasWarned.current) {\n hasWarned.current = true\n console.warn(\n 'Next.js auto-prefetches automatically based on viewport. The prefetch attribute is no longer needed. More: https://err.sh/vercel/next.js/prefetch-true-deprecated'\n )\n }\n }\n const p = props.prefetch !== false\n\n const router = useRouter()\n const pathname = (router && router.pathname) || '/'\n\n const { href, as } = React.useMemo(() => {\n const [resolvedHref, resolvedAs] = resolveHref(pathname, props.href, true)\n return {\n href: resolvedHref,\n as: props.as\n ? resolveHref(pathname, props.as)\n : resolvedAs || resolvedHref,\n }\n }, [pathname, props.href, props.as])\n\n let { children, replace, shallow, scroll, locale } = props\n\n // Deprecated. Warning shown by propType check. If the children provided is a string (example) we wrap it in an tag\n if (typeof children === 'string') {\n children = {children}\n }\n\n // This will return the first child, if multiple are provided it will throw an error\n const child: any = Children.only(children)\n const childRef: any = child && typeof child === 'object' && child.ref\n\n const [setIntersectionRef, isVisible] = useIntersection({\n rootMargin: '200px',\n })\n const setRef = React.useCallback(\n (el: Element) => {\n setIntersectionRef(el)\n if (childRef) {\n if (typeof childRef === 'function') childRef(el)\n else if (typeof childRef === 'object') {\n childRef.current = el\n }\n }\n },\n [childRef, setIntersectionRef]\n )\n useEffect(() => {\n const shouldPrefetch = isVisible && p && isLocalURL(href)\n const curLocale =\n typeof locale !== 'undefined' ? locale : router && router.locale\n const isPrefetched =\n prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')]\n if (shouldPrefetch && !isPrefetched) {\n prefetch(router, href, as, {\n locale: curLocale,\n })\n }\n }, [as, href, isVisible, locale, p, router])\n\n const childProps: {\n onMouseEnter?: React.MouseEventHandler\n onClick: React.MouseEventHandler\n href?: string\n ref?: any\n } = {\n ref: setRef,\n onClick: (e: React.MouseEvent) => {\n if (child.props && typeof child.props.onClick === 'function') {\n child.props.onClick(e)\n }\n if (!e.defaultPrevented) {\n linkClicked(e, router, href, as, replace, shallow, scroll, locale)\n }\n },\n }\n\n childProps.onMouseEnter = (e: React.MouseEvent) => {\n if (!isLocalURL(href)) return\n if (child.props && typeof child.props.onMouseEnter === 'function') {\n child.props.onMouseEnter(e)\n }\n prefetch(router, href, as, { priority: true })\n }\n\n // If child is an tag and doesn't have a href attribute, or if the 'passHref' property is\n // defined, we specify the current 'href', so that repetition is not needed by the user\n if (props.passHref || (child.type === 'a' && !('href' in child.props))) {\n const curLocale =\n typeof locale !== 'undefined' ? locale : router && router.locale\n\n // we only render domain locales if we are currently on a domain locale\n // so that locale links are still visitable in development/preview envs\n const localeDomain =\n router &&\n router.isLocaleDomain &&\n getDomainLocale(\n as,\n curLocale,\n router && router.locales,\n router && router.domainLocales\n )\n\n childProps.href =\n localeDomain ||\n addBasePath(addLocale(as, curLocale, router && router.defaultLocale))\n }\n\n return React.cloneElement(child, childProps)\n}\n\nexport default Link\n","module.exports =\n/******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 149:\n/***/ (function(module) {\n\nvar g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __nccwpck_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\tvar threw = true;\n/******/ \t\ttry {\n/******/ \t\t\t__webpack_modules__[moduleId](module, module.exports, __nccwpck_require__);\n/******/ \t\t\tthrew = false;\n/******/ \t\t} finally {\n/******/ \t\t\tif(threw) delete __webpack_module_cache__[moduleId];\n/******/ \t\t}\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat */\n/******/ \t\n/******/ \t__nccwpck_require__.ab = __dirname + \"/\";/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __nccwpck_require__(149);\n/******/ })()\n;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","/* eslint-disable global-require */\nlet localConfig = {};\nlet oldLogoClubIds = [];\ntry {\n localConfig = require('./config-local.js').default;\n} catch (e) {\n console.log('No local overrides');\n}\ntry {\n oldLogoClubIds = require('./old-logo-club-ids.js').default;\n} catch (e) {\n console.log('No old logo club ids');\n}\n\nconst rootDomain = 'universaltennis.com';\nconst brandedDomain = 'UniversalTennis.com';\nconst twitterHandle = '@UniversalTennis';\n\nconst devFontUrl = 'https://cloud.typography.com/6323816/6761592/css/fonts.css'; // doesn't count against production page views\nconst localFontUrl = '/fonts/utr-fonts.css'; // for internal/offline use\nconst prodFontUrl = 'https://cloud.typography.com/6323816/6355392/css/fonts.css';\n\nconst links = {\n support: `https://support.${rootDomain}/support/tickets/new`,\n verifiedRules: '/verified',\n highSchoolVerifiedRules: `https://support.${rootDomain}/support/solutions/articles/9000165168-verified-high-school-scores`,\n wePayOrganizerFaq:\n `https://support.${rootDomain}/support/solutions/articles/9000157411-wepay-faq-for-event-organizers-`,\n eventOrganizerFaq: `https://support.${rootDomain}/support/solutions/articles/9000157361-frequently-asked-questions-about-utr-events-for-event-organizers-`,\n creatingDraws: `https://support.${rootDomain}/support/solutions/articles/9000158016-creating-draws`,\n howToMarketEvent: `https://support.${rootDomain}/support/solutions/articles/9000158018-how-do-i-market-my-utr-event-`,\n customizableFlyer: 'https://docs.google.com/presentation/d/1hC3U81zr_dp0vplLIfZ1NXcUK7cjvNTc-Mqs5ojMsCE/edit#slide=id.g46d7d30e9f_0_25',\n upgradeCollegeTypeform: 'https://universaltennis.typeform.com/to/DADAQ7',\n addScoreArticle: 'https://universaltennis.freshdesk.com/support/solutions/articles/9000170410-adding-scores',\n algorithmUnderstandingLink: `https://support.${rootDomain}/support/solutions/articles/9000151830-understanding-the-algorithm-complete-summary`,\n countsToUTR: `https://support.${rootDomain}/support/solutions/articles/9000138934-what-events-count-towards-my-utr-`,\n diffVerifiedUtr: `https://support.${rootDomain}/support/solutions/articles/9000154588-what-s-the-difference-between-utr-and-verified-utr-`,\n selfPostScoreRules: `https://support.${rootDomain}/support/solutions/articles/9000167002-post-a-score-self-posting`,\n findDemoPlayers: `https://support.${rootDomain}/support/solutions/articles/9000168924-demo-events`,\n hsRosterArticle: `https://support.${rootDomain}/support/solutions/articles/9000165080-managing-rosters`,\n appStoreUrl: 'https://apps.apple.com/us/app/universal-tennis/id1519232627',\n googleStoreUrl: 'https://play.google.com/store/apps/details?id=com.ut.utr&utm_source=google-play&utm_campaign=web-footer-google-playstore-badge&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1',\n};\n\nconst messaging = {\n pollingIntervalMin: 5000,\n pollingIntervalMax: 10000,\n};\n\nconst messagingProd = {\n pollingIntervalMin: 10000,\n pollingIntervalMax: 30000,\n};\n\nconst devAppInsightsKey = 'd2686756-dc48-49bd-9a46-7d6d37b5d349'; // Keep dev data out of App Insights\nconst prodAppInsightsKey = '78d2e9f4-06d6-47ec-87be-86a2bb9a146a';\n\nconst devRoxKey = '5eb1b5750f94f6d258634528';\nconst prodRoxKey = '5f4cf85aa8d0e73514557306';\n\nconst devStripeKey = 'pk_test_fJzi8lcnQbbKhlMJp9YVZ2tA00Wx6NIMm2';\nconst stripePublishableKey = process.env.STRIPE_PUBLISHABLE_KEY;\n\nconst prodSegmentKey = 'whKnzneZIJcBEMR0x98BGeVM31KywUGm';\nconst nonProdSegmentKey = 'xXYiDVo3i9VARfkxjcOdLy5q1oOJ0MQW';\n\nconst googleMapsApiKey = 'AIzaSyCapzh9VsfXAzC9fAaosZJulONx7H1BFaY';\n\nconst prodFacebookPixelId = '934768840401987';\nconst nonProdFacebookPixelId = '123456789123456';\n\nconst localDevSettings = {\n siteBaseUrl: process.env.siteBaseUrl || rootDomain,\n brandedUrl: process.env.brandedUrl || brandedDomain,\n twitterAccount: process.env.twitterAccount || twitterHandle,\n appHost: 'https://localhost:3443',\n appHostName: 'localhost',\n marketingAppHost: 'http://localhost:3001',\n apiHost: `https://ci-api.${rootDomain}`,\n userSiteHost: 'https://localhost:44300',\n teamTennisAppHost: 'https://localhost:3443',\n teamTennisAppHostName: 'localhost',\n userSiteHostName: 'localhost',\n fontUrl: localFontUrl,\n appInsightsKey: devAppInsightsKey,\n wePayHost: 'https://stage.wepay.com',\n wePayClientId: '91918',\n wePayEnvironment: 'stage',\n roxKey: devRoxKey,\n links,\n stripeKey: devStripeKey,\n messaging,\n alwaysUseProxy: true,\n oldLogoClubIds,\n isDev: true,\n googleMapsApiKey,\n pixelId: nonProdFacebookPixelId,\n ...localConfig,\n};\n\nconst createTestSettings = (environmentName) => {\n return {\n siteBaseUrl: process.env.siteBaseUrl || rootDomain,\n brandedUrl: process.env.brandedUrl || brandedDomain,\n twitterAccount: process.env.twitterAccount || twitterHandle,\n appHost: process.env.APPHOST || `https://${environmentName}-app.${rootDomain}`,\n appHostName: process.env.APPHOSTNAME || `${environmentName}-app.${rootDomain}`,\n marketingAppHost: process.env.MARKETINGAPPHOST || `https://${environmentName}.${rootDomain}`,\n apiHost: process.env.APIHOST || `https://${environmentName}-api.${rootDomain}`,\n userSiteHost: process.env.USERSITEHOST || `https://${environmentName}-app.${rootDomain}`,\n userSiteHostName: process.env.USERSITEHOST || `${environmentName}-app.${rootDomain}`,\n teamTennisAppHost: process.env.LEAGUES_APP_HOST || `https://test1-leagues.${rootDomain}`,\n teamTennisAppHostName: process.env.LEAGUES_APP_HOST_NAME || `test1-leagues.${rootDomain}`,\n fontUrl: process.env.FONTURL || devFontUrl,\n appInsightsKey: process.env.APPINSIGHTS_INSTRUMENTATIONKEY || devAppInsightsKey,\n roxKey: devRoxKey,\n wePayHost: 'https://stage.wepay.com',\n wePayClientId: '91918',\n links,\n wePayEnvironment: 'stage',\n stripeKey: stripePublishableKey,\n messaging,\n cdnUrl: `https://${environmentName}-cdn.${rootDomain}`,\n staticCdnUrl: `https://${environmentName}-cdn-static.${rootDomain}`,\n segmentKey: nonProdSegmentKey,\n oldLogoClubIds,\n googleMapsApiKey,\n pixelId: nonProdFacebookPixelId,\n };\n};\n\nconst qaServerSettings = createTestSettings('qa');\nconst ciServerSettings = createTestSettings('ci');\nconst testServerSettings = createTestSettings('test');\nconst test2ServerSettings = createTestSettings('test2');\nconst test3ServerSettings = createTestSettings('test3');\nconst test4ServerSettings = createTestSettings('test4');\nconst test5ServerSettings = createTestSettings('test5');\nconst test6ServerSettings = createTestSettings('test6');\nconst test7ServerSettings = createTestSettings('test7');\nconst test8ServerSettings = createTestSettings('test8');\nconst test9ServerSettings = createTestSettings('test9');\nconst test10ServerSettings = createTestSettings('test10');\nconst test11ServerSettings = createTestSettings('test11');\nconst rcServerSettings = createTestSettings('rc');\n\nconst prodServerSettings = {\n siteBaseUrl: process.env.siteBaseUrl || rootDomain,\n brandedUrl: process.env.brandedUrl || brandedDomain,\n twitterAccount: process.env.twitterAccount || twitterHandle,\n appHost: process.env.APPHOST || `https://app.${rootDomain}`,\n appHostName: process.env.APPHOSTNAME || `app.${rootDomain}`,\n marketingAppHost: process.env.MARKETINGAPPHOST || `https://${rootDomain}`,\n apiHost: process.env.APIHOST || `https://api.${rootDomain}`,\n userSiteHost: process.env.USERSITEHOST || `https://app.${rootDomain}`,\n userSiteHostName: process.env.USERSITEHOST || `app.${rootDomain}`,\n teamTennisAppHost: process.env.LEAGUES_APP_HOST || `https://leagues.${rootDomain}`,\n teamTennisAppHostName: process.env.LEAGUES_APP_HOST_NAME || `leagues.${rootDomain}`,\n fontUrl: process.env.FONTURL || prodFontUrl,\n appInsightsKey: process.env.APPINSIGHTS_INSTRUMENTATIONKEY || prodAppInsightsKey,\n wePayHost: process.env.WEPAY_HOST || 'https://www.wepay.com/',\n wePayClientId: process.env.WEPAY_CLIENT_ID || '154027',\n links,\n wePayEnvironment: process.env.WEPAY_ENV || 'production',\n stripeKey: stripePublishableKey,\n roxKey: process.env.ROX_KEY || prodRoxKey,\n messaging: process.env.MESSAGING || messagingProd,\n cdnUrl: process.env.CDN_URL || `https://prod-cdn.${rootDomain}`,\n staticCdnUrl: process.env.CDN_URL || `https://prod-cdn-static.${rootDomain}`,\n segmentKey: prodSegmentKey,\n redirectToWww: process.env.redirectToWww !== null ? process.env.redirectToWww === 'true' : true,\n oldLogoClubIds,\n googleMapsApiKey,\n pixelId: prodFacebookPixelId,\n};\n\nconst stagingSettings = {\n siteBaseUrl: process.env.siteBaseUrl || rootDomain,\n brandedUrl: process.env.brandedUrl || brandedDomain,\n twitterAccount: process.env.twitterAccount || twitterHandle,\n appHost: process.env.APPHOST || `https://staging-app.${rootDomain}`,\n appHostName: process.env.APPHOSTNAME || `staging.${rootDomain}`,\n marketingAppHost: process.env.MARKETINGAPPHOST || `https://staging.${rootDomain}`,\n apiHost: process.env.APIHOST || 'https://staging-api.universaltennis.com',\n apiAuthToken: process.env.APIAUTHTOKEN || '2303cc78-0e7e-4b86-8ae6-74d05cd10cdf',\n userSiteHost: process.env.USERSITEHOST || `https://staging-app.${rootDomain}`,\n userSiteHostName: process.env.USERSITEHOST || `staging-app.${rootDomain}`,\n fontUrl: process.env.FONTURL || 'https://cloud.typography.com/6323816/6355392/css/fonts.css',\n appInsightsKey: process.env.APPINSIGHTS_INSTRUMENTATIONKEY || devAppInsightsKey,\n wePayHost: 'https://stage.wepay.com',\n wePayClientId: '91918',\n links,\n wePayEnvironment: 'stage',\n stripeKey: stripePublishableKey,\n messaging,\n cdnUrl: process.env.CDN_URL || `https://prod-cdn.${rootDomain}`,\n staticCdnUrl: process.env.CDN_URL || `https://prod-cdn-static.${rootDomain}`,\n segmentKey: nonProdSegmentKey,\n oldLogoClubIds,\n googleMapsApiKey,\n pixelId: nonProdFacebookPixelId,\n};\n\n// prod font: https://cloud.typography.com/6323816/6355392/css/fonts.css\n// prod appInsights: 86f73473-038a-4975-8e7f-51ff990a2b98\n\n// eslint-disable-next-line import/no-mutable-exports\nlet config = localDevSettings; // Default to local dev settings\n\nconst configSource = (process.env.CONFIG_SOURCE || process.env.NODE_ENV || 'development').toLowerCase();\n\nconsole.log('config source:', configSource);\n\nswitch (configSource) {\n case 'production':\n config = prodServerSettings;\n break;\n case 'qa':\n config = qaServerSettings;\n break;\n case 'ci':\n config = ciServerSettings;\n break;\n case 'test':\n config = testServerSettings;\n break;\n case 'test2':\n config = test2ServerSettings;\n break;\n case 'test3':\n config = test3ServerSettings;\n break;\n case 'test4':\n config = test4ServerSettings;\n break;\n case 'test5':\n config = test5ServerSettings;\n break;\n case 'test6':\n config = test6ServerSettings;\n break;\n case 'test7':\n config = test7ServerSettings;\n break;\n case 'test8':\n config = test8ServerSettings;\n break;\n case 'test9':\n config = test9ServerSettings;\n break;\n case 'test10':\n config = test10ServerSettings;\n break;\n case 'test11':\n config = test11ServerSettings;\n break;\n case 'rc':\n config = rcServerSettings;\n break;\n case 'staging':\n config = stagingSettings;\n break;\n default:\n config = localDevSettings;\n}\n\n// Using this instead of ES6 syntax for compatibility with node\nmodule.exports = config;\n","const oldLogoClubIds = [8661, 259];\n\nexport default oldLogoClubIds;\n","import { useCallback, useEffect, useRef, useState } from 'react'\nimport {\n requestIdleCallback,\n cancelIdleCallback,\n} from './request-idle-callback'\n\ntype UseIntersectionObserverInit = Pick\ntype UseIntersection = { disabled?: boolean } & UseIntersectionObserverInit\ntype ObserveCallback = (isVisible: boolean) => void\ntype Observer = {\n id: string\n observer: IntersectionObserver\n elements: Map\n}\n\nconst hasIntersectionObserver = typeof IntersectionObserver !== 'undefined'\n\nexport function useIntersection({\n rootMargin,\n disabled,\n}: UseIntersection): [(element: T | null) => void, boolean] {\n const isDisabled: boolean = disabled || !hasIntersectionObserver\n\n const unobserve = useRef()\n const [visible, setVisible] = useState(false)\n\n const setRef = useCallback(\n (el: T | null) => {\n if (unobserve.current) {\n unobserve.current()\n unobserve.current = undefined\n }\n\n if (isDisabled || visible) return\n\n if (el && el.tagName) {\n unobserve.current = observe(\n el,\n (isVisible) => isVisible && setVisible(isVisible),\n { rootMargin }\n )\n }\n },\n [isDisabled, rootMargin, visible]\n )\n\n useEffect(() => {\n if (!hasIntersectionObserver) {\n if (!visible) {\n const idleCallback = requestIdleCallback(() => setVisible(true))\n return () => cancelIdleCallback(idleCallback)\n }\n }\n }, [visible])\n\n return [setRef, visible]\n}\n\nfunction observe(\n element: Element,\n callback: ObserveCallback,\n options: UseIntersectionObserverInit\n): () => void {\n const { id, observer, elements } = createObserver(options)\n elements.set(element, callback)\n\n observer.observe(element)\n return function unobserve(): void {\n elements.delete(element)\n observer.unobserve(element)\n\n // Destroy observer when there's nothing left to watch:\n if (elements.size === 0) {\n observer.disconnect()\n observers.delete(id)\n }\n }\n}\n\nconst observers = new Map()\nfunction createObserver(options: UseIntersectionObserverInit): Observer {\n const id = options.rootMargin || ''\n let instance = observers.get(id)\n if (instance) {\n return instance\n }\n\n const elements = new Map()\n const observer = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n const callback = elements.get(entry.target)\n const isVisible = entry.isIntersecting || entry.intersectionRatio > 0\n if (callback && isVisible) {\n callback(isVisible)\n }\n })\n }, options)\n\n observers.set(\n id,\n (instance = {\n id,\n observer,\n elements,\n })\n )\n return instance\n}\n"],"sourceRoot":""}