{"version":3,"file":"static/js/838.e85db416.chunk.js","mappings":"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CrD,oCACA,WAENke,eAAgB,QAChBpnB,gBAAiB,QACjB1B,MAAO,QACP2F,aAAc,QACdrG,UACFP,EAAAA,EAAAA,KAAC2wB,GAAAA,EAAW,CACVjS,GAAI,CACFzd,MAAO,SACPV,UACFP,EAAAA,EAAAA,KAAA,OACE2E,MAAO,CACL3D,QAAS,OACT+B,eAAgB,gBAChByG,cAAe,MACfmK,WAAY,UACZpT,UACFF,EAAAA,EAAAA,MAAA,OAAKsE,MAAO,CAAE3D,QAAS,OAAQwI,cAAe,UAAWjJ,SAAA,EACvDF,EAAAA,EAAAA,MAACQ,EAAAA,EAAU,CACT6d,GAAI,CACFzd,MAAO,SAETH,QAAQ,KACR8d,UAAU,MAAKre,SAAA,CACd+D,KAAKsS,MAAM4Z,EAAkC,OAAdP,QAAc,IAAdA,OAAc,EAAdA,EAAgBW,cAAc,WAEhE5wB,EAAAA,EAAAA,KAACa,EAAAA,EAAU,CACT6d,GAAI,CACFzd,MAAO,QACPoC,WAAY,6BAEdvC,QAAQ,KAAIP,UAhGEswB,EAiGkB,OAAdZ,QAAc,IAAdA,OAAc,EAAdA,EAAgBS,cA/L9C,WACE,MAAMI,EAAiB,CACrB,QACA,SACA,OACA,MACA,OACA,cACA,eACA,eACA,yBACA,QACA,SACA,QACA,UACA,YACA,OACA,UACA,WACA,YACA,oBACA,mBACA,gBACA,oBACA,mBACA,uBACA,QACA,OACA,cACA,WACA,cACA,kBACA,eACA,SACA,OACA,MACA,YACA,wBACA,qBACA,eACA,UACA,iBAGIC,EAAiB,CACrB,QACA,SACA,OACA,MACA,OACA,eACA,gBACA,gBACA,0BACA,QACA,SACA,QACA,UACA,aACA,OACA,UACA,WACA,aACA,qBACA,oBACA,iBACA,qBACA,oBACA,yBACA,QACA,OACA,eACA,WACA,eACA,mBACA,gBACA,SACA,OACA,MACA,YACA,yBACA,sBACA,eACA,UACA,kBAGIC,EAAuB,CAAC,EAC9B,IAAK,IAAI9L,EAAI,EAAGA,EAAI4L,EAAermB,OAAQya,IACzC8L,EAAqBF,EAAe5L,IAAM6L,EAAe7L,GAG3D,OAAO8L,CACT,CAE+BC,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","sources":["logged_out/components/navigation/NavBar.js","shared/components/WaveBorder.js","logged_out/components/footer/Footer.js","logged_out/components/cookies/CookieRulesDialog.js","logged_out/components/cookies/fetchIpData.js","logged_out/components/cookies/CookieConsent.js","logged_out/dummy_data/blogPosts.js","shared/components/VisibilityPasswordTextField.js","logged_out/components/register_login/RegisterDialog.js","logged_out/components/register_login/TermsOfServiceDialog.js","logged_out/components/register_login/LoginDialog.js","logged_out/components/register_login/ChangePasswordDialog.js","shared/components/ModalBackdrop.js","logged_out/components/register_login/DialogSelector.js","shared/components/ZoomImage.js","logged_out/components/home/HeadSection.js","logged_out/components/home/calculateSpacing.js","logged_out/components/home/FeatureCard.js","shared/functions/useWidth.js","logged_out/components/home/FeatureSection.js","logged_out/components/home/PriceCard.js","logged_out/components/home/PricingSection.js","logged_out/components/home/Home.js","logged_out/components/tickerSettings/TickerSettings.js","logged_out/components/tickerSettings/WiFi.js","logged_out/components/tickerSettings/WiFiOnboarding.js","logged_out/components/gifDisplay/GifDisplay.js","logged_out/components/gameScreen/Basketball.js","logged_out/components/gameScreen/BasketballFirestick.js","logged_out/components/gameScreen/index.js","logged_out/components/TeslaDashboard/DateTime.js","logged_out/components/TeslaDashboard/News.js","logged_out/components/TeslaDashboard/CurrentWeather.js","logged_out/components/TeslaDashboard/Time.js","logged_out/components/TeslaDashboard/ForecastWeather.js","logged_out/components/TeslaDashboard/OddsScreen.js","logged_out/components/TeslaDashboard/index.js","logged_out/components/oddsScreen/OddsScreen.js","logged_out/components/oddsScreen/Tracking.js","logged_out/components/oddsScreen/PriceCard.js","logged_out/components/oddsScreen/HeadSection.js","logged_out/components/oddsScreen/calculateSpacing.js","logged_out/components/oddsScreen/FeatureCard.js","logged_out/components/oddsScreen/FeatureSection.js","logged_out/components/oddsScreen/OddsScreenStore.js","logged_out/components/TDMPFFL/index.js","logged_out/components/Candlelighters/index.js","logged_out/components/Candlelighters/Admin.js","logged_out/components/Betfolio/mybets.js","logged_out/components/Betfolio/index.js","logged_out/components/ThomasFirstBirthday/index.js","logged_out/components/GolfTeeTimeFinder/index.js","logged_out/components/blog/BlogCard.js","logged_out/components/blog/Blog.js","shared/components/ShareButton.js","logged_out/components/blog/BlogPost.js","logged_out/components/Routing.js","logged_out/components/Main.js","shared/components/Bordered.js","shared/components/ButtonCircularProgress.js","shared/components/ColoredButton.js","shared/components/ConsecutiveSnackbarMessages.js","shared/components/DialogTitleWithCloseIcon.js","shared/components/FormDialog.js","shared/components/HighlightedInformation.js","shared/components/NavigationDrawer.js","shared/components/PropsRoute.js","shared/functions/smoothScrollTop.js","shared/functions/useLocationBlocker.js"],"sourcesContent":["import React, { memo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\nimport { AppBar, Toolbar, Typography, Button, Hidden, IconButton } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport MenuIcon from \"@mui/icons-material/Menu\";\nimport HomeIcon from \"@mui/icons-material/Home\";\nimport HowToRegIcon from \"@mui/icons-material/HowToReg\";\nimport LockOpenIcon from \"@mui/icons-material/LockOpen\";\nimport BookIcon from \"@mui/icons-material/Book\";\nimport NavigationDrawer from \"../../../shared/components/NavigationDrawer\";\n\nconst styles = (theme) => ({\n appBar: {\n boxShadow: theme.shadows[6],\n backgroundColor: theme.palette.common.white,\n },\n toolbar: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n menuButtonText: {\n fontSize: theme.typography.body1.fontSize,\n fontWeight: theme.typography.h6.fontWeight,\n },\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n },\n noDecoration: {\n textDecoration: \"none !important\",\n },\n});\n\nfunction NavBar(props) {\n const { classes, openRegisterDialog, openLoginDialog, handleMobileDrawerOpen, handleMobileDrawerClose, mobileDrawerOpen, selectedTab } = props;\n const menuItems = [\n {\n link: \"/\",\n name: \"Ticker Store\",\n icon: ,\n },\n {\n link: \"/odds-screen-store\",\n name: \"Odds Screen Store\",\n icon: ,\n },\n // {\n // link: \"/gif-display-vertical\",\n // name: \"Gif Display Vertical\",\n // icon: ,\n // },\n // {\n // link: \"/gif-display-horizontal\",\n // name: \"Gif Display Horizontal\",\n // icon: ,\n // },\n {\n link: \"/odds-screen/null\",\n name: \"Odds Screen Login\",\n icon: ,\n },\n {\n link: \"/settings/null\",\n name: \"Ticker Settings\",\n icon: ,\n },\n ];\n return (\n
\n
\n \n \n \n Mancave\n \n \n Displays\n \n
\n \n \n \n \n \n \n \n {menuItems.map((element) => {\n if (element.link) {\n return (\n \n \n {element.name}\n \n \n );\n }\n return (\n \n {element.name}\n \n );\n })}\n \n
\n \n \n
\n
\n );\n}\n\nNavBar.propTypes = {\n classes: PropTypes.object.isRequired,\n handleMobileDrawerOpen: PropTypes.func,\n handleMobileDrawerClose: PropTypes.func,\n mobileDrawerOpen: PropTypes.bool,\n selectedTab: PropTypes.string,\n openRegisterDialog: PropTypes.func.isRequired,\n openLoginDialog: PropTypes.func.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(memo(NavBar));\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = {\n waves: {\n position: \"relative\",\n width: \"100%\",\n marginBottom: -7,\n height: \"7vw\",\n minHeight: \"7vw\"\n },\n \"@keyframes moveForever\": {\n from: { transform: \"translate3d(-90px, 0, 0)\" },\n to: { transform: \"translate3d(85px, 0, 0)\" }\n },\n parallax: {\n \"& > use\": {\n animation: \"$moveForever 4s cubic-bezier(0.62, 0.5, 0.38, 0.5) infinite\",\n animationDelay: props => `-${props.animationNegativeDelay}s`\n }\n }\n};\n\n/**\n * https://codepen.io/csspoints/pen/WNeOEqd\n */\nfunction WaveBorder(props) {\n const id = String(Math.random());\n const {\n className,\n lowerColor,\n upperColor,\n classes,\n animationNegativeDelay,\n ...rest\n } = props;\n return (\n \n
\n \n \n \n \n \n \n \n
\n );\n}\n\nWaveBorder.propTypes = {\n lowerColor: PropTypes.string.isRequired,\n upperColor: PropTypes.string.isRequired,\n classes: PropTypes.object.isRequired,\n animationNegativeDelay: PropTypes.number.isRequired\n};\n\nexport default withStyles(styles)(WaveBorder);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Grid, Typography, Box, IconButton, Hidden, TextField } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport PhoneIcon from \"@mui/icons-material/Phone\";\nimport MailIcon from \"@mui/icons-material/Mail\";\nimport WaveBorder from \"../../../shared/components/WaveBorder\";\nimport ColoredButton from \"../../../shared/components/ColoredButton\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\nconst styles = (theme) => ({\n footerInner: {\n backgroundColor: theme.palette.common.darkBlack,\n paddingTop: theme.spacing(8),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n paddingBottom: theme.spacing(6),\n [theme.breakpoints.up(\"sm\")]: {\n paddingTop: theme.spacing(10),\n paddingLeft: theme.spacing(16),\n paddingRight: theme.spacing(16),\n paddingBottom: theme.spacing(10),\n },\n [theme.breakpoints.up(\"md\")]: {\n paddingTop: theme.spacing(10),\n paddingLeft: theme.spacing(10),\n paddingRight: theme.spacing(10),\n paddingBottom: theme.spacing(10),\n },\n },\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n color: theme.palette.common.white,\n },\n footerLinks: {\n marginTop: theme.spacing(2.5),\n marginBot: theme.spacing(1.5),\n color: theme.palette.common.white,\n },\n infoIcon: {\n color: `${theme.palette.common.white} !important`,\n backgroundColor: \"#33383b !important\",\n },\n socialIcon: {\n fill: theme.palette.common.white,\n backgroundColor: \"#33383b\",\n borderRadius: theme.shape.borderRadius,\n \"&:hover\": {\n backgroundColor: theme.palette.primary.light,\n },\n },\n link: {\n cursor: \"Pointer\",\n color: theme.palette.common.white,\n transition: theme.transitions.create([\"color\"], {\n duration: theme.transitions.duration.shortest,\n easing: theme.transitions.easing.easeIn,\n }),\n \"&:hover\": {\n color: theme.palette.primary.light,\n },\n },\n whiteBg: {\n backgroundColor: theme.palette.common.white,\n },\n});\n\nconst infos = [\n {\n icon: ,\n description: \"+1 409.344.3814\",\n },\n {\n icon: ,\n description: \"questions@mancavedisplays.com\",\n },\n];\n\nconst socialIcons = [\n {\n icon: (\n \n Facebook \n \n \n ),\n label: \"Facebook\",\n href: \"https://www.facebook.com/mancavedisplaysllc\",\n },\n {\n icon: (\n \n \n \n ),\n label: \"Instagram\",\n href: \"https://www.instagram.com/mancave_displays/\",\n },\n];\n\nfunction Footer(props) {\n const { classes, theme, pushMessageToSnackbar } = props;\n const isWidthUpMd = useMediaQuery(theme.breakpoints.up(\"md\"));\n const handleSubmit = (e) => {\n e.preventDefault();\n const textValue = document.getElementById(\"textInput\").value;\n const emailValue = document.getElementById(\"emailInput\").value;\n window.emailjs\n .send(\"service_oz66q1e\", \"template_8iry336\", { message: textValue, email: emailValue })\n .then((res) => {\n pushMessageToSnackbar({ text: \"Message sent successfully\", color: theme.palette.common.white });\n })\n .catch((err) => console.error(\"Oh well, you failed. Here some thoughts on the error that occured:\", err));\n };\n return (\n \n \n \n
\n \n \n \n \n \n \n \n {infos.map((info, index) => (\n \n \n \n {info.icon}\n \n \n \n \n {info.description}\n \n \n \n ))}\n
\n \n \n \n \n {/* \n About the Company\n \n \n Lorem ipsum dolor sit amet, consectateur adispicing elit. Fusce euismod convallis velit, eu auctor lacus vehicula sit amet.\n */}\n \n {socialIcons.map((socialIcon, index) => (\n \n \n {socialIcon.icon}\n \n \n ))}\n \n \n \n
\n \n );\n}\n\nFooter.propTypes = {\n theme: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(Footer);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, DialogTitle, DialogContent, DialogActions, Typography } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport ArrowBackIcon from \"@mui/icons-material/ArrowBack\";\nimport ColoredButton from \"../../../shared/components/ColoredButton\";\n\nconst styles = theme => ({\n dialogActions: {\n justifyContent: \"flex-start\",\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n paddingRight: theme.spacing(2)\n },\n dialog: {\n zIndex: 1400\n },\n backIcon: {\n marginRight: theme.spacing(1)\n }\n});\n\nfunction CookieRulesDialog(props) {\n const { classes, onClose, open, theme } = props;\n return (\n \n Our Cookie Policy \n \n \n What Are Cookies\n \n \n As is common practice with almost all professional websites this site\n uses cookies, which are tiny files that are downloaded to your\n computer, to improve your experience. This page describes what\n information they gather, how we use it and why we sometimes need to\n store these cookies. We will also share how you can prevent these\n cookies from being stored however this may downgrade or\n 'break' certain elements of the sites functionality. For\n more general information on cookies see the Wikipedia article on HTTP\n Cookies.\n \n \n How We Use Cookies\n \n \n We use cookies for a variety of reasons detailed below. Unfortunately\n in most cases there are no industry standard options for disabling\n cookies without completely disabling the functionality and features\n they add to this site. It is recommended that you leave on all cookies\n if you are not sure whether you need them or not in case they are used\n to provide a service that you use.\n \n \n Disabling Cookies\n \n \n You can prevent the setting of cookies by adjusting the settings on\n your browser (see your browser Help for how to do this). Be aware that\n disabling cookies will affect the functionality of this and many other\n websites that you visit. Disabling cookies will usually result in also\n disabling certain functionality and features of the this site.\n Therefore it is recommended that you do not disable cookies.\n \n \n The Cookies We Set\n \n Account related cookies: \n \n If you create an account with us then we will use cookies for the\n management of the signup process and general administration. These\n cookies will usually be deleted when you log out however in some cases\n they may remain afterwards to remember your site preferences when\n logged out. We use cookies to remember that you accepted this message.\n \n Login related cookies: \n \n We use cookies when you are logged in so that we can remember this\n fact. This prevents you from having to log in every single time you\n visit a new page. These cookies are typically removed or cleared when\n you log out to ensure that you can only access restricted features and\n areas when logged in.\n \n Site preferences cookies: \n \n In order to provide you with a great experience on this site we\n provide the functionality to set your preferences for how this site\n runs when you use it. In order to remember your preferences we need to\n set cookies so that this information can be called whenever you\n interact with a page is affected by your preferences.\n \n \n Third Party Cookies:\n \n \n In some special cases we also use cookies provided by trusted third\n parties. The following section details which third party cookies you\n might encounter through this site.\n \n \n Third party analytics are used to track and measure usage of this site\n so that we can continue to produce engaging content. These cookies may\n track things such as how long you spend on the site or pages you visit\n which helps us to understand how we can improve the site for you.\n \n \n More Information\n \n \n Hopefully that has clarified things for you and as was previously\n mentioned if there is something that you aren't sure whether you\n need or not it's usually safer to leave cookies enabled in case\n it does interact with one of the features you use on our site. This\n Cookies Policy was created with the help of the Cookies Policy\n Template Generator and the Terms and Conditions Template.\n \n \n However if you are still looking for more information then you can\n contact us by sending an email to tim.v.kaenel@gmail.com.\n \n \n \n \n \n Back\n \n \n \n );\n}\n\nCookieRulesDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n open: PropTypes.bool.isRequired,\n theme: PropTypes.object.isRequired\n};\n\nexport default withStyles(styles, { withTheme: true })(CookieRulesDialog);\n","const fetchIpData = new Promise((resolve, reject) => {\n const ajax = new XMLHttpRequest();\n if (window.location.href.includes(\"localhost\")) {\n /**\n * Resolve with dummydata, GET call will be rejected,\n * since ipinfos server is configured that way\n */\n resolve({ data: { country: \"DE\" } });\n return;\n }\n ajax.open(\"GET\", \"https://ipinfo.io/json\");\n ajax.onload = () => {\n const response = JSON.parse(ajax.responseText);\n if (response) {\n resolve(response);\n } else {\n reject();\n }\n };\n ajax.onerror = reject;\n ajax.send();\n});\n\nexport default fetchIpData;\n","import React, { Fragment, useState, useCallback, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Cookies from \"js-cookie\";\nimport { Snackbar, Button, Typography, Box } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport fetchIpData from \"./fetchIpData\";\n\nconst styles = (theme) => ({\n snackbarContent: {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(3),\n },\n});\n\nconst europeanCountryCodes = [\n \"AT\",\n \"BE\",\n \"BG\",\n \"CY\",\n \"CZ\",\n \"DE\",\n \"DK\",\n \"EE\",\n \"ES\",\n \"FI\",\n \"FR\",\n \"GB\",\n \"GR\",\n \"HR\",\n \"HU\",\n \"IE\",\n \"IT\",\n \"LT\",\n \"LU\",\n \"LV\",\n \"MT\",\n \"NL\",\n \"PO\",\n \"PT\",\n \"RO\",\n \"SE\",\n \"SI\",\n \"SK\",\n];\n\nfunction CookieConsent(props) {\n const { classes, handleCookieRulesDialogOpen } = props;\n const [isVisible, setIsVisible] = useState(false);\n\n const openOnEuCountry = useCallback(() => {\n fetchIpData\n .then((data) => {\n if (\n data &&\n data.country &&\n !europeanCountryCodes.includes(data.country)\n ) {\n setIsVisible(false);\n } else {\n setIsVisible(true);\n }\n })\n .catch(() => {\n setIsVisible(true);\n });\n }, [setIsVisible]);\n\n /**\n * Set a persistent cookie\n */\n const onAccept = useCallback(() => {\n Cookies.set(\"remember-cookie-snackbar\", \"\", {\n expires: 365,\n });\n setIsVisible(false);\n }, [setIsVisible]);\n\n useEffect(() => {\n if (Cookies.get(\"remember-cookie-snackbar\") === undefined) {\n openOnEuCountry();\n }\n }, [openOnEuCountry]);\n\n return (\n \n We use cookies to ensure you get the best experience on our website.{\" \"}\n \n }\n action={\n \n \n \n More details\n \n \n \n Got it!\n \n \n }\n />\n );\n}\n\nCookieConsent.propTypes = {\n handleCookieRulesDialogOpen: PropTypes.func.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(CookieConsent);\n","import React, { Fragment } from \"react\";\nimport { Typography } from \"@mui/material\";\n\nconst content = (\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit\n amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed\n diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\n Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor\n sit amet.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem.\n \n \n Title\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit\n amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed\n diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\n Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor\n sit amet.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit\n amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed\n diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\n Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor\n sit amet.\n \n \n Title\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy\n eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\n voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet\n clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit\n amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed\n diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\n Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor\n sit amet.\n \n \n);\n\nconst posts = [\n {\n title: \"Post 1\",\n id: 1,\n date: 1576281600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost1.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n {\n title: \"Post 2\",\n id: 2,\n date: 1576391600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost2.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n {\n title: \"Post 3\",\n id: 3,\n date: 1577391600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost3.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n {\n title: \"Post 4\",\n id: 4,\n date: 1572281600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost4.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n {\n title: \"Post 5\",\n id: 5,\n date: 1573281600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost5.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n {\n title: \"Post 6\",\n id: 6,\n date: 1575281600,\n src: `${process.env.PUBLIC_URL}/images/logged_out/blogPost6.jpg`,\n snippet:\n \"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\",\n content: content,\n },\n];\n\nexport default posts;","import React from \"react\";\nimport { TextField, InputAdornment, IconButton } from \"@mui/material\";\nimport VisibilityIcon from \"@mui/icons-material/Visibility\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\n\nfunction VisibilityPasswordTextField(props) {\n const { isVisible, onVisibilityChange, ...rest } = props;\n return (\n \n {\n onVisibilityChange(!isVisible);\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n }}\n size=\"large\">\n {isVisible ? : }\n \n \n ),\n }}\n > \n );\n}\n\nexport default VisibilityPasswordTextField;\n","import React, { useState, useCallback, useRef, Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { FormHelperText, TextField, Button, Checkbox, Typography, FormControlLabel } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport FormDialog from \"../../../shared/components/FormDialog\";\nimport HighlightedInformation from \"../../../shared/components/HighlightedInformation\";\nimport ButtonCircularProgress from \"../../../shared/components/ButtonCircularProgress\";\nimport VisibilityPasswordTextField from \"../../../shared/components/VisibilityPasswordTextField\";\n\nconst styles = (theme) => ({\n link: {\n transition: theme.transitions.create([\"background-color\"], {\n duration: theme.transitions.duration.complex,\n easing: theme.transitions.easing.easeInOut,\n }),\n cursor: \"pointer\",\n color: theme.palette.primary.main,\n \"&:enabled:hover\": {\n color: theme.palette.primary.dark,\n },\n \"&:enabled:focus\": {\n color: theme.palette.primary.dark,\n },\n },\n});\n\nfunction RegisterDialog(props) {\n const { setStatus, theme, onClose, openTermsDialog, status, classes } = props;\n const [isLoading, setIsLoading] = useState(false);\n const [hasTermsOfServiceError, setHasTermsOfServiceError] = useState(false);\n const [isPasswordVisible, setIsPasswordVisible] = useState(false);\n const registerTermsCheckbox = useRef();\n const registerPassword = useRef();\n const registerPasswordRepeat = useRef();\n\n const register = useCallback(() => {\n if (!registerTermsCheckbox.current.checked) {\n setHasTermsOfServiceError(true);\n return;\n }\n if (\n registerPassword.current.value !== registerPasswordRepeat.current.value\n ) {\n setStatus(\"passwordsDontMatch\");\n return;\n }\n setStatus(null);\n setIsLoading(true);\n setTimeout(() => {\n setIsLoading(false);\n }, 1500);\n }, [\n setIsLoading,\n setStatus,\n setHasTermsOfServiceError,\n registerPassword,\n registerPasswordRepeat,\n registerTermsCheckbox,\n ]);\n\n return (\n {\n e.preventDefault();\n register();\n }}\n hideBackdrop\n hasCloseIcon\n content={\n \n {\n if (status === \"invalidEmail\") {\n setStatus(null);\n }\n }}\n FormHelperTextProps={{ error: true }}\n />\n {\n if (\n status === \"passwordTooShort\" ||\n status === \"passwordsDontMatch\"\n ) {\n setStatus(null);\n }\n }}\n helperText={(() => {\n if (status === \"passwordTooShort\") {\n return \"Create a password at least 6 characters long.\";\n }\n if (status === \"passwordsDontMatch\") {\n return \"Your passwords dont match.\";\n }\n return null;\n })()}\n FormHelperTextProps={{ error: true }}\n isVisible={isPasswordVisible}\n onVisibilityChange={setIsPasswordVisible}\n />\n {\n if (\n status === \"passwordTooShort\" ||\n status === \"passwordsDontMatch\"\n ) {\n setStatus(null);\n }\n }}\n helperText={(() => {\n if (status === \"passwordTooShort\") {\n return \"Create a password at least 6 characters long.\";\n }\n if (status === \"passwordsDontMatch\") {\n return \"Your passwords dont match.\";\n }\n })()}\n FormHelperTextProps={{ error: true }}\n isVisible={isPasswordVisible}\n onVisibilityChange={setIsPasswordVisible}\n />\n {\n setHasTermsOfServiceError(false);\n }}\n />\n }\n label={\n \n I agree to the\n {\n // For screenreaders listen to space and enter events\n if (\n (!isLoading && event.keyCode === 13) ||\n event.keyCode === 32\n ) {\n openTermsDialog();\n }\n }}\n >\n {\" \"}\n terms of service\n \n \n }\n />\n {hasTermsOfServiceError && (\n \n In order to create an account, you have to accept our terms of\n service.\n \n )}\n {status === \"accountCreated\" ? (\n \n We have created your account. Please click on the link in the\n email we have sent to you before logging in.\n \n ) : (\n \n Registration is disabled until we go live.\n \n )}\n \n }\n actions={\n \n Register\n {isLoading && }\n \n }\n />\n );\n}\n\nRegisterDialog.propTypes = {\n theme: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n openTermsDialog: PropTypes.func.isRequired,\n status: PropTypes.string,\n setStatus: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(RegisterDialog);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, DialogTitle, DialogContent, DialogActions, Typography } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport ArrowBackIcon from \"@mui/icons-material/ArrowBack\";\nimport ColoredButton from \"../../../shared/components/ColoredButton\";\n\nconst styles = theme => ({\n termsConditionsListitem: {\n marginLeft: theme.spacing(3),\n marginTop: theme.spacing(1)\n },\n dialogActions: {\n justifyContent: \"flex-start\",\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n paddingRight: theme.spacing(2)\n },\n backIcon: {\n marginRight: theme.spacing(1)\n }\n});\n\nfunction TermsOfServiceDialog(props) {\n const { classes, onClose, theme } = props;\n return (\n \n Terms and Conditions \n \n \n Introduction\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua. At vero eos et accusam et justo duo dolores et ea\n rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem\n ipsum dolor sit amet.\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua. At vero eos et accusam et justo duo dolores et ea\n rebum. Stet clita kasd gubergren.\n \n \n Intellectual Property Rights\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua. At vero eos et accusam et justo duo dolores et ea\n rebum. Stet clita kasd gubergren,\n \n \n Restrictions\n \n \n You are specifically restricted from all of the following:\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua.\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua. At vero eos et accusam et justo duo dolores et ea\n rebum. Stet clita kasd gubergren,\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Your Content\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n No warranties\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua.\n \n \n Limitation of liability\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Indemnification\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Severability\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n sed diam voluptua.\n \n \n Variation of Terms\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Assignment\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Entire Agreement\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n Governing Law & Jurisdiction\n \n \n Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,\n \n \n \n \n \n Back\n \n \n \n );\n}\n\nTermsOfServiceDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n theme: PropTypes.object.isRequired\n};\n\nexport default withStyles(styles, { withTheme: true })(TermsOfServiceDialog);\n","import React, { useState, useCallback, useRef, Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport { withRouter } from \"react-router-dom\";\nimport { TextField, Button, Checkbox, Typography, FormControlLabel } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport FormDialog from \"../../../shared/components/FormDialog\";\nimport HighlightedInformation from \"../../../shared/components/HighlightedInformation\";\nimport ButtonCircularProgress from \"../../../shared/components/ButtonCircularProgress\";\nimport VisibilityPasswordTextField from \"../../../shared/components/VisibilityPasswordTextField\";\n\nconst styles = (theme) => ({\n forgotPassword: {\n marginTop: theme.spacing(2),\n color: theme.palette.primary.main,\n cursor: \"pointer\",\n \"&:enabled:hover\": {\n color: theme.palette.primary.dark,\n },\n \"&:enabled:focus\": {\n color: theme.palette.primary.dark,\n },\n },\n disabledText: {\n cursor: \"auto\",\n color: theme.palette.text.disabled,\n },\n formControlLabel: {\n marginRight: 0,\n },\n});\n\nfunction LoginDialog(props) {\n const {\n setStatus,\n history,\n classes,\n onClose,\n openChangePasswordDialog,\n status,\n } = props;\n const [isLoading, setIsLoading] = useState(false);\n const [isPasswordVisible, setIsPasswordVisible] = useState(false);\n const loginEmail = useRef();\n const loginPassword = useRef();\n\n const login = useCallback(() => {\n setIsLoading(true);\n setStatus(null);\n if (loginEmail.current.value !== \"test@web.com\") {\n setTimeout(() => {\n setStatus(\"invalidEmail\");\n setIsLoading(false);\n }, 1500);\n } else if (loginPassword.current.value !== \"HaRzwc\") {\n setTimeout(() => {\n setStatus(\"invalidPassword\");\n setIsLoading(false);\n }, 1500);\n } else {\n setTimeout(() => {\n history.push(\"/c/dashboard\");\n }, 150);\n }\n }, [setIsLoading, loginEmail, loginPassword, history, setStatus]);\n\n return (\n \n {\n e.preventDefault();\n login();\n }}\n hideBackdrop\n headline=\"Login\"\n content={\n \n {\n if (status === \"invalidEmail\") {\n setStatus(null);\n }\n }}\n helperText={\n status === \"invalidEmail\" &&\n \"This email address isn't associated with an account.\"\n }\n FormHelperTextProps={{ error: true }}\n />\n {\n if (status === \"invalidPassword\") {\n setStatus(null);\n }\n }}\n helperText={\n status === \"invalidPassword\" ? (\n \n Incorrect password. Try again, or click on{\" \"}\n "Forgot Password?" to reset it.\n \n ) : (\n \"\"\n )\n }\n FormHelperTextProps={{ error: true }}\n onVisibilityChange={setIsPasswordVisible}\n isVisible={isPasswordVisible}\n />\n }\n label={Remember me }\n />\n {status === \"verificationEmailSend\" ? (\n \n We have send instructions on how to reset your password to your\n email address\n \n ) : (\n \n Email is: test@web.com \n \n Password is: HaRzwc \n \n )}\n \n }\n actions={\n \n \n Login\n {isLoading && }\n \n {\n // For screenreaders listen to space and enter events\n if (\n (!isLoading && event.keyCode === 13) ||\n event.keyCode === 32\n ) {\n openChangePasswordDialog();\n }\n }}\n >\n Forgot Password?\n \n \n }\n />\n \n );\n}\n\nLoginDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n setStatus: PropTypes.func.isRequired,\n openChangePasswordDialog: PropTypes.func.isRequired,\n history: PropTypes.object.isRequired,\n status: PropTypes.string,\n};\n\nexport default withRouter(withStyles(styles)(LoginDialog));\n","import React, { useState, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { TextField, Dialog, DialogContent, DialogActions, Button, Typography } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport ButtonCircularProgress from \"../../../shared/components/ButtonCircularProgress\";\n\nconst styles = (theme) => ({\n dialogContent: {\n paddingTop: theme.spacing(2),\n },\n dialogActions: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n});\n\nfunction ChangePassword(props) {\n const { onClose, classes, setLoginStatus } = props;\n const [isLoading, setIsLoading] = useState(false);\n\n const sendPasswordEmail = useCallback(() => {\n setIsLoading(true);\n setTimeout(() => {\n setLoginStatus(\"verificationEmailSend\");\n setIsLoading(false);\n onClose();\n }, 1500);\n }, [setIsLoading, setLoginStatus, onClose]);\n\n return (\n \n \n \n );\n}\n\nChangePassword.propTypes = {\n onClose: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired,\n setLoginStatus: PropTypes.func.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(ChangePassword);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Backdrop } from \"@mui/material\";\n\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = {\n backdrop: {\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: 1200,\n position: \"fixed\",\n touchAction: \"none\",\n backgroundColor: \"rgba(0, 0, 0, 0.5)\"\n }\n};\n\nfunction ModalBackdrop(props) {\n const { classes, open } = props;\n return ;\n}\n\nModalBackdrop.propTypes = {\n classes: PropTypes.object.isRequired,\n open: PropTypes.bool.isRequired\n};\n\nexport default withStyles(styles)(ModalBackdrop);\n","import React, { useState, useCallback, Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport RegisterDialog from \"./RegisterDialog\";\nimport TermsOfServiceDialog from \"./TermsOfServiceDialog\";\nimport LoginDialog from \"./LoginDialog\";\nimport ChangePasswordDialog from \"./ChangePasswordDialog\";\nimport ModalBackdrop from \"../../../shared/components/ModalBackdrop\";\n\nfunction DialogSelector(props) {\n const {\n dialogOpen,\n openTermsDialog,\n openRegisterDialog,\n openLoginDialog,\n openChangePasswordDialog,\n onClose,\n } = props;\n const [loginStatus, setLoginStatus] = useState(null);\n const [registerStatus, setRegisterStatus] = useState(null);\n\n const _onClose = useCallback(() => {\n setLoginStatus(null);\n setRegisterStatus(null);\n onClose();\n }, [onClose, setLoginStatus, setRegisterStatus]);\n\n const printDialog = useCallback(() => {\n switch (dialogOpen) {\n case \"register\":\n return (\n \n );\n case \"termsOfService\":\n return ;\n case \"login\":\n return (\n \n );\n case \"changePassword\":\n return (\n \n );\n default:\n }\n }, [\n dialogOpen,\n openChangePasswordDialog,\n openLoginDialog,\n openRegisterDialog,\n openTermsDialog,\n _onClose,\n loginStatus,\n registerStatus,\n setLoginStatus,\n setRegisterStatus,\n ]);\n\n return (\n \n {dialogOpen && }\n {printDialog()}\n \n );\n}\n\nDialogSelector.propTypes = {\n dialogOpen: PropTypes.string,\n openLoginDialog: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n openTermsDialog: PropTypes.func.isRequired,\n openRegisterDialog: PropTypes.func.isRequired,\n openChangePasswordDialog: PropTypes.func.isRequired,\n};\n\nexport default DialogSelector;\n","import React, { Fragment, useState, useCallback, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Portal, Backdrop } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ScrollbarSize from \"@mui/material/Tabs/ScrollbarSize\";\nimport classNames from \"classnames\";\n\nconst styles = (theme) => ({\n backdrop: {\n zIndex: theme.zIndex.modal,\n backgroundColor: \"rgba(0, 0, 0, 0.8)\",\n },\n portalImgWrapper: {\n position: \"fixed\",\n top: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\",\n zIndex: theme.zIndex.modal,\n cursor: \"pointer\",\n },\n portalImgInnerWrapper: {\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n paddingLeft: theme.spacing(1),\n paddingRight: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n portalImg: {\n objectFit: \"contain\",\n maxWidth: \"100%\",\n maxHeight: \"100%\",\n },\n zoomedOutImage: {\n cursor: \"pointer\",\n },\n});\n\nfunction ZoomImage(props) {\n const { alt, src, zoomedImgProps, classes, className, ...rest } = props;\n const [zoomedIn, setZoomedIn] = useState(false);\n const [scrollbarSize, setScrollbarSize] = useState(null);\n\n const zoomIn = useCallback(() => {\n setZoomedIn(true);\n }, [setZoomedIn]);\n\n const zoomOut = useCallback(() => {\n setZoomedIn(false);\n }, [setZoomedIn]);\n\n useEffect(() => {\n if (zoomedIn) {\n document.body.style.overflow = \"hidden\";\n document.body.style.paddingRight = `${scrollbarSize}px`;\n document.querySelector(\"header\").style.paddingRight = `${scrollbarSize}px`;\n } else {\n document.body.style.overflow = \"auto\";\n document.body.style.paddingRight = \"0px\";\n // document.querySelector(\"header\").style.paddingRight = \"0px\";\n }\n }, [zoomedIn, scrollbarSize]);\n\n return (\n \n \n {zoomedIn && (\n \n \n \n
\n
\n
\n
\n \n )}\n \n \n );\n}\n\nZoomImage.propTypes = {\n classes: PropTypes.object.isRequired,\n alt: PropTypes.string.isRequired,\n src: PropTypes.string.isRequired,\n theme: PropTypes.object.isRequired,\n zoomedImgProps: PropTypes.object,\n className: PropTypes.string,\n};\n\nexport default withStyles(styles, { withTheme: true })(ZoomImage);\n","import React, { Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport { Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport WaveBorder from \"../../../shared/components/WaveBorder\";\nimport ZoomImage from \"../../../shared/components/ZoomImage\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\nconst styles = (theme) => ({\n extraLargeButtonLabel: {\n fontSize: theme.typography.body1.fontSize,\n [theme.breakpoints.up(\"sm\")]: {\n fontSize: theme.typography.h6.fontSize,\n },\n },\n extraLargeButton: {\n paddingTop: theme.spacing(1.5),\n paddingBottom: theme.spacing(1.5),\n [theme.breakpoints.up(\"xs\")]: {\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n [theme.breakpoints.up(\"lg\")]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n },\n },\n card: {\n boxShadow: theme.shadows[4],\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n [theme.breakpoints.up(\"xs\")]: {\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n },\n [theme.breakpoints.up(\"sm\")]: {\n paddingTop: theme.spacing(5),\n paddingBottom: theme.spacing(5),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n },\n [theme.breakpoints.up(\"md\")]: {\n paddingTop: theme.spacing(5.5),\n paddingBottom: theme.spacing(5.5),\n paddingLeft: theme.spacing(5),\n paddingRight: theme.spacing(5),\n },\n [theme.breakpoints.up(\"lg\")]: {\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6),\n paddingLeft: theme.spacing(6),\n paddingRight: theme.spacing(6),\n },\n [theme.breakpoints.down(\"xl\")]: {\n width: \"auto\",\n },\n },\n wrapper: {\n position: \"relative\",\n backgroundColor: theme.palette.secondary.main,\n paddingBottom: theme.spacing(2),\n },\n image: {\n [theme.breakpoints.up(\"lg\")]: {\n maxWidth: \"75%\",\n },\n maxWidth: \"100%\",\n verticalAlign: \"middle\",\n borderRadius: theme.shape.borderRadius,\n boxShadow: theme.shadows[4],\n },\n container: {\n marginTop: theme.spacing(6),\n marginBottom: theme.spacing(12),\n [theme.breakpoints.down(\"lg\")]: {\n marginBottom: theme.spacing(9),\n },\n [theme.breakpoints.down(\"md\")]: {\n marginBottom: theme.spacing(6),\n },\n [theme.breakpoints.down(\"md\")]: {\n marginBottom: theme.spacing(3),\n },\n },\n containerFix: {\n [theme.breakpoints.up(\"md\")]: {\n maxWidth: \"none !important\",\n },\n },\n waveBorder: {\n paddingTop: theme.spacing(4),\n },\n});\n\nfunction HeadSection(props) {\n const { classes, theme } = props;\n const isWidthUpLg = useMediaQuery(theme.breakpoints.up(\"lg\"));\n const [currentPic, setCurrentPic] = React.useState(1);\n\n React.useEffect(() => {\n const updateVariable = () => {\n setCurrentPic((prevVariable) => (prevVariable === 11 ? 1 : prevVariable + 1));\n };\n const intervalId = setInterval(updateVariable, 3000);\n return () => clearInterval(intervalId);\n }, []);\n return (\n \n \n \n \n );\n}\n\nHeadSection.propTypes = {\n classes: PropTypes.object,\n theme: PropTypes.object,\n};\n\nexport default withStyles(styles, { withTheme: true })(HeadSection);\n","function calculateSpacing(width, theme) {\n const currentWidth = theme[\"breakpoints\"][\"values\"][width];\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"lg\"]) {\n return 10;\n }\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"md\"]) {\n return 8;\n }\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"sm\"]) {\n return 6;\n }\n return 4;\n}\nexport default calculateSpacing;\n","import React, { Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Typography } from \"@mui/material\";\n\nimport withStyles from \"@mui/styles/withStyles\";\n\nconst styles = (theme) => ({\n iconWrapper: {\n borderRadius: theme.shape.borderRadius,\n textAlign: \"center\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: theme.spacing(3),\n padding: theme.spacing(1) * 1.5,\n },\n});\n\nfunction shadeColor(hex, percent) {\n const f = parseInt(hex.slice(1), 16);\n\n const t = percent < 0 ? 0 : 255;\n\n const p = percent < 0 ? percent * -1 : percent;\n\n const R = f >> 16;\n\n const G = (f >> 8) & 0x00ff;\n\n const B = f & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((t - R) * p) + R) * 0x10000 +\n (Math.round((t - G) * p) + G) * 0x100 +\n (Math.round((t - B) * p) + B)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction FeatureCard(props) {\n const { classes, Icon, color, headline, text } = props;\n return (\n \n \n {Icon}\n
\n \n {headline}\n \n \n {text}\n \n \n );\n}\n\nFeatureCard.propTypes = {\n classes: PropTypes.object.isRequired,\n Icon: PropTypes.element.isRequired,\n color: PropTypes.string.isRequired,\n headline: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(FeatureCard);\n","import { useTheme } from \"@mui/material/styles\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\n/**\n * Be careful using this hook. It only works because the number of\n * breakpoints in theme is static. It will break once you change the number of\n * breakpoints. See https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level\n */\nfunction useWidth() {\n const theme = useTheme();\n const keys = [...theme.breakpoints.keys].reverse();\n return (\n keys.reduce((output, key) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const matches = useMediaQuery(theme.breakpoints.up(key));\n return !output && matches ? key : output;\n }, null) || \"xs\"\n );\n}\n\nexport default useWidth;\n","import React from \"react\";\nimport { Grid, Typography } from \"@mui/material\";\nimport MeassageIcon from \"@mui/icons-material/Message\";\nimport calculateSpacing from \"./calculateSpacing\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { withTheme } from \"@mui/styles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport FeatureCard from \"./FeatureCard\";\nimport useWidth from \"../../../shared/functions/useWidth\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport NewspaperIcon from \"@mui/icons-material/Newspaper\";\nimport SavingsIcon from \"@mui/icons-material/Savings\";\nimport SettingsSuggestIcon from \"@mui/icons-material/SettingsSuggest\";\nimport ShowChartIcon from \"@mui/icons-material/ShowChart\";\nconst iconSize = 30;\n\nconst styles = (theme) => ({\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n marginBottom: theme.spacing(2),\n },\n});\nconst features = [\n {\n color: \"#00C853\",\n headline: \"Sports\",\n text: \"NFL, NCAA, MLB, NBA, NHL, PGA, LIV, UFC pre/live/final scores with odds\",\n icon: ,\n mdDelay: \"0\",\n smDelay: \"0\",\n },\n {\n color: \"#6200EA\",\n headline: \"Headlines\",\n text: \"Choose from different news sources sports related or not.\",\n icon: ,\n mdDelay: \"200\",\n smDelay: \"200\",\n },\n {\n color: \"#0091EA\",\n headline: \"Buy Now / Pay Later\",\n text: \"Afterpay / Klarna / Clearpay / Affirm\",\n icon: ,\n mdDelay: \"400\",\n smDelay: \"0\",\n },\n {\n color: \"#d50000\",\n headline: \"Settings Page\",\n text: \"Have your own settings page to update what sports, stocks or headlines to display\",\n icon: ,\n mdDelay: \"0\",\n smDelay: \"200\",\n },\n {\n color: \"#DD2C00\",\n headline: \"Custom Headlines\",\n text: \"Create up to 3 custom headlines of your choosing using your settings page.\",\n icon: ,\n mdDelay: \"200\",\n smDelay: \"0\",\n },\n {\n color: \"#64DD17\",\n headline: \"Stocks and Commodities\",\n text: \"Live stock quotes\",\n icon: ,\n mdDelay: \"400\",\n smDelay: \"200\",\n },\n];\n\nfunction FeatureSection(props) {\n const { theme } = props;\n const width = useWidth();\n const isWidthUpMd = useMediaQuery(theme.breakpoints.up(\"md\"));\n\n return (\n \n
\n
\n \n {features.map((element) => (\n \n \n \n ))}\n \n
\n
\n
\n );\n}\n\nFeatureSection.propTypes = {};\n\nexport default withStyles(styles, { withTheme: true })(FeatureSection);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Typography, Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport CheckIcon from \"@mui/icons-material/Check\";\nimport ColoredButton from \"../../../shared/components/ColoredButton\";\n\nconst styles = (theme) => ({\n card: {\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n marginTop: theme.spacing(2),\n border: `3px solid ${theme.palette.primary.dark}`,\n borderRadius: theme.shape.borderRadius * 2,\n },\n cardHightlighted: {\n paddingTop: theme.spacing(8),\n paddingBottom: theme.spacing(4),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n border: `3px solid ${theme.palette.primary.dark}`,\n borderRadius: theme.shape.borderRadius * 2,\n backgroundColor: theme.palette.primary.main,\n [theme.breakpoints.down(\"sm\")]: {\n marginTop: theme.spacing(2),\n },\n },\n title: {\n color: theme.palette.primary.main,\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n },\n});\n\nfunction PriceCard(props) {\n const { classes, theme, title, pricing, features, highlighted, btnLink } = props;\n return (\n \n \n \n {title}\n \n \n \n \n {pricing}\n \n \n {features.map((feature, index) => (\n \n \n \n \n {feature}\n \n \n \n ))}\n \n Purchase\n \n
\n );\n}\n\nPriceCard.propTypes = {\n classes: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired,\n title: PropTypes.string.isRequired,\n pricing: PropTypes.oneOfType([PropTypes.node, PropTypes.string]).isRequired,\n highlighted: PropTypes.bool,\n};\n\nexport default withStyles(styles, { withTheme: true })(PriceCard);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { Grid, Typography } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport PriceCard from \"./PriceCard\";\nimport calculateSpacing from \"./calculateSpacing\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport useWidth from \"../../../shared/functions/useWidth\";\n\nconst styles = (theme) => ({\n containerFix: {\n [theme.breakpoints.down(\"lg\")]: {\n paddingLeft: theme.spacing(6),\n paddingRight: theme.spacing(6),\n },\n [theme.breakpoints.down(\"md\")]: {\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n },\n [theme.breakpoints.down(\"sm\")]: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n overflow: \"hidden\",\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n },\n cardWrapper: {\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"auto\",\n marginRight: \"auto\",\n maxWidth: 340,\n },\n },\n cardWrapperHighlighted: {\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"auto\",\n marginRight: \"auto\",\n maxWidth: 360,\n },\n },\n});\n\nfunction PricingSection(props) {\n const { classes, theme } = props;\n const width = useWidth();\n const isWidthUpMd = useMediaQuery(theme.breakpoints.up(\"md\"));\n\n return (\n <>\n \n LED Tickers\n \n \n Current Shipping Est. 2-3 weeks from purchase\n \n \n
\n \n $700}\n btnLink=\"https://buy.stripe.com/4gw2bldaqdHM8Le00A\"\n features={[\n \"4 ft x 5 in x 3.5 in\",\n \"4 mm pitch LED's\",\n \"1st year subscription free\",\n \"Shipping to USA/Canada\",\n ]}\n />\n \n \n $1050}\n btnLink=\"https://buy.stripe.com/5kA4jt1rI8nsd1u00G\"\n features={[\n \"6 ft x 6 in x 3.5 in\",\n \"5 mm pitch LED's\",\n \"1st year subscription free\",\n \"Shipping to USA/Canada\",\n ]}\n />\n \n \n $1300}\n btnLink=\"https://buy.stripe.com/14k03d3zQavA3qU3cR\"\n features={[\n \"8 ft x 6 in x 3.5 in\",\n \"5 mm pitch LED's\",\n \"1st year subscription free\",\n \"Shipping to USA/Canada\",\n ]}\n />\n \n \n $1800}\n btnLink=\"https://buy.stripe.com/eVaeY7daqfPU7Ha9B8\"\n features={[\"12.5 ft x 6 in x 3.5 in\", \"5 mm pitch LED's\", \"Shipping to USA/Canada\"]}\n />\n \n \n
\n \n
\n Subscriptions\n \n
\n (only needed after the first year)\n \n
\n
\n \n \n $10\n / month \n \n }\n btnLink=\"https://buy.stripe.com/8wMeY78Ua1Z4d1u7t3\"\n features={[]}\n />\n \n \n \n $100\n / year \n \n }\n btnLink=\"https://buy.stripe.com/9AQaHRfiy6fkbXq8x8\"\n features={[]}\n />\n \n \n
\n
\n >\n );\n}\n\nPricingSection.propTypes = {};\n\nexport default withStyles(styles, { withTheme: true })(PricingSection);\n","import React, { Fragment, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport HeadSection from \"./HeadSection\";\nimport FeatureSection from \"./FeatureSection\";\nimport PricingSection from \"./PricingSection\";\n\nfunction Home(props) {\n const { selectHome } = props;\n useEffect(() => {\n selectHome();\n }, [selectHome]);\n return (\n \n \n \n \n \n );\n}\n\nHome.propTypes = {\n selectHome: PropTypes.func.isRequired\n};\n\nexport default Home;\n","import React from \"react\";\nimport {\n Box,\n TextField,\n Grid,\n Container,\n Button,\n FormControl,\n Select,\n MenuItem,\n Chip,\n Typography,\n FormGroup,\n FormControlLabel,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Accordion,\n AccordionSummary,\n OutlinedInput,\n AccordionDetails,\n} from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Link } from \"react-router-dom\";\nimport { useParams } from \"react-router-dom\";\nimport LinearProgress from \"@mui/material/LinearProgress\";\nimport DeleteForeverIcon from \"@mui/icons-material/DeleteForever\";\nimport InputAdornment from \"@mui/material/InputAdornment\";\nimport IconButton from \"@mui/material/IconButton\";\nimport ExpandMoreIcon from \"@mui/icons-material/ExpandMore\";\nimport Bordered from \"../../../shared/components/Bordered\";\nimport { TroubleshootRounded } from \"@mui/icons-material\";\n\nconst styles = (theme) => ({\n numberInput: {\n width: 110,\n },\n numberInputInput: {\n padding: \"9px 34px 9px 14.5px\",\n },\n dBlock: { display: \"block\" },\n listItemLeftPadding: {\n paddingRight: theme.spacing(3),\n },\n misc: { display: \"flex\", flexDirection: \"column\", alignItems: \"center\" },\n accordionDetails: {\n paddintTop: theme.spacing(0),\n display: \"flex\",\n justifyContent: \"flex-end\",\n },\n paper: {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n },\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n textAlign: \"center\",\n },\n toolbar: { justifyContent: \"space-between\" },\n scaleMinus: {\n transform: \"scaleX(-1)\",\n },\n \"@keyframes spin\": {\n from: { transform: \"rotate(359deg)\" },\n to: { transform: \"rotate(0deg)\" },\n },\n spin: { animation: \"$spin 2s infinite linear\" },\n listItemSecondaryAction: { paddingRight: theme.spacing(1) },\n});\nfunction LEDSettings(props) {\n const { classes, theme, pushMessageToSnackbar } = props;\n const { user } = useParams();\n const [errorMessage, setErrorMessage] = React.useState(\"\");\n const [showErrorAlert, setShowErrorAlert] = React.useState(false);\n const [name, setName] = React.useState(\"\");\n const [stocks_during_the_week, setShowStocksDuringTheWeek] = React.useState(false);\n const [show_weather, setShowWeather] = React.useState(false);\n const [show_dow, setShowDow] = React.useState(false);\n const [show_nasdaq, setShowNasdaq] = React.useState(false);\n const [show_stocks, setShowStocks] = React.useState(false);\n const [show_commodities, setShowCommodities] = React.useState(false);\n const [just_stocks, setShowOnlyStocks] = React.useState(false);\n const [time_zone, setTimeZone] = React.useState(\"\");\n const [just_stocks_splice_value, setGainersDeclinersSpliceValue] = React.useState(\"15\");\n const [show_only_live, setShowOnlyLive] = React.useState(false);\n const [show_custom_headline, setShowCustomHeadline] = React.useState(false);\n const [with_onboarding, setWithOnboarding] = React.useState(false);\n const [email, setEmail] = React.useState(user);\n const [zip_code, setZipCode] = React.useState(\"77008\");\n const [rss_feeds, setRss_feeds] = React.useState([]);\n const [rankings, setRankings] = React.useState([]);\n const [stockSymbol, setStockSymbol] = React.useState(\"\");\n const [stock_symbols, setStockSymbols] = React.useState([]);\n const [custom_headline, setCustomHeadline] = React.useState(\"\");\n const [custom_headline_2, setCustomHeadline2] = React.useState(\n email !== \"example\" ? \"\" : \"Enter your custom headline here!\"\n );\n const [custom_headline_3, setCustomHeadline3] = React.useState(\n email !== \"example\" ? \"\" : \"Enter your custom headline here!\"\n );\n const [custom_headline_4, setCustomHeadline4] = React.useState(\n email !== \"example\" ? \"\" : \"Enter your custom headline here!\"\n );\n const [tickerArr, setTickerArr] = React.useState([]);\n const [sports_to_display, setSportsToDisplay] = React.useState([]);\n\n React.useEffect(() => {\n if (email === \"null\") {\n const email = window.prompt(\"Enter your username\");\n setEmail(email);\n }\n if (email && email !== \"example\") {\n const url = `https://sheline-art-website-api.herokuapp.com/patrick/led-options/${email}`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setName(data.name);\n setZipCode(data.zip_code);\n setRss_feeds(JSON.parse(data.rss_feeds));\n setStockSymbols(JSON.parse(data.stock_symbols));\n setRankings(JSON.parse(data.rankings) || []);\n setSportsToDisplay(JSON.parse(data.sports_to_display) || []);\n setShowDow(data.show_dow);\n setShowCommodities(data.show_commodities);\n setShowNasdaq(data.show_nasdaq);\n setShowOnlyLive(data.show_only_live);\n setShowStocksDuringTheWeek(data.stocks_during_the_week);\n setShowStocks(data.show_stocks);\n setShowOnlyStocks(data.just_stocks);\n setGainersDeclinersSpliceValue(data.just_stocks_splice_value);\n setTimeZone(data.time_zone);\n setShowWeather(data.show_weather);\n setCustomHeadline(data.custom_headline);\n setCustomHeadline2(data.custom_headline_2);\n setCustomHeadline3(data.custom_headline_3);\n setCustomHeadline4(data.custom_headline_4);\n setShowCustomHeadline(data.show_custom_headline);\n setWithOnboarding(data.with_onboarding);\n })\n .catch((error) => console.error(error));\n } else {\n setName(\"Example\");\n }\n }, [email]);\n\n const getStockInfo = async (symbol) => {\n const stockURL = `https://finnhub.io/api/v1/quote?token=bri2e6vrh5rep8a5fkm0&symbol=`;\n return await fetch(stockURL + symbol).then((response) => response.json());\n };\n const handleAddStockSymbol = async (stockSymbol) => {\n const { d } = await getStockInfo(stockSymbol);\n !d && setErrorMessage(\"Not a valid stock symbol\");\n d ? setStockSymbols([...stock_symbols, stockSymbol]) : setShowErrorAlert(true);\n };\n const startRunning = () => {\n // const url = `https://sheline-art-website-api.herokuapp.com/golf/update`;\n const url = `http://localhost:3001/golf/teeTimes`;\n console.log(url);\n const requestOptions = {\n method: \"GET\",\n };\n fetch(url, requestOptions)\n .then((response) => {\n console.log(response);\n })\n .catch((err) => {\n console.warn(err);\n });\n };\n const handleUpdateRunning = () => {\n // const url = `https://sheline-art-website-api.herokuapp.com/golf/update`;\n const url = `http://localhost:3001/golf/update`;\n const requestOptions = {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => {\n console.log(response);\n })\n .catch((err) => {\n console.warn(err);\n });\n };\n\n // {/* \n // NCAA Basketball Rankings\n // */}\n // {/* \n // NCAA Basketball TOP 25\n // */}\n const sports = [\n { value: \"pga\", disabled: false, name: \"PGA Tour\" },\n { value: \"mlb\", disabled: false, name: \"MLB\" },\n { value: \"nfl\", disabled: false, name: \"NFL\" },\n { value: \"fantasy\", disabled: false, name: \"Top Fantasy Football Players\" },\n { value: \"nhl\", disabled: false, name: \"NHL\" },\n { value: \"nba\", disabled: false, name: \"NBA\" },\n { value: \"englishPremierLeague\", disabled: false, name: \"English Premier League\" },\n { value: \"rankings\", disabled: false, name: \"NCAA Football Rankings\" },\n { value: \"top25\", disabled: false, name: \"NCAA Football Top 25\" },\n { value: \"big12\", disabled: false, name: \"Big 12 Football\" },\n { value: \"sec\", disabled: false, name: \"SEC Football\" },\n { value: \"acc\", disabled: false, name: \"ACC Football\" },\n { value: \"big10\", disabled: false, name: \"Big 10 Football\" },\n { value: \"pac12\", disabled: false, name: \"Pac 12 Football\" },\n { value: \"aac\", disabled: false, name: \"AAC Football\" },\n { value: \"mls\", disabled: false, name: \"MLS\" },\n { value: \"ufc\", disabled: false, name: \"UFC\" },\n { value: \"f1\", disabled: false, name: \"F1\" },\n { value: \"olympicMedals\", disabled: false, name: \"Olympic Medal Count\" },\n { value: \"top25Basketball\", disabled: true, name: \"NCAA Basketball\" },\n { value: \"liv\", disabled: true, name: \"LIV Golf\" },\n ];\n const news = [\n { value: \"cowboysWire\", name: \"Cowboys Wire\" },\n { value: \"bloggingTheBoys\", name: \"Blogging The Boys (Dallas Cowboys)\" },\n { value: \"espnTopStories\", name: \"ESPN Top Stories\" },\n { value: \"espnNBA\", name: \"ESPN NBA\" },\n { value: \"espnNFL\", name: \"ESPN NFL\" },\n { value: \"espnMLB\", name: \"ESPN MLB\" },\n { value: \"astrosNews\", name: \"Houston Astros\" },\n { value: \"espnGolf\", name: \"ESPN Golf\" },\n { value: \"espnCollegeBasketball\", name: \"ESPN College Basketball\" },\n { value: \"espnCollegeFootball\", name: \"ESPN College Football\" },\n { value: \"cnn\", name: \"CNN News\" },\n { value: \"foxNews\", name: \"Fox News\" },\n { value: \"abcHouston\", name: \"ABC Houston\" },\n { value: \"marketWatch\", name: \"Market Watch\" },\n { value: \"investingDotCom\", name: \"Investing.com\" },\n ];\n\n const handleSubmit = () => {\n const user = email;\n const url = `https://sheline-art-website-api.herokuapp.com/patrick/${user}`;\n // const url = `http://localhost:3001/patrick/${email}`;\n const requestOptions = {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n user,\n zip_code,\n show_weather,\n show_dow,\n show_nasdaq,\n show_only_live,\n just_stocks,\n just_stocks_splice_value,\n time_zone,\n stock_symbols,\n rss_feeds,\n rankings,\n sports_to_display,\n custom_headline,\n custom_headline_2,\n custom_headline_3,\n custom_headline_4,\n show_custom_headline,\n show_commodities,\n stocks_during_the_week,\n show_stocks,\n }),\n };\n fetch(url, requestOptions)\n .then((response) => {\n pushMessageToSnackbar({\n text: \"Your settings have been updated!\",\n });\n })\n .catch((err) => {\n console.error(err);\n pushMessageToSnackbar({\n text: \"ERROR\",\n });\n });\n };\n\n // const checkZipCodeValid = () => {\n // const isValidZip = /(^\\d{5}$)|(^\\d{5}-\\d{4}$)/.test(zip_code);\n // return isValidZip;\n // };\n if (email) {\n return (\n \n \n \n \n LED OPTIONS FOR\n \n \n {email}\n \n \n You can bookmark this directly{\" \"}\n \n https://www.mancavedisplays.com/settings/{email}\n \n \n {email === \"pbullion@gmail.com\" && (\n \n \n Check the API\n \n \n )}\n {email === \"pbullionnnn@gmail.com\" && (\n \n \n Golf\n \n \n handleUpdateRunning()}>\n Turn On\n \n startRunning()}>\n Start\n \n \n \n )}\n \n }>\n \n SPORTS\n \n \n \n \n \n {sports.map((sport, index) => (\n \n \n {sport.name} \n \n \n \n {\n if (sports_to_display.includes(sport.value)) {\n setSportsToDisplay(\n sports_to_display.filter((s) => s !== sport.value)\n );\n } else {\n setSportsToDisplay((prevValue) => [...prevValue, sport.value]);\n }\n }}\n />\n \n \n \n ))}\n \n
\n \n setShowOnlyLive(!show_only_live)}\n />\n }\n label=\"Show ONLY live games\"\n />\n \n \n \n handleSubmit()}>\n Update\n \n \n \n \n }>\n \n NEWS\n \n \n \n \n \n {news.map((x, index) => (\n \n \n {x.name} \n \n \n \n {\n if (rss_feeds.includes(x.value)) {\n setRss_feeds(rss_feeds.filter((s) => s !== x.value));\n } else {\n setRss_feeds((prevValue) => [...prevValue, x.value]);\n }\n }}\n />\n \n \n \n ))}\n \n
\n \n \n handleSubmit()}>\n Update\n \n \n \n \n }>\n \n CUSTOM HEADLINES\n \n \n \n \n setCustomHeadline2(e.target.value.toUpperCase())}\n endAdornment={\n \n setCustomHeadline2(\" \")}>\n \n \n \n }\n style={{ width: \"100%\", marginTop: 20 }}\n label=\"Enter Custom Headline\"\n />\n \n \n setCustomHeadline3(e.target.value.toUpperCase())}\n endAdornment={\n \n setCustomHeadline3(\" \")}>\n \n \n \n }\n style={{ width: \"100%\", marginTop: 20 }}\n label=\"Enter Custom Headline\"\n />\n \n \n setCustomHeadline4(e.target.value.toUpperCase())}\n endAdornment={\n \n setCustomHeadline4(\" \")}>\n \n \n \n }\n style={{ width: \"100%\", marginTop: 20 }}\n label=\"Enter Custom Headline\"\n />\n \n \n \n handleSubmit()}>\n Update\n \n \n \n \n }>\n \n STOCKS\n \n \n \n \n \n \n \n setShowStocks(!show_stocks)}\n />\n }\n label=\"Show Stocks\"\n />\n \n \n setShowStocksDuringTheWeek(!stocks_during_the_week)}\n />\n }\n label=\"Only Show During the Week\"\n />\n \n \n \n \n setStockSymbol(e.target.value.toUpperCase())}\n style={{ width: 200 }}\n label=\"Stock Symbol\"\n />\n \n {\n handleAddStockSymbol(stockSymbol);\n }}>\n Add\n \n \n \n {/* \n setShowDow(!show_dow)}\n />\n }\n label=\"Show Dow Jones Ind\"\n />\n \n \n setShowNasdaq(!show_nasdaq)}\n />\n }\n label=\"Show NASDAQ\"\n />\n */}\n \n {stock_symbols.map((symbol, idx) => {\n return (\n {\n const filtered = stock_symbols.filter((x) => x !== symbol);\n setStockSymbols([...filtered]);\n }}\n />\n );\n })}\n \n \n setShowCommodities(!show_commodities)}\n />\n }\n label=\"Show Commodities\"\n />\n \n \n \n setShowOnlyStocks(!just_stocks)}\n />\n }\n label=\"Show the top gainers and decliners\"\n />\n \n \n Amount to show\n \n setGainersDeclinersSpliceValue(e.target.value)}\n input={\n \n }\n style={{ width: 200 }}\n MenuProps={{ disableScrollLock: true }}>\n 5 \n 10 \n 15 \n 20 \n 30 \n \n \n \n \n \n \n
\n \n \n handleSubmit()}>\n Update\n \n \n \n \n }>\n \n MISC\n \n \n \n \n \n Time Zone\n \n {\n setTimeZone(e.target.value);\n }}\n input={\n \n }\n style={{ width: 200, marginBottom: 10 }}\n MenuProps={{ disableScrollLock: true }}>\n Central \n Eastern \n Mountain \n Pacific \n \n handleSubmit()}>\n Update\n \n \n \n \n WiFi Instructions\n \n \n \n \n \n \n \n );\n } else {\n return (\n \n \n \n Mancave Displays\n \n \n
\n );\n }\n}\n\nexport default withStyles(styles, { withTheme: true })(LEDSettings);\n","import React from \"react\";\nimport { Container, Typography } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport pic1 from \"./wifiPics/1.png\";\nimport pic2 from \"./wifiPics/2.png\";\n\nconst styles = (theme) => ({\n icon: {\n marginRight: theme.spacing(2),\n },\n heroContent: {\n backgroundColor: theme.palette.background.paper,\n padding: theme.spacing(0, 0, 0),\n },\n heroButtons: {\n marginTop: theme.spacing(4),\n },\n cardGrid: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(8),\n justifyContent: \"center\",\n },\n card: {\n height: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n },\n cardMedia: {\n paddingTop: \"56.25%\", // 16:9\n },\n cardContent: {\n flexGrow: 1,\n },\n footer: {\n backgroundColor: theme.palette.background.paper,\n padding: theme.spacing(6),\n },\n});\n\nfunction WiFiInstructions(props) {\n const { classes } = props;\n\n return (\n \n \n \n \n \n WiFi Instructions\n \n \n
\n \n \n Power off the ticker \n Remove the Micro SD card from the Rasperberry Pi \n Use the Micro SD to USB adapter and plug into a computer \n Open the 'bootfs' drive \n Open the 'Wifi Instructions' folder and open the file 'wpa_supplicant.conf' \n Replace the WiFi name and password and hit save. \n COPY that file and paste it in the main bootfs level. \n (Make sure you copy the file over, once the pi powers on and connects to the wifi it deletes that file.) \n Eject the disk \n Pop it back in the Pi and power it up! \n \n \n \n
\n
\n
\n \n \n \n \n
\n \n \n );\n}\nexport default withStyles(styles, { withTheme: true })(WiFiInstructions);\n","import React from \"react\";\nimport { Container, Typography, Grid } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport pic1 from \"./wifiPics/onboarding/1.png\";\nimport pic2 from \"./wifiPics/onboarding/2.png\";\nimport pic3 from \"./wifiPics/onboarding/3.png\";\nimport pic4 from \"./wifiPics/onboarding/4.png\";\nimport pic5 from \"./wifiPics/onboarding/5.png\";\nimport calculateSpacing from \"../home/calculateSpacing\";\nimport useWidth from \"../../../shared/functions/useWidth\";\n\nconst styles = (theme) => ({\n icon: {\n marginRight: theme.spacing(2),\n },\n heroContent: {\n backgroundColor: theme.palette.background.paper,\n padding: theme.spacing(0, 0, 0),\n },\n heroButtons: {\n marginTop: theme.spacing(4),\n },\n cardGrid: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(8),\n justifyContent: \"center\",\n },\n card: {\n height: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n },\n cardMedia: {\n paddingTop: \"56.25%\", // 16:9\n },\n cardContent: {\n flexGrow: 1,\n },\n footer: {\n backgroundColor: theme.palette.background.paper,\n padding: theme.spacing(6),\n },\n});\n\nfunction WiFiInstructions(props) {\n const { classes } = props;\n\n const { theme } = props;\n const width = useWidth();\n return (\n \n \n \n
\n \n WiFi Instructions\n \n \n NOTE: On iPhone, Safari will not let you connect using bluetooth. You'll need to\n download Chrome in the AppStore\n \n \n \n app.remote.it\n \n \n \n
\n \n
\n {[1, 2, 3, 4, 5].map((element) => {\n const pics = [pic1, pic2, pic3, pic4, pic5];\n const headlines = [\n \"Create an Account\",\n \"Choose Raspberry Pi\",\n \"Click Onboard via Bluetooth\",\n \"Select your device on the popup\",\n \"Choose your WiFi Network and enter your password\",\n ];\n return (\n \n \n {headlines[element - 1]}\n \n \n \n );\n })}\n \n
\n {/* \n \n Power off the ticker \n \n */}\n \n \n );\n}\nexport default withStyles(styles, { withTheme: true })(WiFiInstructions);\n","import React from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport ReactLoading from \"react-loading\";\nimport dak_dancing_vertical from \"./gifs/dak_dancing.gif\";\nimport cowboy_crawl_vertical from \"./gifs/cowboy_crawl.gif\";\nimport dak_card_vertical from \"./gifs/dak_card.gif\";\nimport dak_celebrate_vertical from \"./gifs/dak_celebrate.gif\";\nimport dak_surprised_vertical from \"./gifs/dak_surprised.gif\";\nimport baylor_letsgo_vertical from \"./gifs/baylor_letsgo.gif\";\nimport baylor_trophy_vertical from \"./gifs/baylor_trophy.gif\";\nimport jerry_jones_wink_vertical from \"./gifs/jerry_jones_wink.gif\";\nimport ceedee1_vertical from \"./gifs/ceedee1.gif\";\nimport ceedee2_vertical from \"./gifs/ceedee2.gif\";\nimport ceedee3_vertical from \"./gifs/ceedee3.gif\";\nimport cowboys1_vertical from \"./gifs/cowboys1.gif\";\nimport cowboys2_vertical from \"./gifs/cowboys2.gif\";\nimport cowboys4_vertical from \"./gifs/cowboys4.gif\";\nimport cowboys5_vertical from \"./gifs/cowboys5.gif\";\nimport cowboys6_vertical from \"./gifs/cowboys6.gif\";\nimport cowboys7_vertical from \"./gifs/cowboys7.gif\";\nimport penny1 from \"./gifs/penny1.gif\";\nimport penny2 from \"./gifs/penny2.gif\";\nimport cowboys8_vertical from \"./gifs/cowboys8.gif\";\nimport cowboys9_vertical from \"./gifs/cowboys9.gif\";\nimport cowboys10_vertical from \"./gifs/cowboys10.gif\";\nimport altuve_fist_pump_vertical from \"./gifs/altuve_fist_pump.gif\";\nimport verlander from \"./gifs/verlander.gif\";\nimport bregman_stare_vertical from \"./gifs/bregman_stare.gif\";\nimport orbit_streaking_vertical from \"./gifs/orbit_streaking.gif\";\nimport baylor_mascot_vertical from \"./gifs/baylor_mascot.gif\";\n\nconst allGifs = [\n // {\n // name: \"crawfish1\",\n // source:\n // \"https://media.tenor.com/1XbLd-IZBxoAAAAi/arborwear-arborwearinaction.gif\",\n // },\n // {\n // name: \"crawfish2\",\n // source: \"https://media.tenor.com/p68uX4FaxOoAAAAC/crawfish-suck.gif\",\n // },\n // {\n // name: \"crawfish3\",\n // source:\n // \"https://media.tenor.com/e87x2iAWef4AAAAd/lovelypeaches-raeswae.gif\",\n // },\n // {\n // name: \"crawfish4\",\n // source: \"https://media.tenor.com/M_rhsSjMN4kAAAAC/lobster.gif\",\n // },\n // {\n // name: \"crawfish5\",\n // source: \"https://media.tenor.com/Tm0dQvRJnjMAAAAd/pubg-lobster-dance.gif\",\n // },\n // {\n // name: \"crawfish6\",\n // source: \"https://media.tenor.com/7e1Wq3iaMuEAAAAC/dancing-lobster.gif\",\n // },\n // {\n // name: \"crawfish7\",\n // source: \"https://media.tenor.com/tIPHtFu83CgAAAAC/cray-claw.gif\",\n // },\n {\n name: \"astros_1\",\n type: \"gif\",\n source:\n \"https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExbzF3NnRkejUxcnM5c2x0djh4M3FrNWtxaHVkc3RxNzVtYXg1bWJxMCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/xdOHskFTeeezSiZKV0/giphy.gif\",\n },\n {\n name: \"astros_2\",\n type: \"gif\",\n source:\n \"https://media0.giphy.com/media/v1.Y2lkPTc5MGI3NjExeHR4bmZjYWxveGcwNWMyenZqdXR2bHNrMjdkdnpicmxiaXVyYzkwOSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/13xqqCvw1EfTA4/giphy.gif\",\n },\n {\n name: \"astros_3\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExejcxOG95dGhoY2Rhc241NnJvbmUybTB4cjdkeHdiOWh2azY2Y3N4cSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/e3d4pLXBlLA9CQnYBZ/giphy.gif\",\n },\n {\n name: \"astros_4\",\n type: \"gif\",\n source:\n \"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExYTNwOXUxZ3hlcmdhcThnbDIzZW51M3g3ZWNjNGh3anptZGFiOGtzaSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/fXy19DXz4MSrsDzzvO/giphy.gif\",\n },\n {\n name: \"astros_5\",\n type: \"gif\",\n source:\n \"https://media0.giphy.com/media/v1.Y2lkPTc5MGI3NjExdzRub2FhdTdvdzM5Nm1jNDJhd3czbmpraWM0Mm9idHdybG0zdWJlcyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/6u9t67tyN1mV6VMrf7/giphy.gif\",\n },\n {\n name: \"astros_6\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExdDRrc2N2dG81eTZvbDkzZnd5a3BhY2ZwejJ4M3lvYmZoYzU1eHoyMyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/l1J9BSsgrLzeRET6w/giphy.gif\",\n },\n {\n name: \"astros_7\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExZ24wb2FnYmRjdmo3M3o4NHBuZG1rbjc2NzI3bmo5YjVyN3d3c2xtbiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/dnaVdVWzERCJp5p6c0/giphy.gif\",\n },\n {\n name: \"astros_8\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExYnZ2bjVwNzc2ZDlvcmJtaGR0bHFsMXVueG93ZjZhY3phdTFvZjd6YiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/J64oHwGIuUlXvB2m6d/giphy.gif\",\n },\n {\n name: \"astros_9\",\n type: \"gif\",\n source:\n \"https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExZWt6MWpoYmV6MnRvZWE0Ymo2Ym5kcDV1M2h4dTh1endwcmRsank0cCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/WLFcyJrctgU3n9pDsz/giphy.gif\",\n },\n {\n name: \"astros_10\",\n type: \"gif\",\n source:\n \"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExeG1zeDRoYTF6NzgzcWRwaDJ6MHRxZDJpcHo0dDQ0aTJ2eXl0cm5sMSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/YvkIb1jE3PgyhreB39/giphy.gif\",\n },\n {\n name: \"astros_11\",\n type: \"gif\",\n source:\n \"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExZDhqcnl5Zm1zZTBkZzkyaGprYmFqMjdodjZsNnJnNTdoamI0dGNteCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/OIjuuBYcWsCsspXmSH/giphy.gif\",\n },\n {\n name: \"astros_12\",\n type: \"gif\",\n source: \"https://media.tenor.com/1Yv5d2XswC0AAAAM/astros-altuve.gif\",\n },\n {\n name: \"astros_13\",\n type: \"gif\",\n source:\n \"https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExbzBnMDZhZTlicHl3bHRma2d5ZzFtbWpxbWp2d25vM3ZsbXhwM3YxbSZlcD12MV9naWZzX3NlYXJjaCZjdD1n/XDvdC9mPIL4uffwug1/giphy.gif\",\n },\n {\n name: \"astros_14\",\n type: \"gif\",\n source: \"https://media.tenor.com/E6Z93UJjSj8AAAAC/houston-astros-jeremy-pena.gif\",\n },\n {\n name: \"astros_15\",\n type: \"gif\",\n source: \"https://i.pinimg.com/originals/6e/14/ae/6e14aecf26165234ae25d76c27f488aa.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/DB130XgMlu0AAAAM/texas-sucks-flat-down.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/foWTSrq9nNoAAAAd/texas-sucks-football.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/gGVoviTyIXMAAAAC/horns-down-ncaa.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/jcwPx1QFjWUAAAAM/crying-sad.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/o0AIiwVkFAAAAAAC/texas-longhorns.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/Mr2Qi114erEAAAAC/texas-longhorns.gif\",\n },\n {\n name: \"sooners\",\n type: \"gif\",\n source: \"https://cdn2.sbnation.com/imported_assets/810437/STOOPSFACE.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source:\n \"https://cdn.vox-cdn.com/thumbor/1xTKGQnGaN9KJlJor3WkA3pwVQo=/0x0:640x360/1600x900/cdn.vox-cdn.com/uploads/chorus_image/image/26107587/texas-ffffff.0.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source:\n \"https://cdn.vox-cdn.com/thumbor/JH5g373SuEIEkiAS01HV89d2-8g=/34x0:408x249/1400x933/filters:focal(34x0:408x249):no_upscale()/cdn.vox-cdn.com/uploads/chorus_image/image/3852309/texas-fan-f-bomb.0.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://i.gifer.com/3HcW.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://cdn2.sbnation.com/imported_assets/835730/TEXASHOTTIES.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media2.giphy.com/media/cOCxyX1af3Psk/giphy.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://assets.sbnation.com/assets/1549829/macktheknife.gif\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/gncmzsaby9491/pb/m2-res_720p.mp4?m=DASHPlaylist.mpd&v=1&e=1695679200&s=88b858378bf625d3aac0ddba3e65210a38c2e1ec#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/f4xm8oix3l741/pb/m2-res_720p.mp4?m=DASHPlaylist.mpd&v=1&e=1695715200&s=39da950ae30bfd7e6f6aedb2dc6171393f14351e#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/gb907h1te2o61/pb/m2-res_1080p.mp4?m=DASHPlaylist.mpd&v=1&e=1695726000&s=bdf588f2a314fdb954673ada7e3870fd22f7e0cd#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/x272pwlh19v71/pb/m2-res_720p.mp4?m=DASHPlaylist.mpd&v=1&e=1695715200&s=8be6e3199be9f518c38de84f43156b03348b980f#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/s27qy05qawi71/pb/m2-res_720p.mp4?m=DASHPlaylist.mpd&v=1&e=1695715200&s=9de0fe05ac9a58ff8a363eec723c989808e9aaef#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source: \"https://i.imgur.com/SKTYJe9.mp4\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/772i8wnc2n791/pb/m2-res_1080p.mp4?m=DASHPlaylist.mpd&v=1&e=1695682800&s=ae2fb9aa8eb20d5d262ff7d0d7f82f62709fc322#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source: \"https://preview.redd.it/j1twsx5ektz71.gif?width=576&format=mp4&s=65251a3ca4946a81fa73d06a29082cd188376332\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source: \"https://preview.redd.it/kcgecl549sz71.gif?format=mp4&s=cd374bb196feab0e557c3f39170aee556ab26ad4\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source:\n \"https://packaged-media.redd.it/4hr3ejqhcxmb1/pb/m2-res_1278p.mp4?m=DASHPlaylist.mpd&v=1&e=1695517200&s=5e4faec085a7d717f33571ec0b1c0ca46fcbd55b#t=0\",\n },\n {\n name: \"hooters\",\n type: \"video\",\n source: \"https://i.imgur.com/GVadhui.mp4\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source: \"https://wp.usatodaysports.com/wp-content/uploads/sites/90/2014/08/untitled-3.gif\",\n },\n {\n name: \"rockets\",\n type: \"gif\",\n source: \"https://img.washingtonpost.com/blogs/early-lead/files/2015/12/harden.gif\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source:\n \"https://media4.giphy.com/media/ftquUhWzKDoqQiq1gp/giphy.gif?cid=6c09b952m2e1qbqiv578xm9pi5tbmh6qu93ywklcwansaxfm&ep=v1_internal_gif_by_id&rid=giphy.gif&ct=g\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source: \"https://media.tenor.com/GNS0oghlZu0AAAAM/hooters-hooters-girl.gif\",\n },\n {\n name: \"millerlite\",\n type: \"gif\",\n source:\n \"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExbzJpdnJldzNuYmhsM2cxenB3MWt1aHY5ZDJiM2lwdHNtY3A3bG51bSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/RMSo1sn0oTNtT1TfZK/giphy.gif\",\n },\n {\n name: \"millerlite\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExdGs5bGZ0MmhnbDZ6YWNzbjMwcWc5dTBxNzhheWo5a3o5c2Nvd2UyNCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/XJWuOOrXxBmnPX6q0e/giphy.gif\",\n },\n {\n name: \"millerlite\",\n type: \"gif\",\n source:\n \"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExZ2swMGs0anBobmw2YnQ5aWIwd3VzN2x5YmNpbGF6M2NneHNxcmFyciZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/k6rab32agadkrkrBYr/giphy.gif\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source:\n \"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExcmJpcHcxdmI1eHJ3ajd2dWdldTI3MTNzMmFsNzVjcHIwNDdoOWN0NyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/ftquUhWzKDoqQiq1gp/giphy.gif\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source:\n \"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExMzY1bXlqYWl2OGdqN3lueDc2MDUzM2NwNjFqc2VlOWo0eHplNDZqbSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/UUMHoZU0TFKrm/giphy.gif\",\n },\n {\n name: \"hooters\",\n type: \"gif\",\n source:\n \"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExeXY4N2dpMGp1M3lpczB2eGR2YXQ4bXdlbm51d3F6aWNodXVlMGFxYiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/fxIiyB4gCf4QsJ8Dmh/giphy.gif\",\n },\n {\n name: \"peaks\",\n type: \"gif\",\n source: \"https://media1.giphy.com/media/SWTufsSWEU5OsJlimZ/200.gif\",\n },\n {\n name: \"longhorns\",\n type: \"gif\",\n source: \"https://media.tenor.com/Mr2Qi114erEAAAAM/texas-longhorns.gif\",\n },\n {\n name: \"texastech\",\n type: \"gif\",\n source: \"https://media.tenor.com/zMKUF1g-zjkAAAAM/texas-tech.gif\",\n },\n {\n name: \"sooners\",\n type: \"gif\",\n source: \"https://media.tenor.com/-lDYW3F_pUYAAAAM/ousucks-oustillsucks.gif\",\n },\n {\n name: \"rangers\",\n type: \"gif\",\n source: \"https://media.tenor.com/ZpXG1cehLqMAAAAM/texas-rangers-rangers.gif\",\n },\n {\n name: \"astros_16\",\n type: \"gif\",\n source:\n \"https://media1.giphy.com/media/3ov9jJCRZS6nxwQ2sM/giphy.gif?cid=82a1493blx3b1jt6xxw04fcdtk1ma8dz259ghpc9pxo1d33w&ep=v1_gifs_search&rid=giphy.gif&ct=g\",\n },\n { name: \"astros_orbit_streaking_vertical\", type: \"gif\", source: orbit_streaking_vertical },\n { name: \"astros_bregman_stare_vertical\", type: \"gif\", source: bregman_stare_vertical },\n { name: \"astros_verlander\", type: \"gif\", source: verlander },\n { name: \"baylor_mascot_vertical\", type: \"gif\", source: baylor_mascot_vertical },\n { name: \"baylor_letsgo_vertical\", type: \"gif\", source: baylor_letsgo_vertical },\n // {\n // name: \"astros_altuve_fist_pump_vertical\",\n // type: \"gif\",\n // source: altuve_fist_pump_vertical,\n // },\n { name: \"baylor_trophy_vertical\", type: \"gif\", source: baylor_trophy_vertical },\n { name: \"cowboys_dak_dancing_vertical\", type: \"gif\", source: dak_dancing_vertical },\n { name: \"cowboys_dak_card_vertical\", type: \"gif\", source: dak_card_vertical },\n { name: \"cowboys_cowboys9_vertical\", type: \"gif\", source: cowboys9_vertical },\n { name: \"cowboys_cowboy_crawl_vertical\", type: \"gif\", source: cowboy_crawl_vertical },\n { name: \"cowboys_ceedee2_vertical\", type: \"gif\", source: ceedee2_vertical },\n { name: \"cowboys_cowboys4_vertical\", type: \"gif\", source: cowboys4_vertical },\n {\n name: \"cowboys_jerry_jones_wink_vertical\",\n type: \"gif\",\n source: jerry_jones_wink_vertical,\n },\n { name: \"cowboys_cowboys8_vertical\", type: \"gif\", source: cowboys8_vertical },\n { name: \"cowboys_cowboys2_vertical\", type: \"gif\", source: cowboys2_vertical },\n { name: \"cowboys_cowboys7_vertical\", type: \"gif\", source: cowboys7_vertical },\n { name: \"cowboys_ceedee3_vertical\", type: \"gif\", source: ceedee3_vertical },\n { name: \"cowboys_dak_surprised_vertical\", type: \"gif\", source: dak_surprised_vertical },\n { name: \"cowboys_cowboys1_vertical\", type: \"gif\", source: cowboys1_vertical },\n { name: \"cowboys_ceedee1_vertical\", type: \"gif\", source: ceedee1_vertical },\n { name: \"cowboys_dak_celebrate_vertical\", type: \"gif\", source: dak_celebrate_vertical },\n { name: \"penny1\", type: \"gif\", source: penny1 },\n { name: \"penny2\", type: \"gif\", source: penny2 },\n { name: \"cowboys_cowboys5_vertical\", type: \"gif\", source: cowboys5_vertical },\n { name: \"cowboys_cowboys6_vertical\", type: \"gif\", source: cowboys6_vertical },\n { name: \"cowboys_cowboys10_vertical\", type: \"gif\", source: cowboys10_vertical },\n];\nfunction GifDisplay(props) {\n const { vertical, selectGifDisplay } = props;\n const [dayOfTheWeek, setDayOfTheWeek] = React.useState(\"Saturday\");\n const [isLoading, setIsLoading] = React.useState(false);\n const [currentIndex, setCurrentIndex] = React.useState(0);\n const [isVertical, setIsVertical] = React.useState(vertical);\n const [gifs, setGifs] = React.useState([]);\n const shuffle = (array) => {\n for (let i = array.length - 1; i > 0; i--) {\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]];\n }\n return array;\n };\n React.useEffect(() => {\n const theGifs = allGifs\n .filter((x) => !x.name.includes(\"astro\"))\n .filter((gif) => {\n if (dayOfTheWeek === \"Saturday\") {\n console.log(\"🚀 ~ file: GifDisplay.js:426 ~ .filter ~ dayOfTheWeek:\", dayOfTheWeek);\n if (!gif.name.includes(\"cowboys\")) return gif;\n } else if (dayOfTheWeek === \"Sunday\") {\n if (!gif.name.includes(\"longhorns\") && !gif.name.includes(\"sooners\") && !gif.name.includes(\"baylor\")) return gif;\n } else if (dayOfTheWeek !== \"Sunday\" || dayOfTheWeek !== \"Saturday\") {\n if (!gif.name.includes(\"longhorns\") && !gif.name.includes(\"sooners\") && !gif.name.includes(\"cowboys\")) return gif;\n } else return gif;\n return gif;\n });\n setGifs(shuffle(theGifs));\n }, []);\n React.useEffect(() => {\n selectGifDisplay();\n }, [selectGifDisplay]);\n React.useEffect(() => {\n let interval = 4000;\n const intervalId = setInterval(() => {\n if (currentIndex === gifs.length - 1) {\n setCurrentIndex(0);\n } else {\n const next = currentIndex + 1;\n setCurrentIndex(next);\n }\n }, interval);\n return () => clearInterval(intervalId);\n }, [currentIndex]);\n\n return (\n \n
\n
\n \n
\n {gifs.length === 0 && (\n
\n \n
\n )}\n {gifs.length > 0 && (\n
\n {gifs[currentIndex].type === \"gif\" ? (\n
\n ) : (\n
\n )}\n
\n )}\n
\n );\n}\nexport default GifDisplay;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport {\n Grid,\n Typography,\n FormControl,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n Slider,\n Box,\n} from \"@mui/material\";\nimport { WiDaySunny, WiDayCloudy, WiThunderstorm, WiSnow } from \"weather-icons-react\";\nimport { useParams, useHistory } from \"react-router-dom\";\nimport ReactLoading from \"react-loading\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport SportsBasketballIcon from \"@mui/icons-material/SportsBasketball\";\nimport SportsHockeyIcon from \"@mui/icons-material/SportsHockey\";\nimport ArrowLeftIcon from \"@mui/icons-material/ArrowLeft\";\nimport { parseISO, parse, format, formatDistanceToNow } from \"date-fns\";\nimport ToggleButton from \"@mui/material/ToggleButton\";\nimport ToggleButtonGroup from \"@mui/material/ToggleButtonGroup\";\nimport browserDetect from \"browser-detect\";\nimport NorthIcon from \"@mui/icons-material/North\";\n\nfunction Basketball(props) {\n const history = useHistory();\n const browserData = browserDetect();\n const { email, defaultFontSize } = useParams();\n const { game } = props;\n const [textSize, setTextSize] = useState(0);\n const [updateInterval, setUpdateInterval] = useState(15000);\n const [screenWidth, setScreenWidth] = useState(500);\n const [screenHeight, setScreenHeight] = useState(500);\n const [allGames, setAllGames] = useState([]);\n const [isSettingsOpen, setIsSettingsOpen] = useState(false);\n const [showOverlay, setShowOverlay] = useState(true);\n const [onlyOneColumn, setOnlyOneColumn] = useState(false);\n const [justTop25Basketball, setJustTop25Basketball] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [isBehindTheScenesLoading, setIsBehindTheScenesLoading] = useState(false);\n const [user, setUser] = useState(email);\n const [lastUpdated, setLastUpdated] = useState(new Date().toLocaleString().split(\", \")[1]);\n const isLoadingRef = useRef(isLoading);\n const [sessionID, setSessionID] = useState(\"\");\n const sessionIDRef = useRef(sessionID);\n sessionIDRef.current = sessionID;\n isLoadingRef.current = isLoading;\n const [gameData, setGameData] = useState(null);\n const [homeTeamData, setHomeTeamData] = useState(null);\n const [awayTeamData, setAwayTeamData] = useState(null);\n\n useEffect(() => {}, [allGames]);\n useEffect(() => {\n console.log(\"proplskdjfkljsdlkfjslkdjfksdjfklsjdflksdjfksldfks\", props);\n // find browser width and height\n fetchGame();\n }, []);\n useEffect(() => {\n const userAgent = navigator.userAgent;\n // Example check, adjust the condition based on the actual user agent of Fire TV devices\n console.log(\"🚀 ~ useEffect ~ userAgent:\", userAgent);\n if (userAgent.includes(\"AFT\")) {\n console.log(\"its a firestick\");\n console.log(\"🚀 ~ useEffect ~ userAgent:\", userAgent);\n }\n }, []);\n useEffect(() => {\n const getUpdate = () => {\n fetchGame();\n if (showOverlay) {\n setShowOverlay(false);\n }\n };\n const intervalId = setInterval(getUpdate, updateInterval);\n return () => clearInterval(intervalId);\n }, []);\n const teamBackgroundLinks = {\n NFL: [],\n NHL: [],\n NCAABASKETBALL: [\n {\n team: \"Baylor Bears\",\n homeCourtImage:\n \"https://d1nnrx9kca53zl.cloudfront.net/images/2024/1/2/tcu_preview.jpg?width=1920&quality=80&format=jpg\",\n },\n ],\n NCAAFOOTBALL: [\n {\n team: \"Baylor Bears\",\n homeCourtImage:\n \"https://media.cnn.com/api/v1/images/stellar/prod/180907121350-08-expensive-college-football-stadiums-restricted.jpg?q=w_3000,h_2000,x_0,y_0,c_fill\",\n },\n ],\n NBA: [\n {\n team: \"Atlanta Hawks\",\n homeCourtImage:\n \"https://www.si.com/.image/t_share/MTY4MTk5MDc1NDU0OTIwNjA1/atlanta-hawks-court-design.jpg\",\n },\n {\n team: \"Boston Celtics\",\n homeCourtImage:\n \"https://www.usatoday.com/gcdn/-mm-/c6e2110e80db775d97a01f91cc007e28eb969db0/c=0-270-5314-3272/local/-/media/2017/07/14/USATODAY/USATODAY/636356422161757120-GTY-688490038.jpg\",\n },\n {\n team: \"Brooklyn Nets\",\n homeCourtImage:\n \"https://res.cloudinary.com/hello-tickets/image/upload/c_limit,f_auto,q_auto,w_768/v1615886593/post_images/new-york-1/NBA-NY/nets_Cropped.jpg\",\n },\n {\n team: \"Charlotte Hornets\",\n homeCourtImage:\n \"https://www.charlotteobserver.com/latest-news/xli32x/picture245386640/alternates/FREE_1140/Court%20Image.jpg\",\n },\n {\n team: \"Chicago Bulls\",\n homeCourtImage: \"https://cdn.getyourguide.com/img/tour/3a3af9b900e9a46d.png/145.jpg\",\n },\n {\n team: \"Cleveland Cavaliers\",\n homeCourtImage:\n \"https://venuecoalition.com/wp-content/uploads/2018/01/Quicken-Loans-Arena-Packed-House.webp\",\n },\n {\n team: \"Dallas Mavericks\",\n homeCourtImage:\n \"https://dmn-dallas-news-prod.cdn.arcpublishing.com/resizer/v2/CMJWHCOOG6YIIS26WGEDR2RWYM.jpg?auth=5f4908031fd94264c5339f9aa58af9031a743f07f0f669f3790133d14a44b21c&height=553&width=830&smart=true\",\n },\n {\n team: \"Houston Rockets\",\n homeCourtImage: \"https://pbs.twimg.com/media/F-BV19FWIAE3782?format=jpg&name=4096x4096\",\n },\n {\n team: \"Denver Nuggets\",\n homeCourtImage:\n \"https://fhsroyalbanner.com/wp-content/uploads/2023/04/ball-arena-900x675.jpg\",\n },\n {\n team: \"Detroit Pistons\",\n homeCourtImage:\n \"https://www.freep.com/gcdn/-mm-/57d27fb7ab6e87dc79319cca5217d1da937b6ef1/c=0-0-1086-613/local/-/media/2017/05/17/DetroitFreeP/DetroitFreePress/636306158844890957-Capture2.PNG?width=1086&height=543&fit=crop&format=pjpg&auto=webp\",\n },\n {\n team: \"Golden State Warriors\",\n homeCourtImage:\n \"https://www.denverpost.com/wp-content/uploads/2019/08/SJM-L-CHASE-0827-5.jpg?w=620\",\n },\n {\n team: \"Indiana Pacers\",\n homeCourtImage:\n \"https://res.cloudinary.com/simpleview/image/upload/v1668708531/clients/indy/Indiana_Pacers_fb87db1b-55b4-45d9-97ee-cce6ffea1ee7.jpg\",\n },\n {\n team: \"Los Angeles Clippers\",\n homeCourtImage:\n \"https://www.usatoday.com/gcdn/presto/2022/11/22/USAT/79d2d9a3-9364-4ea5-a912-2c28250b5368-render2_3.jpg?crop=3000,2000,x0,y0\",\n },\n {\n team: \"Los Angeles Lakers\",\n homeCourtImage:\n \"https://www.yardbarker.com/media/4/0/408d65a9dadbeb0aa6be7dddc70469fa47a81f75/thumb_16x9/nov-30-2022-los-angeles-california-usa-general.jpg\",\n },\n {\n team: \"Memphis Grizzlies\",\n homeCourtImage:\n \"https://fef-cdn.grizzliesapp.com/sites/default/files/styles/event_banner_1536x600/public/1536x530-memphis-grizzlies-court-2.jpg?itok=2o-dtN_p\",\n },\n {\n team: \"Miami Heat\",\n homeCourtImage:\n \"https://static.wixstatic.com/media/fff9be_014379482cd4420b93f1f944be7138b2~mv2.jpg/v1/fill/w_1000,h_750,al_c,q_85,usm_0.66_1.00_0.01/fff9be_014379482cd4420b93f1f944be7138b2~mv2.jpg\",\n },\n {\n team: \"Milwaukee Bucks\",\n homeCourtImage:\n \"https://newscdn2.weigelbroadcasting.com/9Tkhi-1496425944-51179-blog-9200005_G.jpg\",\n },\n {\n team: \"Minnesota Timberwolves\",\n homeCourtImage:\n \"https://d5c1j5k5drfk7.cloudfront.net/wp-content/uploads/2022/04/TW-2021.12.17-Lakers-1813.jpg\",\n },\n {\n team: \"New Orleans Pelicans\",\n homeCourtImage: \"https://cdn.getyourguide.com/img/tour/dac26284a07c1a5c.png/145.jpg\",\n },\n {\n team: \"New York Knicks\",\n homeCourtImage:\n \"https://cdn.nba.com/teams/uploads/sites/1610612752/2022/06/NYK_031518_0626.jpg\",\n },\n {\n team: \"Oklahoma City Thunder\",\n homeCourtImage:\n \"https://okcthunderwire.usatoday.com/wp-content/uploads/sites/36/2022/04/USATSI_15324008.jpg?w=1000&h=600&crop=1\",\n },\n {\n team: \"Orlando Magic\",\n homeCourtImage:\n \"https://www.kiacenter.com/assets/img/Orlando-Magic-Tip-Off-2018-slide-cac091c390.jpg\",\n },\n {\n team: \"Philadelphia 76ers\",\n homeCourtImage:\n \"https://cloudfront-us-east-1.images.arcpublishing.com/pmn/SKVJDA5NVZGADPRHQIGA33CENA.jpg\",\n },\n {\n team: \"Phoenix Suns\",\n homeCourtImage: \"https://www.sportsvideo.org/wp-content/uploads/2021/01/unnamed-1-6.jpg\",\n },\n {\n team: \"Portland Trail Blazers\",\n homeCourtImage:\n \"https://katu.com/resources/media2/16x9/full/1015/center/80/55270a24-fbac-46de-9556-dd63fd3a6a64-large16x9_TrailBlazerskickoff2021Season.jpg\",\n },\n {\n team: \"Sacramento Kings\",\n homeCourtImage:\n \"https://library.sportingnews.com/styles/crop_style_16_9_desktop/s3/2021-08/kingsarena2-sn-ftr-111016jpg_flpm8u6atw2zz1g2ih339lbq.jpg?itok=lWwxdo0o\",\n },\n {\n team: \"San Antonio Spurs\",\n homeCourtImage:\n \"https://media2.sacurrent.com/sacurrent/imager/u/original/30079836/spurs.jpg\",\n },\n {\n team: \"Toronto Raptors\",\n homeCourtImage:\n \"https://library.sportingnews.com/styles/crop_style_16_9_desktop/s3/2022-01/toronto-raptors-scotiabank-arena-10092021-nbae-getty-ftr_1jr3ltbt0m5p91i7nqzidpbmxs.jpg?itok=VVsGe-_B\",\n },\n {\n team: \"Utah Jazz\",\n homeCourtImage:\n \"https://www.visitutah.com/azure/cmsroot/visitutah/media/site-assets/three-season-photography/wasatch-metro/salt-lake-city-2/utah_jazz-3_salt-lake-city_laegever-jason_2021.jpg?w=1054&h=660&mode=crop&quality=65\",\n },\n {\n team: \"Washington Wizards\",\n homeCourtImage:\n \"https://s3.us-east-1.amazonaws.com/vnda-cockpit/www-streetopia-me/2021/02/02/6018b2cbefaa5wizards02.jpg\",\n },\n ],\n };\n\n const getNFLGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNHLGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/hockey/nhl/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNBAGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNCAAFootballGames = async () => {\n const id = game.id;\n return await fetch(\n `https://site.api.espn.com/apis/site/v2/sports/football/college-football/scoreboard?groups=80`\n )\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.error(error);\n });\n };\n const getNCAAGame = async () => {\n const id = game.id;\n return await fetch(\n `https://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/scoreboard?groups=50&limit=900`\n )\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const fetchGame = async () => {\n const theGame =\n game.sport === \"NCAAFOOTBALL\"\n ? await getNCAAFootballGames()\n : game.sport === \"NFL\"\n ? await getNFLGame()\n : game.sport === \"NBA\"\n ? await getNBAGame()\n : game.sport === \"NHL\"\n ? await getNHLGame()\n : await getNCAAGame();\n console.log(\"🚀 ~ fetchGame ~ game:\", theGame);\n setGameData(theGame);\n setHomeTeamData(theGame.competitions[0].competitors[0]);\n setAwayTeamData(theGame.competitions[0].competitors[1]);\n setIsLoading(false);\n };\n const getBackgroundImage = () => {\n const homeTeam = homeTeamData.team.location + \" \" + homeTeamData.team.name;\n const awayTeam = awayTeamData.team.location + \" \" + awayTeamData.team.name;\n const team = homeTeam || awayTeam === \"Baylor Bears\" ? \"Baylor Bears\" : homeTeam;\n const foundBackground = teamBackgroundLinks[game.sport].find((x) => x.team === team) || null;\n if (foundBackground) {\n return `url(${foundBackground.homeCourtImage})`;\n } else if (game.sport === \"NFL\") {\n return \"url(https://sportshub.cbsistatic.com/i/r/2023/11/08/148dcaaa-8d71-4bca-9a8d-859f19410255/thumbnail/1200x675/8289e894a2b470e7392624dbebe6ae98/sblogo.jpg)\";\n } else if (game.sport === \"NHL\") {\n return \"url(https://media.istockphoto.com/id/1177875348/photo/ice-hockey-rink-and-illuminated-indoor-arena-with-fans-face-off-circle-view.jpg?s=612x612&w=0&k=20&c=c2AedC-J5TY1ObHxs2XZgUPy7pk5HbxJv-m1vElHzTo=)\";\n } else if (game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\") {\n return \"url(https://shupirates.com/images/2020/3/31/7N7A9391.jpg)\";\n } else {\n return;\n }\n };\n const getNetworkLogo = (network) => {\n const espnLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a0/ESPN%27s_Old_Logo.png/320px-ESPN%27s_Old_Logo.png\";\n const cbsLogo = \"https://www.pngall.com/wp-content/uploads/13/CBS-Logo-PNG-File.png\";\n const foxLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/2/25/FOX_wordmark.svg/2560px-FOX_wordmark.svg.png\";\n const nbcLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/3/3f/NBC_logo.svg/567px-NBC_logo.svg.png\";\n const foxSports1Logo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/3/37/2015_Fox_Sports_1_logo.svg/1200px-2015_Fox_Sports_1_logo.svg.png\";\n const nbaTVLogo = \"https://seeklogo.com/images/N/nba-tv-logo-9865A907F8-seeklogo.com.png\";\n const nhlNetLogo =\n \"https://awfulannouncing.com/wp-content/uploads/sites/94/2014/01/NHLNetwork.jpg\";\n const peacockLogo =\n \"https://www.peacocktv.com/static/peacock-toolkit/0.25.2/logo/peacock-wob.png\";\n const ACCNLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/f/fd/ACC_Network_ESPN_logo.svg/1024px-ACC_Network_ESPN_logo.svg.png\";\n const ESPNPlusLogo =\n \"https://cnbl-cdn.bamgrid.com/assets/72cfeeec0d56bc88c3a1e501ff9d3e3b141ea52d6af9e9ab417173a2491099f2/original\";\n const ESPN2Logo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/ESPN2_logo.svg/1280px-ESPN2_logo.svg.png\";\n const TNTLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/9/99/TNT_TV_logo.svg/1200px-TNT_TV_logo.svg.png\";\n const SECLogo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/b/b9/SEC_Network_logo.svg/2560px-SEC_Network_logo.svg.png\";\n const BTNLogo =\n \"https://upload.wikimedia.org/wikipedia/en/thumb/3/39/Big_Ten_Network_Logo.svg/1200px-Big_Ten_Network_Logo.svg.png\";\n if (network.includes(\"CBS\")) {\n return ;\n } else if (network.includes(\"ESPN+\")) {\n return ;\n } else if (network.includes(\"ESPN2\")) {\n return ;\n } else if (network.includes(\"ESPN\")) {\n return ;\n } else if (network.includes(\"FOX\")) {\n return ;\n } else if (network.includes(\"NBC\")) {\n return ;\n } else if (network.includes(\"FS1\")) {\n return ;\n } else if (network.includes(\"NBA\")) {\n return ;\n } else if (network.includes(\"NHL\")) {\n return ;\n } else if (network.includes(\"Peacock\")) {\n return ;\n } else if (network.includes(\"ACCN\")) {\n return ;\n } else if (network.includes(\"TNT\")) {\n return ;\n } else if (network.includes(\"SEC\")) {\n return ;\n } else if (network.includes(\"BTN\")) {\n return ;\n } else return null;\n };\n const subtractHours = (timeStr, zone) => {\n const [hours, minutesPart] = timeStr.split(\":\");\n const minutes = minutesPart.substring(0, 2);\n const amPm = minutesPart.substring(3);\n let date = new Date();\n date.setHours((hours % 12) + (amPm.toLowerCase() === \"pm\" ? 12 : 0), minutes, 0);\n date.setHours(date.getHours() - zone.diff);\n let newHours = date.getHours();\n const newMinutes = date.getMinutes();\n const newAmPm = newHours >= 12 ? \"PM\" : \"AM\";\n newHours = newHours % 12;\n newHours = newHours ? newHours : 12; // the hour '0' should be '12'\n\n return `${newHours.toString()}:${newMinutes.toString().padStart(2, \"0\")} ${newAmPm}`;\n };\n function convertToUserLocalTime(timeStr) {\n console.log(\"🚀 ~ convertToUserLocalTime ~ timeStr:\", timeStr);\n return timeStr;\n // const timezoneMap = {\n // \"America/New_York\": { abbr: \"EST\", diff: 0 },\n // \"America/Chicago\": { abbr: \"CST\", diff: 1 },\n // \"America/Denver\": { abbr: \"MST\", diff: 2 },\n // \"America/Phoenix\": { abbr: \"MTN\", diff: 3 },\n // \"America/Los_Angeles\": { abbr: \"PST\", diff: 4 },\n // \"America/Anchorage\": { abbr: \"AKST\", diff: 5 },\n // \"Pacific/Honolulu\": { abbr: \"HST\", diff: 6 },\n // };\n // const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n // const zone = timezoneMap[timeZone] || { abbr: \"EST\", diff: 0 };\n // console.log(\"🚀 ~ convertToUserLocalTime ~ zone:\", zone);\n // return subtractHours(timeStr.split(\" EST\")[0], zone);\n }\n function calculateLuminance(rgb) {\n // Calculate the luminance of an RGB color\n var r = rgb.r / 255;\n var g = rgb.g / 255;\n var b = rgb.b / 255;\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n }\n function hexToRgb(hex) {\n // Convert a hex color to RGB\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n }\n function getContrastingColor(primaryColor, alternateColor) {\n var primaryRgb = hexToRgb(primaryColor);\n var alternateRgb = hexToRgb(alternateColor);\n\n var primaryLuminance = calculateLuminance(primaryRgb);\n var alternateLuminance = calculateLuminance(alternateRgb);\n\n var luminanceDifference = Math.abs(primaryLuminance - alternateLuminance);\n\n if (luminanceDifference < 0.5) {\n return \"#ffffff\";\n } else {\n return alternateColor;\n }\n }\n if (isLoading) {\n return (\n \n \n \n Click the settings icons on the bottom right to choose what sports to display\n \n \n SEE THE SETTINGS FOR SOME MORE USEFULL TIPS\n \n
\n );\n } else {\n return (\n {\n history.push(`/odds-screen/${email}`);\n }}\n style={{\n width: \"100vw\",\n height: \"100vh\",\n backgroundImage: getBackgroundImage(),\n backgroundPosition: \"center\",\n backgroundRepeat: \"no-repeat\",\n backgroundSize: \"cover\",\n display: \"flex\",\n }}>\n
\n
\n
\n
\n
\n {awayTeamData.team.location}\n \n
\n {awayTeamData.team.name}\n \n
1 ? \"2.5rem\" : 1.5 + textSize + \"rem\",\n marginBottom: 10,\n marginTop: 10,\n }}\n color={\"white\"}>\n Overall: ({awayTeamData.records[0]?.summary})\n \n {!awayTeamData.leaders &&\n [1, 2, 3].map((x, idx) => (\n
\n
\n
\n
\n
\n \n \n
\n
\n ))}\n {awayTeamData.leaders &&\n awayTeamData.leaders\n .filter((x) => x.name !== \"rating\")\n .map((x, idx) => (\n
\n
\n
\n
\n
\n \n {x.leaders[0].athlete.displayName}\n \n \n {x.leaders[0].displayValue} {x.shortDisplayName}\n \n
\n
\n ))}\n
\n
\n
\n
\n {gameData.status.type.name !== \"STATUS_FINAL\" &&\n gameData.status.type.name !== \"STATUS_SCHEDULED\" && (\n
\n {getNetworkLogo(game.tvChannel)}\n \n )}\n {gameData.status.type.name === \"STATUS_SCHEDULED\" && (\n <>\n
1 ? \"6rem\" : 5 + textSize + \"rem\",\n marginTop: 100,\n }}\n color={\"white\"}>\n {format(\n parse(\n gameData.status.type.detail.split(\" at \")[0],\n \"EEE, MMMM do\",\n new Date()\n ),\n \"EEE, MMM do\"\n )}\n \n
\n {convertToUserLocalTime(gameData.status.type.detail.split(\" at \")[1])}\n \n
\n {getNetworkLogo(game.tvChannel)}\n \n >\n )}\n {gameData.status.type.name === \"STATUS_END_PERIOD\" && (\n <>\n
\n {gameData.status.type.shortDetail}\n \n >\n )}\n {gameData.status.type.detail === \"Halftime\" && (\n
\n {gameData.status.type.detail}\n \n )}\n {gameData.status.type.name === \"STATUS_FINAL\" && (\n
\n {gameData.status.type.shortDetail.toUpperCase()}\n \n )}\n {gameData.status.type.name !== \"STATUS_SCHEDULED\" && (\n
\n parseInt(homeTeamData.score)\n ? \"#39FF14\"\n : awayTeamData.score === homeTeamData.score\n ? \"yellow\"\n : \"red\"\n }>\n {awayTeamData.score}\n \n parseInt(awayTeamData.score)\n ? \"#39FF14\"\n : awayTeamData.score === homeTeamData.score\n ? \"yellow\"\n : \"red\"\n }>\n {homeTeamData.score}\n \n
\n )}\n {gameData.status.type.name === \"STATUS_IN_PROGRESS\" && (\n
\n \n {gameData.status.type.detail.split(\" - \")[1]}\n \n \n {gameData.status.type.shortDetail.split(\" - \")[0]}\n \n
\n )}\n {gameData.status.type.name === \"STATUS_SCHEDULED\" && (\n
\n \n O/U {gameData.competitions[0].odds[0].overUnder}\n \n \n {gameData.competitions[0].odds[0].details}\n \n
\n )}\n\n
\n {(game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\") &&\n gameData.status.type.name !== \"STATUS_SCHEDULED\" &&\n [\"fieldGoal\", \"threePoint\", \"freeThrow\", \"rebounds\", \"assists\"].map((x, idx) => {\n if (x === \"fieldGoal\") {\n const awayData = awayTeamData.statistics.filter((x) =>\n x.name.includes(\"fieldGoal\")\n );\n const homeData = homeTeamData.statistics.filter((x) =>\n x.name.includes(\"fieldGoal\")\n );\n return (\n
\n
\n \n {awayData.find((x) => x.name === \"fieldGoalPct\").displayValue}%\n \n \n {awayData.find((x) => x.name === \"fieldGoalsMade\").displayValue}/\n {awayData.find((x) => x.name === \"fieldGoalsAttempted\").displayValue}\n \n
\n
\n \n FG\n \n
\n
\n \n {homeData.find((x) => x.name === \"fieldGoalPct\").displayValue}%\n \n \n {homeData.find((x) => x.name === \"fieldGoalsMade\").displayValue}/\n {homeData.find((x) => x.name === \"fieldGoalsAttempted\").displayValue}\n \n
\n
\n );\n }\n if (x === \"threePoint\") {\n const awayData = awayTeamData.statistics.filter((x) =>\n x.name.includes(\"threePoint\")\n );\n console.log(\"🚀 :\", awayData);\n const homeData = homeTeamData.statistics.filter((x) =>\n x.name.includes(\"threePoint\")\n );\n console.log(\"🚀Data:\", homeData);\n return (\n
\n
\n \n {\n awayData.find((x) => x.name === \"threePointFieldGoalPct\")\n .displayValue\n }\n %\n \n \n {\n awayData.find((x) => x.name === \"threePointFieldGoalsMade\")\n .displayValue\n }\n /\n {\n awayData.find((x) => x.name === \"threePointFieldGoalsAttempted\")\n .displayValue\n }\n \n
\n
\n \n 3P\n \n
\n
\n \n {\n homeData.find((x) => x.name === \"threePointFieldGoalPct\")\n .displayValue\n }\n %\n \n \n {\n homeData.find((x) => x.name === \"threePointFieldGoalsMade\")\n .displayValue\n }\n /\n {\n homeData.find((x) => x.name === \"threePointFieldGoalsAttempted\")\n .displayValue\n }\n \n
\n
\n );\n }\n if (x === \"freeThrow\") {\n const awayData = awayTeamData.statistics.filter((x) =>\n x.name.includes(\"freeThrow\")\n );\n const homeData = homeTeamData.statistics.filter((x) =>\n x.name.includes(\"freeThrow\")\n );\n return (\n
\n
\n \n {awayData.find((x) => x.name === \"freeThrowPct\").displayValue}%\n \n \n {awayData.find((x) => x.name === \"freeThrowsMade\").displayValue}/\n {awayData.find((x) => x.name === \"freeThrowsAttempted\").displayValue}\n \n
\n
\n \n FT\n \n
\n
\n \n {homeData.find((x) => x.name === \"freeThrowPct\").displayValue}%\n \n \n {homeData.find((x) => x.name === \"freeThrowsMade\").displayValue}/\n {homeData.find((x) => x.name === \"freeThrowsAttempted\").displayValue}\n \n
\n
\n );\n }\n return (\n
\n \n
\n );\n })}\n
\n
\n
\n
\n
\n
\n
\n {homeTeamData.team.location}\n \n
\n {homeTeamData.team.name}\n \n
1 ? \"2.5rem\" : 1.5 + textSize + \"rem\",\n marginBottom: 10,\n marginTop: 10,\n }}\n color={\"white\"}>\n Overall: ({homeTeamData.records[0]?.summary})\n \n {!homeTeamData.leaders &&\n [1, 2, 3].map((x, idx) => (\n
\n
\n
\n
\n
\n \n \n
\n
\n ))}\n {homeTeamData.leaders &&\n homeTeamData.leaders\n .filter((x) => x.name !== \"rating\")\n .map((x, idx) => (\n
\n
\n \n {x.leaders[0].athlete.displayName}\n \n \n {x.leaders[0].displayValue}{\" \"}\n {x.shortDisplayName !== \"RAT\" ? x.shortDisplayName : null}\n \n
\n
\n
\n
\n
\n ))}\n
\n
\n
\n
\n setIsSettingsOpen(true)}\n />\n setIsSettingsOpen(true)}\n style={{\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n fontSize: 1.5 + \"rem\",\n cursor: \"pointer\",\n }}\n color={\"white\"}>\n mancavedisplays.com\n \n
\n {showOverlay && (\n
setIsSettingsOpen(true)}\n style={{\n zIndex: 1000,\n display: \"flex\",\n cursor: \"pointer\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignContent: \"center\",\n position: \"absolute\",\n top: 50,\n left: 0,\n padding: 20,\n backgroundColor: \"green\",\n color: \"white\",\n borderRadius: 20,\n }}>\n \n \n CLICK UP HERE TO CHANGE THE FONT SIZE\n \n
\n )}\n
setIsSettingsOpen(false)}\n maxWidth=\"xxl\"\n fullWidth>\n Font Size \n \n {/* \n Font Size\n */}\n \n setTextSize(value)}\n />\n \n \n \n \n \n Manage Subscription\n \n setIsSettingsOpen(false)}>Close \n
\n \n \n
\n );\n }\n}\nexport default Basketball;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport {\n Grid,\n Typography,\n FormControl,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n Slider,\n Box,\n} from \"@mui/material\";\nimport { WiDaySunny, WiDayCloudy, WiThunderstorm, WiSnow } from \"weather-icons-react\";\nimport { useParams, useHistory } from \"react-router-dom\";\nimport ReactLoading from \"react-loading\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport SportsBasketballIcon from \"@mui/icons-material/SportsBasketball\";\nimport SportsHockeyIcon from \"@mui/icons-material/SportsHockey\";\nimport ArrowLeftIcon from \"@mui/icons-material/ArrowLeft\";\nimport { parseISO, parse, format, formatDistanceToNow } from \"date-fns\";\nimport ToggleButton from \"@mui/material/ToggleButton\";\nimport ToggleButtonGroup from \"@mui/material/ToggleButtonGroup\";\nimport browserDetect from \"browser-detect\";\nimport NorthIcon from \"@mui/icons-material/North\";\n\nfunction BasketballFirestick(props) {\n const history = useHistory();\n const browserData = browserDetect();\n const { email, defaultFontSize } = useParams();\n const { game } = props;\n const [textSize, setTextSize] = useState(0);\n const [updateInterval, setUpdateInterval] = useState(15000);\n const [screenWidth, setScreenWidth] = useState(500);\n const [screenHeight, setScreenHeight] = useState(500);\n const [allGames, setAllGames] = useState([]);\n const [isSettingsOpen, setIsSettingsOpen] = useState(false);\n const [showOverlay, setShowOverlay] = useState(true);\n const [onlyOneColumn, setOnlyOneColumn] = useState(false);\n const [justTop25Basketball, setJustTop25Basketball] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [isBehindTheScenesLoading, setIsBehindTheScenesLoading] = useState(false);\n const [user, setUser] = useState(email);\n const [lastUpdated, setLastUpdated] = useState(new Date().toLocaleString().split(\", \")[1]);\n const isLoadingRef = useRef(isLoading);\n const [sessionID, setSessionID] = useState(\"\");\n const sessionIDRef = useRef(sessionID);\n sessionIDRef.current = sessionID;\n isLoadingRef.current = isLoading;\n const [gameData, setGameData] = useState(null);\n const [homeTeamData, setHomeTeamData] = useState(null);\n const [awayTeamData, setAwayTeamData] = useState(null);\n\n useEffect(() => {}, [allGames]);\n useEffect(() => {\n console.log(\"props\", props);\n // find browser width and height\n fetchGame();\n }, []);\n useEffect(() => {\n const userAgent = navigator.userAgent;\n // Example check, adjust the condition based on the actual user agent of Fire TV devices\n console.log(\"🚀 ~ useEffect ~ userAgent:\", userAgent);\n if (userAgent.includes(\"AFT\")) {\n console.log(\"its a firestick\");\n console.log(\"🚀 ~ useEffect ~ userAgent:\", userAgent);\n }\n }, []);\n useEffect(() => {\n const getUpdate = () => {\n fetchGame();\n if (showOverlay) {\n setShowOverlay(false);\n }\n };\n const intervalId = setInterval(getUpdate, updateInterval);\n return () => clearInterval(intervalId);\n }, []);\n const teamBackgroundLinks = {\n NFL: [],\n NHL: [],\n NCAABASKETBALL: [\n {\n team: \"Baylor Bears\",\n homeCourtImage: \"https://d1nnrx9kca53zl.cloudfront.net/images/2024/1/2/tcu_preview.jpg?width=1920&quality=80&format=jpg\",\n },\n ],\n NBA: [\n { team: \"Atlanta Hawks\", homeCourtImage: \"https://www.si.com/.image/t_share/MTY4MTk5MDc1NDU0OTIwNjA1/atlanta-hawks-court-design.jpg\" },\n {\n team: \"Boston Celtics\",\n homeCourtImage:\n \"https://www.usatoday.com/gcdn/-mm-/c6e2110e80db775d97a01f91cc007e28eb969db0/c=0-270-5314-3272/local/-/media/2017/07/14/USATODAY/USATODAY/636356422161757120-GTY-688490038.jpg\",\n },\n {\n team: \"Brooklyn Nets\",\n homeCourtImage:\n \"https://res.cloudinary.com/hello-tickets/image/upload/c_limit,f_auto,q_auto,w_768/v1615886593/post_images/new-york-1/NBA-NY/nets_Cropped.jpg\",\n },\n {\n team: \"Charlotte Hornets\",\n homeCourtImage: \"https://www.charlotteobserver.com/latest-news/xli32x/picture245386640/alternates/FREE_1140/Court%20Image.jpg\",\n },\n { team: \"Chicago Bulls\", homeCourtImage: \"https://cdn.getyourguide.com/img/tour/3a3af9b900e9a46d.png/145.jpg\" },\n { team: \"Cleveland Cavaliers\", homeCourtImage: \"https://venuecoalition.com/wp-content/uploads/2018/01/Quicken-Loans-Arena-Packed-House.webp\" },\n {\n team: \"Dallas Mavericks\",\n homeCourtImage:\n \"https://dmn-dallas-news-prod.cdn.arcpublishing.com/resizer/v2/CMJWHCOOG6YIIS26WGEDR2RWYM.jpg?auth=5f4908031fd94264c5339f9aa58af9031a743f07f0f669f3790133d14a44b21c&height=553&width=830&smart=true\",\n },\n { team: \"Houston Rockets\", homeCourtImage: \"https://pbs.twimg.com/media/F-BV19FWIAE3782?format=jpg&name=4096x4096\" },\n { team: \"Denver Nuggets\", homeCourtImage: \"https://fhsroyalbanner.com/wp-content/uploads/2023/04/ball-arena-900x675.jpg\" },\n {\n team: \"Detroit Pistons\",\n homeCourtImage:\n \"https://www.freep.com/gcdn/-mm-/57d27fb7ab6e87dc79319cca5217d1da937b6ef1/c=0-0-1086-613/local/-/media/2017/05/17/DetroitFreeP/DetroitFreePress/636306158844890957-Capture2.PNG?width=1086&height=543&fit=crop&format=pjpg&auto=webp\",\n },\n { team: \"Golden State Warriors\", homeCourtImage: \"https://www.denverpost.com/wp-content/uploads/2019/08/SJM-L-CHASE-0827-5.jpg?w=620\" },\n {\n team: \"Indiana Pacers\",\n homeCourtImage:\n \"https://res.cloudinary.com/simpleview/image/upload/v1668708531/clients/indy/Indiana_Pacers_fb87db1b-55b4-45d9-97ee-cce6ffea1ee7.jpg\",\n },\n {\n team: \"Los Angeles Clippers\",\n homeCourtImage:\n \"https://www.usatoday.com/gcdn/presto/2022/11/22/USAT/79d2d9a3-9364-4ea5-a912-2c28250b5368-render2_3.jpg?crop=3000,2000,x0,y0\",\n },\n {\n team: \"Los Angeles Lakers\",\n homeCourtImage:\n \"https://www.yardbarker.com/media/4/0/408d65a9dadbeb0aa6be7dddc70469fa47a81f75/thumb_16x9/nov-30-2022-los-angeles-california-usa-general.jpg\",\n },\n {\n team: \"Memphis Grizzlies\",\n homeCourtImage:\n \"https://fef-cdn.grizzliesapp.com/sites/default/files/styles/event_banner_1536x600/public/1536x530-memphis-grizzlies-court-2.jpg?itok=2o-dtN_p\",\n },\n {\n team: \"Miami Heat\",\n homeCourtImage:\n \"https://static.wixstatic.com/media/fff9be_014379482cd4420b93f1f944be7138b2~mv2.jpg/v1/fill/w_1000,h_750,al_c,q_85,usm_0.66_1.00_0.01/fff9be_014379482cd4420b93f1f944be7138b2~mv2.jpg\",\n },\n { team: \"Milwaukee Bucks\", homeCourtImage: \"https://newscdn2.weigelbroadcasting.com/9Tkhi-1496425944-51179-blog-9200005_G.jpg\" },\n {\n team: \"Minnesota Timberwolves\",\n homeCourtImage: \"https://d5c1j5k5drfk7.cloudfront.net/wp-content/uploads/2022/04/TW-2021.12.17-Lakers-1813.jpg\",\n },\n { team: \"New Orleans Pelicans\", homeCourtImage: \"https://cdn.getyourguide.com/img/tour/dac26284a07c1a5c.png/145.jpg\" },\n { team: \"New York Knicks\", homeCourtImage: \"https://cdn.nba.com/teams/uploads/sites/1610612752/2022/06/NYK_031518_0626.jpg\" },\n {\n team: \"Oklahoma City Thunder\",\n homeCourtImage: \"https://okcthunderwire.usatoday.com/wp-content/uploads/sites/36/2022/04/USATSI_15324008.jpg?w=1000&h=600&crop=1\",\n },\n { team: \"Orlando Magic\", homeCourtImage: \"https://www.kiacenter.com/assets/img/Orlando-Magic-Tip-Off-2018-slide-cac091c390.jpg\" },\n { team: \"Philadelphia 76ers\", homeCourtImage: \"https://cloudfront-us-east-1.images.arcpublishing.com/pmn/SKVJDA5NVZGADPRHQIGA33CENA.jpg\" },\n { team: \"Phoenix Suns\", homeCourtImage: \"https://www.sportsvideo.org/wp-content/uploads/2021/01/unnamed-1-6.jpg\" },\n {\n team: \"Portland Trail Blazers\",\n homeCourtImage:\n \"https://katu.com/resources/media2/16x9/full/1015/center/80/55270a24-fbac-46de-9556-dd63fd3a6a64-large16x9_TrailBlazerskickoff2021Season.jpg\",\n },\n {\n team: \"Sacramento Kings\",\n homeCourtImage:\n \"https://library.sportingnews.com/styles/crop_style_16_9_desktop/s3/2021-08/kingsarena2-sn-ftr-111016jpg_flpm8u6atw2zz1g2ih339lbq.jpg?itok=lWwxdo0o\",\n },\n { team: \"San Antonio Spurs\", homeCourtImage: \"https://media2.sacurrent.com/sacurrent/imager/u/original/30079836/spurs.jpg\" },\n {\n team: \"Toronto Raptors\",\n homeCourtImage:\n \"https://library.sportingnews.com/styles/crop_style_16_9_desktop/s3/2022-01/toronto-raptors-scotiabank-arena-10092021-nbae-getty-ftr_1jr3ltbt0m5p91i7nqzidpbmxs.jpg?itok=VVsGe-_B\",\n },\n {\n team: \"Utah Jazz\",\n homeCourtImage:\n \"https://www.visitutah.com/azure/cmsroot/visitutah/media/site-assets/three-season-photography/wasatch-metro/salt-lake-city-2/utah_jazz-3_salt-lake-city_laegever-jason_2021.jpg?w=1054&h=660&mode=crop&quality=65\",\n },\n {\n team: \"Washington Wizards\",\n homeCourtImage: \"https://s3.us-east-1.amazonaws.com/vnda-cockpit/www-streetopia-me/2021/02/02/6018b2cbefaa5wizards02.jpg\",\n },\n ],\n };\n\n const getNFLGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard?dates=20240211-20240211`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNHLGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/hockey/nhl/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNBAGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const getNCAAGame = async () => {\n const id = game.id;\n return await fetch(`https://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/scoreboard?groups=50&limit=900`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n return data.events.find((x) => x.id === id);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n const fetchGame = async () => {\n const theGame =\n game.sport === \"NFL\"\n ? await getNFLGame()\n : game.sport === \"NBA\"\n ? await getNBAGame()\n : game.sport === \"NHL\"\n ? await getNHLGame()\n : await getNCAAGame();\n console.log(\"🚀 ~ fetchGame ~ game:\", theGame);\n setGameData(theGame);\n setHomeTeamData(theGame.competitions[0].competitors[0]);\n setAwayTeamData(theGame.competitions[0].competitors[1]);\n setIsLoading(false);\n };\n const getBackgroundImage = () => {\n const homeTeam = homeTeamData.team.location + \" \" + homeTeamData.team.name;\n const awayTeam = awayTeamData.team.location + \" \" + awayTeamData.team.name;\n const team = homeTeam || awayTeam === \"Baylor Bears\" ? \"Baylor Bears\" : homeTeam;\n const foundBackground = teamBackgroundLinks[game.sport].find((x) => x.team === team) || null;\n if (foundBackground) {\n return `url(${foundBackground.homeCourtImage})`;\n } else if (game.sport === \"NFL\") {\n return \"url(https://sportshub.cbsistatic.com/i/r/2023/11/08/148dcaaa-8d71-4bca-9a8d-859f19410255/thumbnail/1200x675/8289e894a2b470e7392624dbebe6ae98/sblogo.jpg)\";\n } else if (game.sport === \"NHL\") {\n return \"url(https://media.istockphoto.com/id/1177875348/photo/ice-hockey-rink-and-illuminated-indoor-arena-with-fans-face-off-circle-view.jpg?s=612x612&w=0&k=20&c=c2AedC-J5TY1ObHxs2XZgUPy7pk5HbxJv-m1vElHzTo=)\";\n } else if (game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\") {\n return \"url(https://shupirates.com/images/2020/3/31/7N7A9391.jpg)\";\n } else {\n return;\n }\n };\n const getNetworkLogo = (network) => {\n const espnLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a0/ESPN%27s_Old_Logo.png/320px-ESPN%27s_Old_Logo.png\";\n const cbsLogo = \"https://www.pngall.com/wp-content/uploads/13/CBS-Logo-PNG-File.png\";\n const foxLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/2/25/FOX_wordmark.svg/2560px-FOX_wordmark.svg.png\";\n const nbcLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/3/3f/NBC_logo.svg/567px-NBC_logo.svg.png\";\n const foxSports1Logo =\n \"https://upload.wikimedia.org/wikipedia/commons/thumb/3/37/2015_Fox_Sports_1_logo.svg/1200px-2015_Fox_Sports_1_logo.svg.png\";\n const nbaTVLogo = \"https://seeklogo.com/images/N/nba-tv-logo-9865A907F8-seeklogo.com.png\";\n const nhlNetLogo = \"https://awfulannouncing.com/wp-content/uploads/sites/94/2014/01/NHLNetwork.jpg\";\n const peacockLogo = \"https://www.peacocktv.com/static/peacock-toolkit/0.25.2/logo/peacock-wob.png\";\n const ACCNLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/f/fd/ACC_Network_ESPN_logo.svg/1024px-ACC_Network_ESPN_logo.svg.png\";\n const ESPNPlusLogo = \"https://cnbl-cdn.bamgrid.com/assets/72cfeeec0d56bc88c3a1e501ff9d3e3b141ea52d6af9e9ab417173a2491099f2/original\";\n const ESPN2Logo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/ESPN2_logo.svg/1280px-ESPN2_logo.svg.png\";\n const TNTLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/9/99/TNT_TV_logo.svg/1200px-TNT_TV_logo.svg.png\";\n const SECLogo = \"https://upload.wikimedia.org/wikipedia/commons/thumb/b/b9/SEC_Network_logo.svg/2560px-SEC_Network_logo.svg.png\";\n const BTNLogo = \"https://upload.wikimedia.org/wikipedia/en/thumb/3/39/Big_Ten_Network_Logo.svg/1200px-Big_Ten_Network_Logo.svg.png\";\n if (network.includes(\"CBS\")) {\n return ;\n } else if (network.includes(\"ESPN+\")) {\n return ;\n } else if (network.includes(\"ESPN2\")) {\n return ;\n } else if (network.includes(\"ESPN\")) {\n return ;\n } else if (network.includes(\"FOX\")) {\n return ;\n } else if (network.includes(\"NBC\")) {\n return ;\n } else if (network.includes(\"FS1\")) {\n return ;\n } else if (network.includes(\"NBA\")) {\n return ;\n } else if (network.includes(\"NHL\")) {\n return ;\n } else if (network.includes(\"Peacock\")) {\n return ;\n } else if (network.includes(\"ACCN\")) {\n return ;\n } else if (network.includes(\"TNT\")) {\n return ;\n } else if (network.includes(\"SEC\")) {\n return ;\n } else if (network.includes(\"BTN\")) {\n return ;\n } else return null;\n };\n const subtractHours = (timeStr, zone) => {\n const [hours, minutesPart] = timeStr.split(\":\");\n const minutes = minutesPart.substring(0, 2);\n const amPm = minutesPart.substring(3);\n let date = new Date();\n date.setHours((hours % 12) + (amPm.toLowerCase() === \"pm\" ? 12 : 0), minutes, 0);\n date.setHours(date.getHours() - zone.diff);\n let newHours = date.getHours();\n const newMinutes = date.getMinutes();\n const newAmPm = newHours >= 12 ? \"PM\" : \"AM\";\n newHours = newHours % 12;\n newHours = newHours ? newHours : 12; // the hour '0' should be '12'\n\n return `${newHours.toString()}:${newMinutes.toString().padStart(2, \"0\")} ${newAmPm}`;\n };\n function convertToUserLocalTime(timeStr) {\n const timezoneMap = {\n \"America/New_York\": { abbr: \"EST\", diff: 0 },\n \"America/Chicago\": { abbr: \"CST\", diff: 1 },\n \"America/Denver\": { abbr: \"MST\", diff: 2 },\n \"America/Phoenix\": { abbr: \"MTN\", diff: 3 },\n \"America/Los_Angeles\": { abbr: \"PST\", diff: 4 },\n \"America/Anchorage\": { abbr: \"AKST\", diff: 5 },\n \"Pacific/Honolulu\": { abbr: \"HST\", diff: 6 },\n };\n const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const zone = timezoneMap[timeZone] || { abbr: \"EST\", diff: 0 };\n console.log(\"🚀 ~ convertToUserLocalTime ~ zone:\", zone);\n return subtractHours(timeStr.split(\" EST\")[0], zone);\n }\n function calculateLuminance(rgb) {\n // Calculate the luminance of an RGB color\n var r = rgb.r / 255;\n var g = rgb.g / 255;\n var b = rgb.b / 255;\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n }\n function hexToRgb(hex) {\n // Convert a hex color to RGB\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n }\n function getContrastingColor(primaryColor, alternateColor) {\n var primaryRgb = hexToRgb(primaryColor);\n var alternateRgb = hexToRgb(alternateColor);\n\n var primaryLuminance = calculateLuminance(primaryRgb);\n var alternateLuminance = calculateLuminance(alternateRgb);\n\n var luminanceDifference = Math.abs(primaryLuminance - alternateLuminance);\n\n if (luminanceDifference < 0.5) {\n return \"#ffffff\";\n } else {\n return alternateColor;\n }\n }\n if (isLoading) {\n return (\n \n \n \n Click the settings icons on the bottom right to choose what sports to display\n \n \n SEE THE SETTINGS FOR SOME MORE USEFULL TIPS\n \n
\n );\n } else {\n console.log(awayTeamData);\n console.log(homeTeamData);\n return (\n \n
\n
\n
\n
\n
\n {awayTeamData.team.location}\n \n
\n {awayTeamData.team.name}\n \n
1 ? \"1.5rem\" : 1 + textSize + \"rem\",\n marginBottom: 10,\n marginTop: 10,\n }}\n color={\"white\"}>\n Overall: ({awayTeamData.records[0].summary}) Road: ({awayTeamData.records.find((x) => x.type === \"road\").summary}){\" \"}\n \n {awayTeamData.leaders &&\n awayTeamData.leaders\n .filter((x) => x.name !== \"rating\")\n .map((x, idx) => (\n
\n
\n
\n
\n
\n \n {x.leaders[0].athlete.displayName}\n \n \n {x.leaders[0].displayValue} {x.shortDisplayName}\n \n
\n
\n ))}\n
\n
\n
\n
\n {gameData.status.type.name !== \"STATUS_FINAL\" && gameData.status.type.name !== \"STATUS_SCHEDULED\" && (\n
\n {getNetworkLogo(game.tvChannel)}\n \n )}\n {gameData.status.type.name === \"STATUS_SCHEDULED\" && (\n <>\n
1 ? \"2rem\" : 2 + textSize + \"rem\",\n marginTop: 100,\n }}\n color={\"white\"}>\n {format(parse(gameData.status.type.detail.split(\" at \")[0], \"EEE, MMMM do\", new Date()), \"EEE, MMM do\")}\n \n
\n {convertToUserLocalTime(gameData.status.type.detail.split(\" at \")[1])}\n \n
\n {getNetworkLogo(game.tvChannel)}\n \n >\n )}\n {gameData.status.type.name === \"STATUS_END_PERIOD\" && (\n <>\n
\n {gameData.status.type.shortDetail}\n \n >\n )}\n {gameData.status.type.detail === \"Halftime\" && (\n
\n {gameData.status.type.detail}\n \n )}\n {gameData.status.type.name === \"STATUS_FINAL\" && (\n
\n {gameData.status.type.shortDetail.toUpperCase()}\n \n )}\n {gameData.status.type.name !== \"STATUS_SCHEDULED\" && (\n
\n parseInt(homeTeamData.score)\n ? \"#39FF14\"\n : awayTeamData.score === homeTeamData.score\n ? \"yellow\"\n : \"red\"\n }>\n {awayTeamData.score}\n \n parseInt(awayTeamData.score)\n ? \"#39FF14\"\n : awayTeamData.score === homeTeamData.score\n ? \"yellow\"\n : \"red\"\n }>\n {homeTeamData.score}\n \n
\n )}\n {gameData.status.type.name === \"STATUS_IN_PROGRESS\" && (\n
\n \n {gameData.status.type.detail.split(\" - \")[1]}\n \n \n {gameData.status.type.shortDetail.split(\" - \")[0]}\n \n
\n )}\n {gameData.status.type.name === \"STATUS_SCHEDULED\" && (\n
\n \n O/U {gameData.competitions[0].odds[0].overUnder}\n \n \n {gameData.competitions[0].odds[0].details}\n \n
\n )}\n\n
\n {(game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\") &&\n gameData.status.type.name !== \"STATUS_SCHEDULED\" &&\n [\"fieldGoal\", \"threePoint\", \"freeThrow\", \"rebounds\", \"assists\"].map((x, idx) => {\n if (x === \"fieldGoal\") {\n const awayData = awayTeamData.statistics.filter((x) => x.name.includes(\"fieldGoal\"));\n const homeData = homeTeamData.statistics.filter((x) => x.name.includes(\"fieldGoal\"));\n return (\n
\n
\n \n {awayData.find((x) => x.name === \"fieldGoalPct\").displayValue}%\n \n \n {awayData.find((x) => x.name === \"fieldGoalsMade\").displayValue}/\n {awayData.find((x) => x.name === \"fieldGoalsAttempted\").displayValue}\n \n
\n
\n \n FG\n \n
\n
\n \n {homeData.find((x) => x.name === \"fieldGoalPct\").displayValue}%\n \n \n {homeData.find((x) => x.name === \"fieldGoalsMade\").displayValue}/\n {homeData.find((x) => x.name === \"fieldGoalsAttempted\").displayValue}\n \n
\n
\n );\n }\n if (x === \"threePoint\") {\n const awayData = awayTeamData.statistics.filter((x) => x.name.includes(\"threePoint\"));\n console.log(\"🚀 :\", awayData);\n const homeData = homeTeamData.statistics.filter((x) => x.name.includes(\"threePoint\"));\n console.log(\"🚀Data:\", homeData);\n return (\n
\n
\n \n {awayData.find((x) => x.name === \"threePointFieldGoalPct\").displayValue}%\n \n \n {awayData.find((x) => x.name === \"threePointFieldGoalsMade\").displayValue}/\n {awayData.find((x) => x.name === \"threePointFieldGoalsAttempted\").displayValue}\n \n
\n
\n \n 3P\n \n
\n
\n \n {homeData.find((x) => x.name === \"threePointFieldGoalPct\").displayValue}%\n \n \n {homeData.find((x) => x.name === \"threePointFieldGoalsMade\").displayValue}/\n {homeData.find((x) => x.name === \"threePointFieldGoalsAttempted\").displayValue}\n \n
\n
\n );\n }\n if (x === \"freeThrow\") {\n const awayData = awayTeamData.statistics.filter((x) => x.name.includes(\"freeThrow\"));\n const homeData = homeTeamData.statistics.filter((x) => x.name.includes(\"freeThrow\"));\n return (\n
\n
\n \n {awayData.find((x) => x.name === \"freeThrowPct\").displayValue}%\n \n \n {awayData.find((x) => x.name === \"freeThrowsMade\").displayValue}/\n {awayData.find((x) => x.name === \"freeThrowsAttempted\").displayValue}\n \n
\n
\n \n FT\n \n
\n
\n \n {homeData.find((x) => x.name === \"freeThrowPct\").displayValue}%\n \n \n {homeData.find((x) => x.name === \"freeThrowsMade\").displayValue}/\n {homeData.find((x) => x.name === \"freeThrowsAttempted\").displayValue}\n \n
\n
\n );\n }\n return (\n
\n \n
\n );\n })}\n
\n
\n
\n
\n
\n
\n
\n {homeTeamData.team.location}\n \n
\n {homeTeamData.team.name}\n \n
1 ? \"1.5rem\" : 1 + textSize + \"rem\",\n marginBottom: 10,\n marginTop: 10,\n }}\n color={\"white\"}>\n Overall: ({homeTeamData.records[0].summary}) Home: ({homeTeamData.records.find((x) => x.type === \"home\").summary})\n \n {homeTeamData.leaders &&\n homeTeamData.leaders\n .filter((x) => x.name !== \"rating\")\n .map((x, idx) => (\n
\n
\n \n {x.leaders[0].athlete.displayName}\n \n \n {x.leaders[0].displayValue} {x.shortDisplayName !== \"RAT\" ? x.shortDisplayName : null}\n \n
\n
\n
\n
\n
\n ))}\n
\n
\n
\n
\n setIsSettingsOpen(true)} />\n setIsSettingsOpen(true)}\n style={{\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n fontSize: 0.5 + \"rem\",\n cursor: \"pointer\",\n }}\n color={\"white\"}>\n mancavedisplays.com\n \n
\n {showOverlay && (\n
setIsSettingsOpen(true)}\n style={{\n zIndex: 1000,\n display: \"flex\",\n cursor: \"pointer\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignContent: \"center\",\n position: \"absolute\",\n top: 50,\n left: 0,\n padding: 20,\n backgroundColor: \"green\",\n color: \"white\",\n borderRadius: 20,\n }}>\n \n \n CLICK UP HERE TO CHANGE THE FONT SIZE\n \n
\n )}\n
setIsSettingsOpen(false)} maxWidth=\"xxl\" fullWidth>\n Font Size \n \n {/* \n Font Size\n */}\n \n setTextSize(value)}\n />\n \n \n \n \n \n Manage Subscription\n \n setIsSettingsOpen(false)}>Close \n
\n \n \n
\n );\n }\n}\nexport default BasketballFirestick;\n","import React, { useEffect, useState } from \"react\";\nimport Basketball from \"./Basketball\";\nimport BasketballFirestick from \"./BasketballFirestick\";\n\nfunction GameScreen(props) {\n const { selectGamesScreen, game } = props;\n const [isFireTV, setIsFireTV] = useState(false);\n\n useEffect(() => {\n const userAgent = navigator.userAgent;\n if (userAgent.includes(\"AFT\")) {\n setIsFireTV(true);\n }\n }, []);\n useEffect(() => {\n selectGamesScreen();\n }, [selectGamesScreen]);\n\n return isFireTV ? (\n \n ) : (\n \n );\n}\nexport default GameScreen;\n","import React, { useState, useEffect } from \"react\";\nimport \"./DateTime.css\";\nimport { Card, CardContent, Typography, CircularProgress, Box } from \"@mui/material\";\n\nconst DateTimeWidget = () => {\n const [dateTime, setDateTime] = useState(new Date());\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setDateTime(new Date());\n }, 1000);\n\n return () => clearInterval(intervalId);\n }, []);\n\n const formattedMonth = new Intl.DateTimeFormat(\"en-US\", {\n month: \"long\",\n timeZone: \"America/Chicago\",\n }).format(dateTime);\n const formattedDay = new Intl.DateTimeFormat(\"en-US\", {\n day: \"numeric\",\n timeZone: \"America/Chicago\",\n }).format(dateTime);\n\n return (\n \n
\n \n {formattedMonth.replace(\",\", \"\")}\n \n \n {formattedDay.replace(\",\", \"\")}\n \n
\n
\n );\n};\n\nexport default DateTimeWidget;\n","import React, { useState, useEffect } from \"react\";\nimport axios from \"axios\";\nimport \"./News.css\";\n\nconst NewsWidget = () => {\n const [headlines, setHeadlines] = useState([]);\n\n useEffect(() => {\n const fetchHeadlines = async () => {\n try {\n const response = await axios.get(\"https://gnews.io/api/v4/top-headlines\", {\n params: {\n token: \"34746b19f0e0b42b131d147e6a2cbff4\",\n topic: \"world\",\n lang: \"en\",\n country: \"us\",\n max: 10,\n },\n });\n setHeadlines(response.data.articles);\n } catch (error) {\n console.error(\"Error fetching the news headlines\", error);\n }\n };\n\n fetchHeadlines();\n }, []);\n\n return (\n \n );\n};\n\nexport default NewsWidget;\n","import React, { useEffect, useState } from \"react\";\nimport axios from \"axios\";\nimport { Card, CardContent, Typography, CircularProgress, Box } from \"@mui/material\";\nimport \"./WeatherForecast.css\";\n\nconst WeatherWidget = () => {\n const [weatherData, setWeatherData] = useState(null);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n const [latitude, setLatitude] = useState(null);\n const [longitude, setLongitude] = useState(null);\n\n const getUserLocation = () => {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(\n (position) => {\n setLatitude(position.coords.latitude);\n setLongitude(position.coords.longitude);\n fetchWeatherData(position.coords.latitude, position.coords.longitude);\n },\n (error) => {\n console.error(\"Error getting user location:\", error);\n setError(\"Unable to retrieve your location\");\n setLoading(false);\n }\n );\n } else {\n setError(\"Geolocation is not supported by this browser\");\n setLoading(false);\n }\n };\n\n const fetchWeatherData = async (latitude, longitude) => {\n try {\n const response = await axios.get(\n `https://sheline-art-website-api.herokuapp.com/patrick/tesla-dashboard-weather?lat=${latitude}&lon=${longitude}`\n );\n console.log(\"🚀 ~ fetchWeatherData ~ response:\", response);\n setWeatherData(response.data);\n setLoading(false);\n } catch (error) {\n console.error(\"Error fetching weather data:\", error);\n setError(\"Failed to fetch weather data\");\n setLoading(false);\n }\n };\n useEffect(() => {\n getUserLocation();\n }, []);\n\n const colors = {\n cloudy: {\n backgroundColor: \"#D3D3D3\",\n accentColors: [\"#A9A9A9\", \"#FFFFFF\"],\n description:\n \"Light gray reflects the overcast nature of cloudy weather, while dark gray and white accents can provide depth and contrast.\",\n },\n sun: {\n backgroundColor: \"#fcea27\",\n accentColors: [\"white\", \"#87CEEB\", \"#FFFFFF\"],\n description:\n \"A light yellow background evokes the warmth and brightness of sunny weather. Bright yellow accents can enhance the cheerful feeling, while sky blue and white can provide a refreshing contrast.\",\n },\n rain: {\n backgroundColor: \"#ADD8E6\",\n accentColors: [\"#4682B4\", \"#708090\", \"#FFFFFF\"],\n description:\n \"Light blue gives a calming effect reminiscent of rainfall. Dark blue and gray accents can represent the heavier aspects of rain, while white can add a clean, crisp contrast.\",\n },\n storm: {\n backgroundColor: \"#2F4F4F\",\n accentColors: [\"#FFD700\", \"#800080\", \"#FFFFFF\"],\n description:\n \"Dark gray sets a dramatic tone appropriate for thunderstorms. Lightning yellow provides a striking contrast representing lightning, while purple can add depth and a sense of intensity. White can be used sparingly to highlight important elements.\",\n },\n };\n useEffect(() => {\n const intervalInMilliseconds = 5 * 60 * 1000;\n const intervalId = setInterval(() => {\n getUserLocation();\n }, intervalInMilliseconds);\n\n return () => clearInterval(intervalId);\n }, []);\n\n function getConditionNames() {\n const conditionCodes = [\n \"Clear\",\n \"Cloudy\",\n \"Dust\",\n \"Fog\",\n \"Haze\",\n \"MostlyClear\",\n \"MostlyCloudy\",\n \"PartlyCloudy\",\n \"ScatteredThunderstorms\",\n \"Smoke\",\n \"Breezy\",\n \"Windy\",\n \"Drizzle\",\n \"HeavyRain\",\n \"Rain\",\n \"Showers\",\n \"Flurries\",\n \"HeavySnow\",\n \"MixedRainAndSleet\",\n \"MixedRainAndSnow\",\n \"MixedRainfall\",\n \"MixedSnowAndSleet\",\n \"ScatteredShowers\",\n \"ScatteredSnowShowers\",\n \"Sleet\",\n \"Snow\",\n \"SnowShowers\",\n \"Blizzard\",\n \"BlowingSnow\",\n \"FreezingDrizzle\",\n \"FreezingRain\",\n \"Frigid\",\n \"Hail\",\n \"Hot\",\n \"Hurricane\",\n \"IsolatedThunderstorms\",\n \"SevereThunderstorm\",\n \"Thunderstorm\",\n \"Tornado\",\n \"TropicalStorm\",\n ];\n\n const conditionNames = [\n \"Clear\",\n \"Cloudy\",\n \"Dust\",\n \"Fog\",\n \"Haze\",\n \"Mostly Clear\",\n \"Mostly Cloudy\",\n \"Partly Cloudy\",\n \"Scattered Thunderstorms\",\n \"Smoke\",\n \"Breezy\",\n \"Windy\",\n \"Drizzle\",\n \"Heavy Rain\",\n \"Rain\",\n \"Showers\",\n \"Flurries\",\n \"Heavy Snow\",\n \"Mixed Rain & Sleet\",\n \"Mixed Rain & Snow\",\n \"Mixed Rainfall\",\n \"Mixed Snow & Sleet\",\n \"Scattered Showers\",\n \"Scattered Snow Showers\",\n \"Sleet\",\n \"Snow\",\n \"Snow Showers\",\n \"Blizzard\",\n \"Blowing Snow\",\n \"Freezing Drizzle\",\n \"Freezing Rain\",\n \"Frigid\",\n \"Hail\",\n \"Hot\",\n \"Hurricane\",\n \"Isolated Thunderstorms\",\n \"Severe Thunderstorm\",\n \"Thunderstorm\",\n \"Tornado\",\n \"Tropical Storm\",\n ];\n\n const conditionsWithSpaces = {};\n for (let i = 0; i < conditionCodes.length; i++) {\n conditionsWithSpaces[conditionCodes[i]] = conditionNames[i];\n }\n\n return conditionsWithSpaces;\n }\n function getConditionName(code) {\n const conditionsWithSpaces = getConditionNames();\n return conditionsWithSpaces[code] || \"Unknown condition code\";\n }\n const getColor = (type, condition) => {\n if (type === \"background\") {\n if (condition?.includes(\"cloud\")) {\n return colors.cloudy.backgroundColor;\n }\n if (condition?.includes(\"clear\")) {\n return colors.sun.backgroundColor;\n } else return \"#19C3FB\";\n } else {\n if (condition?.includes(\"cloud\")) {\n return colors.cloudy.accentColors[0];\n }\n if (condition?.includes(\"clear\")) {\n return colors.sun.accentColors[0];\n } else return \"white\";\n }\n };\n const currentWeather = weatherData?.currentWeather;\n const dailyForecasts = weatherData?.forecastDaily.days;\n if (loading) {\n return (\n \n \n \n );\n }\n\n if (error) {\n return {error} ;\n }\n const celsiusToFahrenheit = (celsius) => {\n return (celsius * 9) / 5 + 32;\n };\n return (\n \n window.open(\n `https://www.windy.com/${latitude}/${longitude}?radar,${latitude},${longitude},8`,\n \"_blank\"\n )\n }\n sx={{\n minWidth: 225,\n backgroundImage: `linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.1)), ${\n currentWeather?.conditionCode.toLowerCase().includes(\"cloud\")\n ? \"url(/images/weatherPics/clouds.jpg)\"\n : currentWeather?.conditionCode.toLowerCase().includes(\"clear\")\n ? \"url(/images/weatherPics/clear.jpg)\"\n : currentWeather?.conditionCode.toLowerCase().includes(\"rain\")\n ? \"url(/images/weatherPics/rain.jpg)\"\n : \"#19C3FB\"\n }`,\n backgroundSize: \"cover\",\n backgroundColor: \"black\",\n color: \"white\",\n borderRadius: \"15px\",\n }}>\n \n \n
\n \n {Math.round(celsiusToFahrenheit(currentWeather?.temperature))}°\n \n \n {getConditionName(currentWeather?.conditionCode)}\n \n \n {Math.round(celsiusToFahrenheit(dailyForecasts[0].temperatureMin))}° -{\" \"}\n {Math.round(celsiusToFahrenheit(dailyForecasts[0].temperatureMax))}°\n \n \n Rain:{\" \"}\n {dailyForecasts[0].precipitationChance.toLocaleString(\"en-us\", {\n maximumFractionDigits: 0,\n })}\n %\n \n
\n
\n \n \n );\n};\n\nexport default WeatherWidget;\n","import React, { useState, useEffect } from \"react\";\nimport Clock from \"react-clock\";\nimport \"./Clock.css\";\nimport \"react-clock/dist/Clock.css\";\n\nconst DateTimeWidget = () => {\n const [dateTime, setDateTime] = useState(new Date());\n const [value, setValue] = useState(new Date());\n\n useEffect(() => {\n const interval = setInterval(() => setValue(new Date()), 1000);\n\n return () => {\n clearInterval(interval);\n };\n }, []);\n useEffect(() => {\n const intervalId = setInterval(() => {\n setDateTime(\n new Intl.DateTimeFormat(\"en-US\", {\n day: \"numeric\",\n timeZone: \"America/Chicago\",\n })\n );\n }, 1000);\n\n return () => clearInterval(intervalId);\n }, []);\n\n return (\n \n \n
\n );\n};\n\nexport default DateTimeWidget;\n","import React, { useEffect, useState } from \"react\";\nimport axios from \"axios\";\nimport { Card, CardContent, Typography, CircularProgress, Box } from \"@mui/material\";\nimport ClearIcon from \"@mui/icons-material/WbSunny\";\nimport CloudyIcon from \"@mui/icons-material/Cloud\";\nimport DustIcon from \"@mui/icons-material/Grain\";\nimport FogIcon from \"@mui/icons-material/BlurOn\";\nimport HazeIcon from \"@mui/icons-material/WbCloudy\";\nimport MostlyClearIcon from \"@mui/icons-material/WbSunny\";\nimport MostlyCloudyIcon from \"@mui/icons-material/CloudQueue\";\nimport PartlyCloudyIcon from \"@mui/icons-material/CloudOutlined\";\nimport ScatteredThunderstormsIcon from \"@mui/icons-material/FlashOn\";\nimport SmokeIcon from \"@mui/icons-material/SmokeFree\";\nimport BreezyIcon from \"@mui/icons-material/Air\";\nimport WindyIcon from \"@mui/icons-material/Toys\";\nimport DrizzleIcon from \"@mui/icons-material/Grain\";\nimport HeavyRainIcon from \"@mui/icons-material/Opacity\";\nimport RainIcon from \"@mui/icons-material/Grain\";\nimport ShowersIcon from \"@mui/icons-material/Grain\";\nimport FlurriesIcon from \"@mui/icons-material/AcUnit\";\nimport HeavySnowIcon from \"@mui/icons-material/AcUnit\";\nimport MixedRainAndSleetIcon from \"@mui/icons-material/AcUnit\";\nimport MixedRainAndSnowIcon from \"@mui/icons-material/AcUnit\";\nimport MixedRainfallIcon from \"@mui/icons-material/AcUnit\";\nimport MixedSnowAndSleetIcon from \"@mui/icons-material/AcUnit\";\nimport ScatteredShowersIcon from \"@mui/icons-material/Grain\";\nimport ScatteredSnowShowersIcon from \"@mui/icons-material/AcUnit\";\nimport SleetIcon from \"@mui/icons-material/AcUnit\";\nimport SnowIcon from \"@mui/icons-material/AcUnit\";\nimport SnowShowersIcon from \"@mui/icons-material/AcUnit\";\nimport BlizzardIcon from \"@mui/icons-material/AcUnit\";\nimport BlowingSnowIcon from \"@mui/icons-material/AcUnit\";\nimport FreezingDrizzleIcon from \"@mui/icons-material/AcUnit\";\nimport FreezingRainIcon from \"@mui/icons-material/AcUnit\";\nimport FrigidIcon from \"@mui/icons-material/AcUnit\";\nimport HailIcon from \"@mui/icons-material/AcUnit\";\nimport HotIcon from \"@mui/icons-material/Whatshot\";\nimport HurricaneIcon from \"@mui/icons-material/Waves\";\nimport IsolatedThunderstormsIcon from \"@mui/icons-material/FlashOn\";\nimport SevereThunderstormIcon from \"@mui/icons-material/FlashOn\";\nimport ThunderstormIcon from \"@mui/icons-material/FlashOn\";\nimport TornadoIcon from \"@mui/icons-material/Toys\";\nimport TropicalStormIcon from \"@mui/icons-material/Waves\";\nimport \"./WeatherForecast.css\";\nimport { set } from \"date-fns\";\n\nconst WeatherWidget = () => {\n const [weatherData, setWeatherData] = useState(null);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n const [latitude, setLatitude] = useState(null);\n const [longitude, setLongitude] = useState(null);\n\n const getWeatherIcon = (condition) => {\n const iconMap = {\n Clear: ,\n Cloudy: ,\n Dust: ,\n Fog: ,\n Haze: ,\n MostlyClear: ,\n MostlyCloudy: ,\n PartlyCloudy: ,\n ScatteredThunderstorms: ,\n Smoke: ,\n Breezy: ,\n Windy: ,\n Drizzle: ,\n HeavyRain: ,\n Rain: ,\n Showers: ,\n Flurries: ,\n HeavySnow: ,\n MixedRainAndSleet: ,\n MixedRainAndSnow: ,\n MixedRainfall: ,\n MixedSnowAndSleet: ,\n ScatteredShowers: ,\n ScatteredSnowShowers: ,\n Sleet: ,\n Snow: ,\n SnowShowers: ,\n Blizzard: ,\n BlowingSnow: ,\n FreezingDrizzle: ,\n FreezingRain: ,\n Frigid: ,\n Hail: ,\n Hot: ,\n Hurricane: ,\n IsolatedThunderstorms: ,\n SevereThunderstorm: ,\n Thunderstorm: ,\n Tornado: ,\n TropicalStorm: ,\n };\n\n return iconMap[condition] || ;\n };\n useEffect(() => {\n const fetchWeatherData = async (latitude, longitude) => {\n try {\n const response = await axios.get(\n `https://sheline-art-website-api.herokuapp.com/patrick/tesla-dashboard-weather?lat=${latitude}&lon=${longitude}`\n );\n console.log(\"🚀 ~ fetchWeatherData ~ response:\", response);\n setWeatherData(response.data);\n setLoading(false);\n } catch (error) {\n console.error(\"Error fetching weather data:\", error);\n setError(\"Failed to fetch weather data\");\n setLoading(false);\n }\n };\n\n const getUserLocation = () => {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(\n (position) => {\n setLatitude(position.coords.latitude);\n setLongitude(position.coords.longitude);\n fetchWeatherData(position.coords.latitude, position.coords.longitude);\n },\n (error) => {\n console.error(\"Error getting user location:\", error);\n setError(\"Unable to retrieve your location\");\n setLoading(false);\n }\n );\n } else {\n setError(\"Geolocation is not supported by this browser\");\n setLoading(false);\n }\n };\n\n getUserLocation();\n }, []);\n function getConditionNames() {\n const conditionCodes = [\n \"Clear\",\n \"Cloudy\",\n \"Dust\",\n \"Fog\",\n \"Haze\",\n \"MostlyClear\",\n \"MostlyCloudy\",\n \"PartlyCloudy\",\n \"ScatteredThunderstorms\",\n \"Smoke\",\n \"Breezy\",\n \"Windy\",\n \"Drizzle\",\n \"HeavyRain\",\n \"Rain\",\n \"Showers\",\n \"Flurries\",\n \"HeavySnow\",\n \"MixedRainAndSleet\",\n \"MixedRainAndSnow\",\n \"MixedRainfall\",\n \"MixedSnowAndSleet\",\n \"ScatteredShowers\",\n \"ScatteredSnowShowers\",\n \"Sleet\",\n \"Snow\",\n \"SnowShowers\",\n \"Blizzard\",\n \"BlowingSnow\",\n \"FreezingDrizzle\",\n \"FreezingRain\",\n \"Frigid\",\n \"Hail\",\n \"Hot\",\n \"Hurricane\",\n \"IsolatedThunderstorms\",\n \"SevereThunderstorm\",\n \"Thunderstorm\",\n \"Tornado\",\n \"TropicalStorm\",\n ];\n\n const conditionNames = [\n \"Clear\",\n \"Cloudy\",\n \"Dust\",\n \"Fog\",\n \"Haze\",\n \"Mostly Clear\",\n \"Mostly Cloudy\",\n \"Partly Cloudy\",\n \"Scattered Thunderstorms\",\n \"Smoke\",\n \"Breezy\",\n \"Windy\",\n \"Drizzle\",\n \"Heavy Rain\",\n \"Rain\",\n \"Showers\",\n \"Flurries\",\n \"Heavy Snow\",\n \"Mixed Rain & Sleet\",\n \"Mixed Rain & Snow\",\n \"Mixed Rainfall\",\n \"Mixed Snow & Sleet\",\n \"Scattered Showers\",\n \"Scattered Snow Showers\",\n \"Sleet\",\n \"Snow\",\n \"Snow Showers\",\n \"Blizzard\",\n \"Blowing Snow\",\n \"Freezing Drizzle\",\n \"Freezing Rain\",\n \"Frigid\",\n \"Hail\",\n \"Hot\",\n \"Hurricane\",\n \"Isolated Thunderstorms\",\n \"Severe Thunderstorm\",\n \"Thunderstorm\",\n \"Tornado\",\n \"Tropical Storm\",\n ];\n\n const conditionsWithSpaces = {};\n for (let i = 0; i < conditionCodes.length; i++) {\n conditionsWithSpaces[conditionCodes[i]] = conditionNames[i];\n }\n\n return conditionsWithSpaces;\n }\n\n const dailyForecasts = weatherData?.forecastDaily.days;\n const celsiusToFahrenheit = (celsius) => {\n return (celsius * 9) / 5 + 32;\n };\n return (\n \n window.open(\n `https://www.windy.com/${latitude}/${longitude}?radar,${latitude},${longitude},8`,\n \"_blank\"\n )\n }\n sx={{\n minWidth: 400,\n background: \"#19C3FB\",\n color: \"white\",\n borderRadius: \"15px\",\n paddingBottom: 0,\n }}>\n \n \n {dailyForecasts?.slice(1, 7).map((day, index) => (\n \n \n {new Date(day.forecastStart).toLocaleDateString(\"en-US\", { weekday: \"short\" })}\n \n {getWeatherIcon(day.conditionCode)}\n \n {day.precipitationChance.toLocaleString(\"en-us\", {\n maximumFractionDigits: 0,\n })}\n %\n \n \n {Math.round(celsiusToFahrenheit(day.temperatureMin))}°F\n \n \n {Math.round(celsiusToFahrenheit(day.temperatureMax))}°F\n \n \n ))}\n \n \n \n );\n};\n\nexport default WeatherWidget;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport {\n Grid,\n Typography,\n FormControl,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Dialog,\n DialogTitle,\n DialogActions,\n Button,\n DialogContent,\n Slider,\n Box,\n CircularProgress,\n} from \"@mui/material\";\nimport { WiDaySunny, WiDayCloudy, WiThunderstorm, WiSnow } from \"weather-icons-react\";\nimport { useParams, useHistory } from \"react-router-dom\";\nimport ReactLoading from \"react-loading\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport SportsBasketballIcon from \"@mui/icons-material/SportsBasketball\";\nimport SportsBaseballIcon from \"@mui/icons-material/SportsBaseball\";\nimport SportsHockeyIcon from \"@mui/icons-material/SportsHockey\";\nimport \"./oddsScreen.css\";\nimport ArrowLeftIcon from \"@mui/icons-material/ArrowLeft\";\nimport { parseISO, formatDistanceToNow } from \"date-fns\";\nimport ToggleButton from \"@mui/material/ToggleButton\";\nimport ToggleButtonGroup from \"@mui/material/ToggleButtonGroup\";\nimport browserDetect from \"browser-detect\";\nimport moment from \"moment\";\nimport momentTimezone from \"moment-timezone\";\n\nfunction OddsScreen(props) {\n const history = useHistory();\n const browserData = browserDetect();\n const { email, defaultFontSize } = useParams();\n const { selectOddsDisplay } = props;\n const [textSize, setTextSize] = useState(2);\n const [screenWidth, setScreenWidth] = useState(500);\n const [screenHeight, setScreenHeight] = useState(500);\n const [allGames, setAllGames] = useState([]);\n const [isSettingsOpen, setIsSettingsOpen] = useState(false);\n const [onlyOneColumn, setOnlyOneColumn] = useState(false);\n const [justTop25Basketball, setJustTop25Basketball] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [userTimezone, setUserTimezone] = useState(\n Intl.DateTimeFormat().resolvedOptions().timeZone\n );\n const [isBehindTheScenesLoading, setIsBehindTheScenesLoading] = useState(false);\n const [user, setUser] = useState(\"pbullion@gmail.com\");\n const [lastUpdated, setLastUpdated] = useState(moment().format(\"h:mm:ss\"));\n const [sports_to_display, setSportsToDisplay] = useState([\n \"NFL\",\n \"MLB\",\n \"NBA\",\n \"NHL\",\n \"NCAABASKETBALL\",\n ]);\n const isLoadingRef = useRef(isLoading);\n const sportsToDisplayRef = useRef(sports_to_display);\n const [sessionID, setSessionID] = useState(\"\");\n const sessionIDRef = useRef(sessionID);\n sessionIDRef.current = sessionID;\n sportsToDisplayRef.current = sports_to_display;\n isLoadingRef.current = isLoading;\n\n // useEffect(() => {\n // if (user) {\n // handleResize();\n // }\n // }, [user]);\n\n function convertToDate(dateStr) {\n const currentYear = new Date().getFullYear();\n const formattedDateStr = `${dateStr} ${currentYear}`;\n return new Date(formattedDateStr);\n }\n\n function convertToMonthDayString(dateStr) {\n const currentYear = new Date().getFullYear();\n const formattedDateStr = `${dateStr} ${currentYear}`;\n const jsDate = new Date(formattedDateStr);\n return moment(jsDate).format(\"MMMM D\");\n }\n\n useEffect(() => {\n if (defaultFontSize) {\n setTextSize(parseFloat(defaultFontSize));\n } else {\n setTextSize(1.3);\n }\n setUserTimezone(Intl.DateTimeFormat().resolvedOptions().timeZone);\n }, []);\n\n // useEffect(() => {\n // handleResize();\n // }, [sports_to_display]);\n\n useEffect(() => {\n const getUpdate = () => {\n setIsBehindTheScenesLoading(true);\n checkSubscription(user);\n };\n const intervalId = setInterval(getUpdate, 15000);\n return () => clearInterval(intervalId);\n }, [user]);\n\n const checkSubscription = async (email) => {\n const url = `https://sheline-art-website-api.herokuapp.com/odds-screen/check-subscription/${email}`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => response.json())\n .then((data) => {\n fetchGames();\n });\n };\n\n useEffect(() => {}, [allGames]);\n\n const isDateToday = (dateStr) => {\n if (dateStr === undefined) return false;\n const today = new Date();\n const [month, day] = dateStr.split(\" \");\n return (\n today.getDate() === parseInt(day) &&\n today.toLocaleString(\"en-us\", { month: \"long\" }) === month\n );\n };\n const fetchGames = async () => {\n console.log(\"lksjdfklsjdlfs\");\n const currentTime = new Date().toLocaleString(\"en-US\", { timeZone: \"America/Chicago\" });\n const centralTime = new Date(currentTime);\n const currentHour = centralTime.getHours();\n const url = `https://sheline-art-website-api.herokuapp.com/patrick/all-data-2/mancavedisplaysllc@gmail.com`;\n // const url = `http://localhost:3001/patrick/all-data-2/mancavedisplaysllc@gmail.com`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n const isInTimeFrame = true;\n if (isInTimeFrame || isLoadingRef.current) {\n fetch(url, requestOptions)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(data);\n const filteredData = data\n .filter((x) => {\n if (x[0][0].includes(\"logo\") || x[0][0].includes(\"ncaa\")) return x;\n })\n .map((x) => x.splice(0, 1) && x)\n .map((league) => {\n return league\n .filter((x) => !x[0].includes(\"final\"))\n .filter((x) => !x[0].includes(\"postponed\"))\n .map((x) => {\n const league = x[0].split(\" \")[2].toUpperCase();\n const isPregame = x[0].includes(\"pregame\");\n if (\n isPregame &&\n (league === \"NFL\" || league === \"NCAAFOOTBALL\" || league === \"NCAABASKETBALL\")\n ) {\n const dateParts = x[20].match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2024\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const timeUntilString = new Date(`${dateStr}, ${year} ${x[11]} PM`);\n const jsDate = new Date(fullDateStr);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[17],\n fullDate: jsDate,\n dateStr: dateStr,\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n date: x[20],\n sport: league,\n inProgress: !isPregame,\n timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n conferences: x[24],\n tvChannel: x[25],\n id: x[29],\n weather: x[26],\n temperature: x[27],\n indoors: x[28],\n };\n } else if (!isPregame && (league === \"NFL\" || league === \"NCAAFOOTBALL\")) {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[20],\n awaySpread: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeMoneyLine: x[23],\n awayMoneyLine: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[26],\n };\n } else if (!isPregame && league === \"NCAABASKETBALL\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n conferences: x[24],\n tvChannel: x[25],\n id: x[26],\n };\n } else if (isPregame && league === \"NBA\") {\n const dateParts = x[20].match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2024\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const jsDate = new Date(fullDateStr);\n const timeUntilString = new Date(`${dateStr}, ${year} ${x[11]} PM`);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: jsDate,\n dateStr: dateStr,\n inProgress: !isPregame,\n timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n tvChannel: x[25],\n id: x[29],\n };\n } else if (!isPregame && league === \"NBA\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[26],\n };\n } else if (isPregame && league === \"NHL\") {\n const dateParts = x[20].match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2024\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const jsDate = new Date(fullDateStr);\n const timeUntilString = new Date(`${dateStr}, ${year} ${x[11]} PM`);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: jsDate,\n dateStr: dateStr,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[29],\n date: x[20],\n timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n };\n } else if (!isPregame && league === \"NHL\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n tvChannel: x[25],\n id: x[26],\n inProgress: !isPregame,\n };\n } else if (isPregame && league === \"MLB\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: convertToDate(x[20] + \" \" + x[11]),\n dateStr: convertToMonthDayString(x[20] + \" \" + x[11]),\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[29],\n date: x[20],\n awayStartingPitcher: x[18],\n homeStartingPitcher: x[19],\n };\n } else if (!isPregame && league === \"MLB\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[27],\n awayMoneyLine: x[26],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[11],\n clock: x[22] + \" out\",\n homeSpread: x[21],\n awaySpread: \"\",\n overUnder: x[28],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n tvChannel: x[25],\n id: x[26],\n inProgress: !isPregame,\n onFirst: x[31],\n onSecond: x[32],\n onThird: x[33],\n };\n } else {\n return null;\n // return {\n // homeTeam: x[5],\n // awayTeam: x[10],\n // homeSpread: x[23],\n // awaySpread: x[22],\n // homeScore: 23,\n // awayScore: 44,\n // quarter: \"1st\",\n // clock: \"11:21\",\n // homeMoneyLine: x[16],\n // awayMoneyLine: x[15],\n // overUnder: x[17],\n // time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n // sport: league,\n // tvChannel: x[25],\n // id: x[26],\n // inProgress: !isPregame,\n // };\n }\n });\n });\n const sorted = []\n .concat(...filteredData)\n .filter((x) => x !== null)\n .sort((a, b) => {\n // First, sort by inProgress status, putting true values before false\n if (a.inProgress && !b.inProgress) {\n return -1;\n } else if (!a.inProgress && b.inProgress) {\n return 1;\n }\n\n // Then, sort by fullDate\n if (a.fullDate < b.fullDate) {\n return -1;\n } else if (a.fullDate > b.fullDate) {\n return 1;\n }\n\n // If fullDate is equal, sort by time (assuming time is in 'hh:mm' format)\n // You might need to adjust this if your time format is different\n let aTime = a.time.split(\":\").map(Number);\n let bTime = b.time.split(\":\").map(Number);\n aTime = aTime[0] * 60 + aTime[1]; // Convert time to minutes for easier comparison\n bTime = bTime[0] * 60 + bTime[1]; // Convert time to minutes for easier comparison\n\n return aTime - bTime;\n })\n .filter((x) => x.awayTeam !== \"TBD\" && x.homeTeam !== \"TBD\");\n setAllGames(sorted);\n let formattedTimeInUserTimezone = momentTimezone\n .tz(new Date(), userTimezone)\n .format(\"h:mm:ss\");\n setLastUpdated(formattedTimeInUserTimezone);\n setTimeout(() => {\n setIsLoading(false);\n }, 0);\n setIsBehindTheScenesLoading(false);\n });\n }\n if (sessionIDRef.current === \"\") {\n const urlTracking = `https://sheline-art-website-api.herokuapp.com/odds-screen/tracking/${user}`;\n const requestOptionsTracking = {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({ os: browserData.os, browser: browserData.name }),\n };\n fetch(urlTracking, requestOptionsTracking)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setSessionID(data.id);\n });\n } else {\n const urlTracking = `https://sheline-art-website-api.herokuapp.com/odds-screen/tracking/${\n sessionIDRef.current\n }/${isInTimeFrame ? \"true\" : \"false\"}`;\n const requestOptionsTracking = {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(urlTracking, requestOptionsTracking).then((response) => {\n return response.json();\n });\n }\n };\n\n // const handleResize = () => {\n // const screenWidthHalf = window.innerWidth / 2;\n // const screenHeight = window.innerHeight;\n // setScreenWidth(Math.floor(screenWidthHalf) - 100);\n // setScreenHeight(screenHeight);\n // };\n\n // window.addEventListener(\"resize\", handleResize);\n\n const handleSwitchChange = (sport) => {\n setSportsToDisplay((prevValue) => {\n if (prevValue.includes(sport)) {\n return prevValue.filter((s) => s !== sport);\n } else {\n return [...prevValue, sport];\n }\n });\n };\n\n const handleFormat = (event, newSports) => {\n setSportsToDisplay(newSports);\n };\n const getWeatherIcon = (weather) => {\n if (weather === undefined) return null;\n if (weather.includes(\"Sunny\") || weather.includes(\"sun\")) {\n return ;\n } else if (\n weather.includes(\"cloudy\") ||\n weather.includes(\"Cloudy\") ||\n weather.includes(\"clouds\")\n ) {\n return ;\n } else if (weather.includes(\"rain\") || weather.includes(\"Rain\")) {\n return (\n \n );\n } else if (weather.includes(\"snow\") || weather.includes(\"Snow\")) {\n return ;\n }\n };\n if (isLoading) {\n return (\n \n \n
\n );\n }\n const getColor = (idx) => {\n if (\n idx === 0 ||\n idx === 4 ||\n idx === 8 ||\n idx === 3 ||\n idx === 7 ||\n idx === 12 ||\n idx === 16 ||\n idx === 20 ||\n idx === 24 ||\n idx === 28\n ) {\n return \"#4cff00\";\n } else {\n return \"#fffd01\";\n }\n };\n return (\n \n
\n {allGames\n .filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .filter((x) => {\n if (\n justTop25Basketball &&\n x.sport === \"NCAABASKETBALL\" &&\n (x.homeTeam.includes(\"#\") || x.awayTeam.includes(\"#\"))\n ) {\n return x;\n } else if (x.sport !== \"NCAABASKETBALL\") {\n return x;\n } else if (!justTop25Basketball) {\n return x;\n }\n })\n .map((game, idx) => {\n return (\n
\n {game.dateStr !== undefined &&\n !isDateToday(game.dateStr) &&\n game.dateStr !==\n allGames\n .filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .filter((x) => {\n if (\n justTop25Basketball &&\n x.sport === \"NCAABASKETBALL\" &&\n (x.homeTeam.includes(\"#\") || x.awayTeam.includes(\"#\"))\n ) {\n return x;\n } else if (x.sport !== \"NCAABASKETBALL\") {\n return x;\n } else if (!justTop25Basketball) {\n return x;\n }\n })[\n allGames\n .filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .filter((x) => {\n if (\n justTop25Basketball &&\n x.sport === \"NCAABASKETBALL\" &&\n (x.homeTeam.includes(\"#\") || x.awayTeam.includes(\"#\"))\n ) {\n return x;\n } else if (x.sport !== \"NCAABASKETBALL\") {\n return x;\n } else if (!justTop25Basketball) {\n return x;\n }\n }).length === 1\n ? 0\n : idx - 1\n ].dateStr ? (\n
\n {game.dateStr}\n \n ) : null}\n
\n \n {game.sport === \"NFL\" || game.sport === \"NCAAFOOTBALL\" ? (\n \n ) : game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\" ? (\n \n ) : game.sport === \"MLB\" ? (\n \n ) : (\n \n )}\n \n \n \n
\n {game.awayTeam}\n \n {parseInt(game.awayScore) > parseInt(game.homeScore) ? (\n
\n ) : null}\n
\n \n {game.awayScore ? (\n \n \n \n {game.awayScore}\n \n \n \n \n {game.quarter\n .replace(\"Top\", \"T\")\n .replace(\"Bot\", \"B\")\n .replace(\"Mid\", \"M\")\n .replace(\"End\", \"E\")}\n \n \n \n ) : game.sport === \"MLB\" ? (\n <>\n \n \n {game.awayStartingPitcher &&\n game.awayStartingPitcher\n .replace(/\\d+(\\.\\d+)?/g, \"\")\n .trim()\n .replace(/\\s+/g, \" \")\n .replace(\"-\", \"\")\n .split(\".\")[1]}\n \n \n \n >\n ) : (\n \n {/* \n {!game.timeUntilString.includes(\"day\") &&\n game.timeUntilString.replace(\"about \", \"\").replace(\"minutes\", \"min\").replace(\"minute\", \"min\")}\n */}\n {game.sport === \"NFL\" && !game.indoors && (\n \n {game.temperature}°\n \n )}\n {game.sport === \"NFL\" && !game.indoors && getWeatherIcon(game.weather)}\n {game.sport === \"NFL\" && !game.indoors && (\n \n {game.weather\n .toUpperCase()\n .replace(\"PARTLY \", \"\")\n .replace(\"INTERMITTENT \", \"\")\n .replace(\"THUNDERSTORMS \", \"STORMS\")\n .replace(\"MOSTLY \", \"\")\n .replace(\"HAZY \", \"\")}\n \n )}\n \n )}\n \n \n {game.sport !== \"MLB\" && game.awaySpread === \"\" ? \"-\" : game.awaySpread}\n \n \n \n 4\n ? textSize - 0.2\n : textSize\n }rem`,\n }}>\n {game.awayMoneyLine === \"\" ? \"-\" : game.awayMoneyLine}\n \n \n \n \n O/U\n \n \n \n
\n \n \n {game.clock === undefined && game.clock !== game.time\n ? game.time\n : game.tvChannel &&\n game.tvChannel\n .replace(\"NHLPP|\", \"\")\n .replace(\"USA Net\", \"USA\")\n .replace(\"CW NETWORK\", \"CW\")\n .replace(\"BIG12|\", \"\")\n .replace(\"NHL NET\", \"NHLN\")\n .replace(\"Peacock\", \"PEA\")\n .replace(\"NBA TV\", \"NBAT\")}\n \n \n \n \n
\n {game.homeTeam}\n \n {parseInt(game.homeScore) > parseInt(game.awayScore) ? (\n
\n ) : null}\n
\n \n \n {game.homeScore ? (\n \n {game.homeScore}\n \n ) : game.homeStartingPitcher ? (\n \n {game.homeStartingPitcher &&\n game.homeStartingPitcher\n .replace(/\\d+(\\.\\d+)?/g, \"\")\n .trim()\n .replace(/\\s+/g, \" \")\n .replace(\"-\", \"\")\n .split(\".\")[1]}\n \n ) : (\n \n {game.tvChannel &&\n game.tvChannel\n .replace(\" \", \"\")\n .replace(\"NHLPP|\", \"\")\n .replace(\"USA Net\", \"USA\")\n .replace(\"CW NETWORK\", \"CW\")\n .replace(\"BIG12|\", \"\")}\n \n )}\n \n \n 4 &&\n textSize > 1 &&\n allGames.filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .length > 13)\n ? `${textSize - 0.25}rem`\n : `${textSize}rem`,\n }}\n color={idx % 2 === 0 ? \"orange\" : \"#00b4dd\"}>\n {game.clock}\n \n \n \n \n {game.homeSpread === \"\" ? \"-\" : game.homeSpread}\n \n \n \n 4\n ? textSize - 0.2\n : textSize\n }rem`,\n }}>\n {game.homeMoneyLine === \"\" ? \"-\" : game.homeMoneyLine}\n \n \n \n 4 ? textSize - 0.2 : textSize\n }rem`,\n }}>\n {game.overUnder === \"\" ? \"-\" : game.overUnder}\n \n \n \n
\n );\n })}\n
\n
\n
\n \n Odds by BETMGM\n \n
\n
\n setIsSettingsOpen(true)}\n />\n setIsSettingsOpen(true)}\n style={{\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n fontSize: \"1.5rem\",\n }}\n color={\"white\"}>\n mancavedisplays.com\n \n
\n
setIsSettingsOpen(false)}\n maxWidth=\"xxl\"\n fullWidth>\n Select Sports to Display \n \n \n {[\"NFL\", \"MLB\", \"NBA\", \"NHL\", \"NCAABASKETBALL\"].map((sport, index) => (\n \n {sport}\n \n ))}\n \n \n \n \n Only Show Top 25 Basketball \n \n \n \n setJustTop25Basketball(!justTop25Basketball)}\n />\n \n \n \n
\n \n Font Size\n \n \n setTextSize(value)}\n />\n \n \n \n \n Only Show One Column (vertical displays) \n \n \n \n setOnlyOneColumn(!onlyOneColumn)}\n />\n \n \n \n
\n \n TIPS\n \n \n - Bookmark {window.location.href} so you don't have to login everytime\n \n \n - Add '/2.5' (any number, but probably no larger than 3.5) after the url to autochange\n the font size if your screen always loads small text *** ex. {window.location.href}\n /2.5\n \n \n \n \n setIsSettingsOpen(false)}>Close \n
\n \n \n
\n
\n );\n}\nexport default OddsScreen;\n","import React from \"react\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport DateTimeWidget from \"./DateTime\";\nimport NewsWidget from \"./News\";\nimport CurrentWeatherWidget from \"./CurrentWeather\";\nimport TimeWidget from \"./Time\";\nimport ForecastWeatherWidget from \"./ForecastWeather\";\nimport OddsScreen from \"./OddsScreen\";\n\nconst styles = (theme) => ({\n icon: {\n marginRight: theme.spacing(2),\n },\n});\n\nfunction TeslaDashboard(props) {\n const { classes, selectTeslaDashboard } = props;\n\n React.useEffect(() => {\n selectTeslaDashboard();\n\n const interval = setInterval(() => {\n window.location.reload();\n }, 1000000000);\n\n return () => clearInterval(interval);\n }, [selectTeslaDashboard]);\n\n return (\n \n \n \n \n \n \n \n
\n \n \n
\n \n \n
\n \n \n );\n}\nexport default withStyles(styles, { withTheme: true })(TeslaDashboard);\n","import React, { useEffect, useRef, useState } from \"react\";\nimport {\n Grid,\n Typography,\n FormControl,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n Slider,\n Box,\n} from \"@mui/material\";\nimport { WiDaySunny, WiDayCloudy, WiThunderstorm, WiSnow } from \"weather-icons-react\";\nimport { useParams, useHistory } from \"react-router-dom\";\nimport ReactLoading from \"react-loading\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport SportsBasketballIcon from \"@mui/icons-material/SportsBasketball\";\nimport SportsBaseballIcon from \"@mui/icons-material/SportsBaseball\";\nimport SportsHockeyIcon from \"@mui/icons-material/SportsHockey\";\nimport \"./oddsScreen.css\";\nimport ArrowLeftIcon from \"@mui/icons-material/ArrowLeft\";\nimport { parseISO, formatDistanceToNow } from \"date-fns\";\nimport ToggleButton from \"@mui/material/ToggleButton\";\nimport ToggleButtonGroup from \"@mui/material/ToggleButtonGroup\";\nimport browserDetect from \"browser-detect\";\nimport moment from \"moment\";\nimport momentTimezone from \"moment-timezone\";\nimport basesLoaded from \"./baseballBases/basesLoaded.png\";\nimport first from \"./baseballBases/first.png\";\nimport firstAndSecond from \"./baseballBases/firstAndSecond.png\";\nimport secondAndThird from \"./baseballBases/secondAndThird.png\";\nimport firstAndThird from \"./baseballBases/firstAndThird.png\";\nimport second from \"./baseballBases/second.png\";\nimport third from \"./baseballBases/third.png\";\nimport { number } from \"prop-types\";\nimport { NumbersOutlined } from \"@mui/icons-material\";\n\nfunction OddsScreen(props) {\n const history = useHistory();\n const browserData = browserDetect();\n const { email, defaultFontSize } = useParams();\n const { selectOddsDisplay } = props;\n const [textSize, setTextSize] = useState(1);\n const [politicsData, setPoliticsData] = useState({});\n const [screenWidth, setScreenWidth] = useState(500);\n const [screenHeight, setScreenHeight] = useState(500);\n const [allGames, setAllGames] = useState([]);\n const [isSettingsOpen, setIsSettingsOpen] = useState(false);\n const [numOfColumns, setNumOfColumns] = useState(email === \"pbullion@gmail.com\" ? 2 : 3);\n // const [numOfColumns, setNumOfColumns] = useState(3);\n const [onlyOneColumn, setOnlyOneColumn] = useState(false);\n const [justTop25Basketball, setJustTop25Basketball] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [userTimezone, setUserTimezone] = useState(\n Intl.DateTimeFormat().resolvedOptions().timeZone\n );\n const [isBehindTheScenesLoading, setIsBehindTheScenesLoading] = useState(false);\n const [user, setUser] = useState(email);\n const [lastUpdated, setLastUpdated] = useState(moment().format(\"h:mm:ss\"));\n const [sports_to_display, setSportsToDisplay] = useState([\n \"NFL\",\n \"NBA\",\n \"NCAABASKETBALL\",\n \"NHL\",\n \"MLB\",\n ]);\n const isLoadingRef = useRef(isLoading);\n const sportsToDisplayRef = useRef(sports_to_display);\n const [sessionID, setSessionID] = useState(\"\");\n const sessionIDRef = useRef(sessionID);\n sessionIDRef.current = sessionID;\n sportsToDisplayRef.current = sports_to_display;\n isLoadingRef.current = isLoading;\n\n useEffect(() => {\n if (user) {\n handleResize();\n }\n }, [user]);\n function convertToDate(dateStr) {\n const currentYear = new Date().getFullYear();\n const formattedDateStr = `${dateStr} ${currentYear}`;\n return new Date(formattedDateStr);\n }\n function convertToMonthDayString(dateStr) {\n const currentYear = new Date().getFullYear();\n const formattedDateStr = `${dateStr} ${currentYear}`;\n const jsDate = new Date(formattedDateStr);\n return moment(jsDate).format(\"MMMM D\");\n }\n function formatDate(dateString) {\n const [month, day] = dateString.split(\"/\").map(Number);\n const year = new Date().getFullYear(); // Get the current year\n // Create a Date object\n const date = new Date(year, month - 1, day);\n // Options for formatting the date\n const options = {\n weekday: \"short\",\n month: \"long\",\n day: \"numeric\",\n };\n // Format the date\n let formattedDate = date.toLocaleDateString(\"en-US\", options);\n // Add the suffix to the day\n const dayOfMonth = date.getDate();\n let suffix = \"th\";\n if (dayOfMonth % 10 === 1 && dayOfMonth !== 11) {\n suffix = \"st\";\n } else if (dayOfMonth % 10 === 2 && dayOfMonth !== 12) {\n suffix = \"nd\";\n } else if (dayOfMonth % 10 === 3 && dayOfMonth !== 13) {\n suffix = \"rd\";\n }\n\n formattedDate = formattedDate.replace(/\\d+/, dayOfMonth + suffix);\n\n return formattedDate;\n }\n const renderRunnersMLB = (theGame) => {\n if (theGame.inProgress && (theGame.sport === \"MLB\" || theGame.sport === \"ncaabaseball\")) {\n const onFirst = theGame.onFirst;\n const onSecond = theGame.onSecond;\n const onThird = theGame.onThird;\n if (onFirst && onSecond && onThird) {\n return (\n \n );\n } else if (onFirst && !onSecond && !onThird) {\n return ;\n } else if (!onFirst && onSecond && !onThird) {\n return (\n \n );\n } else if (!onFirst && !onSecond && onThird) {\n return ;\n } else if (onFirst && onSecond && !onThird) {\n return (\n \n );\n } else if (onFirst && !onSecond && onThird) {\n return (\n \n );\n } else if (!onFirst && onSecond && onThird) {\n return (\n \n );\n }\n }\n };\n useEffect(() => {\n if (defaultFontSize) {\n setTextSize(parseFloat(defaultFontSize));\n } else {\n setTextSize(1.2);\n }\n setUserTimezone(Intl.DateTimeFormat().resolvedOptions().timeZone);\n }, []);\n\n useEffect(() => {\n handleResize();\n }, [sports_to_display]);\n\n useEffect(() => {\n const getUpdate = () => {\n setIsBehindTheScenesLoading(true);\n checkSubscription(user);\n };\n const intervalId = setInterval(getUpdate, 15000);\n return () => clearInterval(intervalId);\n }, [user]);\n\n const checkSubscription = async (email) => {\n const url = `https://sheline-art-website-api.herokuapp.com/odds-screen/check-subscription/${email}`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => response.json())\n .then((data) => {\n if (data.status === \"active\") {\n fetchGames();\n } else {\n window.alert(\n `No subscription found for ${email} - Make sure you are entering the email exactly as you did when you subscribed.`\n );\n history.push(\"/odds-screen-store\");\n }\n });\n };\n\n useEffect(() => {\n if (user === \"null\") {\n const emailFromPrompt = window.prompt(\"Enter your email\");\n setUser(emailFromPrompt);\n history.push(`/odds-screen/${emailFromPrompt}`);\n } else if (user) {\n checkSubscription(user);\n }\n }, [user]);\n\n useEffect(() => {}, [allGames]);\n\n const isDateToday = (dateStr) => {\n if (dateStr === undefined) return false;\n const today = new Date();\n const [month, day] = dateStr.split(\" \");\n return (\n today.getDate() === parseInt(day) &&\n today.toLocaleString(\"en-us\", { month: \"long\" }) === month\n );\n };\n const fetchGames = async () => {\n const currentTime = new Date().toLocaleString(\"en-US\", { timeZone: \"America/Chicago\" });\n const centralTime = new Date(currentTime);\n const currentHour = centralTime.getHours();\n const url = `https://sheline-art-website-api.herokuapp.com/patrick/all-data-2/mancavedisplaysllc@gmail.com`;\n // const url = `http://localhost:3001/patrick/all-data-2/mancavedisplaysllc@gmail.com`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n const isInTimeFrame = true;\n if (isInTimeFrame || isLoadingRef.current) {\n fetch(url, requestOptions)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n // setPoliticsData(data[0][1]);\n const filteredData = data\n .filter((x) => {\n if (x[0][0].includes(\"logo\") || x[0][0].includes(\"ncaa\")) return x;\n })\n .map((x) => x.splice(0, 1) && x)\n .map((league) => {\n return league\n .filter((x) => !x[0].includes(\"final\"))\n .filter((x) => !x[0].includes(\"postponed\"))\n .filter((x) => !x[20].includes(\"TBD\"))\n .map((x) => {\n const league = x[0].split(\" \")[2].toUpperCase();\n const isPregame = x[0].includes(\"pregame\");\n if (\n isPregame &&\n (league === \"NFL\" || league === \"NCAAFOOTBALL\" || league === \"NCAABASKETBALL\")\n ) {\n let date = x[20];\n const timeFormatted =\n x[11] === \"11:00\" || x[11] === \"12:00\" ? x[11] + \" AM\" : x[11] + \" PM\";\n // if (league === \"NCAAFOOTBALL\") {\n // console.log(x);\n // date = formatDate(date);\n // }\n const dateParts = date.match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2025\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const timeUntilString = new Date(`${dateStr}, ${year} ${timeFormatted}`);\n const jsDate = new Date(timeUntilString);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[17],\n fullDate: jsDate,\n dateStr: dateStr,\n time: momentTimezone(moment(timeFormatted, \"h:mm A\"))\n .tz(userTimezone)\n .format(\"h:mm A\"),\n date: x[20],\n sport: league,\n inProgress: !isPregame,\n timeUntilString: timeUntilString - new Date(),\n // timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n conferences: x[24],\n tvChannel: x[25].replace(\"New York\", \"NY\"),\n id: x[29],\n weather: x[26],\n temperature: x[27],\n indoors: x[28],\n };\n } else if (!isPregame && (league === \"NFL\" || league === \"NCAAFOOTBALL\")) {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[20],\n awaySpread: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeMoneyLine: x[23],\n awayMoneyLine: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[26],\n };\n } else if (!isPregame && league === \"NCAABASKETBALL\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n conferences: x[24],\n tvChannel: x[25],\n id: x[26],\n };\n } else if (isPregame && league === \"NBA\") {\n const dateParts = x[20].match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2025\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const jsDate = new Date(fullDateStr);\n const timeUntilString = new Date(`${dateStr}, ${year} ${x[11]} PM`);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: jsDate,\n dateStr: dateStr,\n inProgress: !isPregame,\n timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n tvChannel: x[25],\n id: x[29],\n };\n } else if (!isPregame && league === \"NBA\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[26],\n };\n } else if (isPregame && league === \"NHL\") {\n const dateParts = x[20].match(/(\\w+), (\\w+) (\\d+)(?:st|nd|rd|th)/);\n const dayOfWeek = dateParts[1];\n const month = dateParts[2];\n const day = dateParts[3];\n const year = new Date().getFullYear();\n const fullDateStr = `${month} ${day}, ${month === \"January\" ? \"2025\" : year} ${\n x[11]\n }`;\n const dateStr = `${month} ${day}`;\n const jsDate = new Date(fullDateStr);\n const timeUntilString = new Date(`${dateStr}, ${year} ${x[11]} PM`);\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: jsDate,\n dateStr: dateStr,\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[29],\n date: x[20],\n timeUntilString: formatDistanceToNow(timeUntilString, { addSuffix: false }),\n };\n } else if (!isPregame && league === \"NHL\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[20],\n awayMoneyLine: x[19],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[14],\n clock:\n x[11] === \"TIME\"\n ? \"TIME\"\n : x[11].includes(\"of\")\n ? x[11].split(\"of \")[1]\n : x[11],\n homeSpread: x[23],\n awaySpread: x[22],\n overUnder: x[21],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n tvChannel: x[25],\n id: x[26],\n inProgress: !isPregame,\n };\n } else if (isPregame && league === \"MLB\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeSpread: x[23],\n awaySpread: x[22],\n homeMoneyLine: x[16],\n awayMoneyLine: x[15],\n overUnder: x[17],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n fullDate: convertToDate(x[20] + \" \" + x[11]),\n dateStr: convertToMonthDayString(x[20] + \" \" + x[11]),\n inProgress: !isPregame,\n tvChannel: x[25],\n id: x[29],\n date: x[20],\n awayStartingPitcher: x[18],\n homeStartingPitcher: x[19],\n };\n } else if (!isPregame && league === \"MLB\") {\n return {\n homeTeam: x[10],\n awayTeam: x[5],\n homeMoneyLine: x[27],\n awayMoneyLine: x[26],\n homeScore: x[13],\n awayScore: x[12],\n quarter: x[11] === \"TIME\" ? \"HALF\" : x[11].includes(\"of\") ? \"End\" : x[11],\n clock: x[22] + \" out\",\n homeSpread: x[21],\n awaySpread: \"\",\n overUnder: x[28],\n time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n sport: league,\n tvChannel: x[25],\n id: x[26],\n inProgress: !isPregame,\n onFirst: x[31],\n onSecond: x[32],\n onThird: x[33],\n };\n } else {\n return null;\n // return {\n // homeTeam: x[5],\n // awayTeam: x[10],\n // homeSpread: x[23],\n // awaySpread: x[22],\n // homeScore: 23,\n // awayScore: 44,\n // quarter: \"1st\",\n // clock: \"11:21\",\n // homeMoneyLine: x[16],\n // awayMoneyLine: x[15],\n // overUnder: x[17],\n // time: momentTimezone(moment(x[11], \"h:mm A\")).tz(userTimezone).format(\"h:mm\"),\n // sport: league,\n // tvChannel: x[25],\n // id: x[26],\n // inProgress: !isPregame,\n // };\n }\n });\n });\n const sorted = []\n .concat(...filteredData)\n .filter((x) => x !== null)\n .sort((a, b) => {\n if (a.inProgress && !b.inProgress) {\n return -1;\n } else if (!a.inProgress && b.inProgress) {\n return 1;\n }\n if (a.fullDate < b.fullDate) {\n return -1;\n } else if (a.fullDate > b.fullDate) {\n return 1;\n }\n return a.timeUntilString > b.timeUntilString ? -1 : 1;\n })\n .filter((x) => x.awayTeam !== \"TBD\" && x.homeTeam !== \"TBD\");\n setAllGames(sorted);\n let formattedTimeInUserTimezone = momentTimezone\n .tz(new Date(), userTimezone)\n .format(\"h:mm:ss\");\n setLastUpdated(formattedTimeInUserTimezone);\n setTimeout(() => {\n setIsLoading(false);\n }, 3000);\n setIsBehindTheScenesLoading(false);\n });\n }\n if (sessionIDRef.current === \"\") {\n const urlTracking = `https://sheline-art-website-api.herokuapp.com/odds-screen/tracking/${user}`;\n const requestOptionsTracking = {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({ os: browserData.os, browser: browserData.name }),\n };\n fetch(urlTracking, requestOptionsTracking)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setSessionID(data.id);\n });\n } else {\n const urlTracking = `https://sheline-art-website-api.herokuapp.com/odds-screen/tracking/${\n sessionIDRef.current\n }/${isInTimeFrame ? \"true\" : \"false\"}`;\n const requestOptionsTracking = {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(urlTracking, requestOptionsTracking).then((response) => {\n return response.json();\n });\n }\n };\n\n const handleResize = () => {\n const screenWidthHalf = window.innerWidth / 2;\n const screenHeight = window.innerHeight;\n setScreenWidth(Math.floor(screenWidthHalf) - 100);\n setScreenHeight(screenHeight);\n };\n\n window.addEventListener(\"resize\", handleResize);\n\n useEffect(() => {\n selectOddsDisplay();\n }, [selectOddsDisplay]);\n\n const handleSwitchChange = (sport) => {\n setSportsToDisplay((prevValue) => {\n if (prevValue.includes(sport)) {\n return prevValue.filter((s) => s !== sport);\n } else {\n return [...prevValue, sport];\n }\n });\n };\n\n const handleFormat = (event, newSports) => {\n setSportsToDisplay(newSports);\n };\n\n const getWeatherIcon = (weather) => {\n if (weather === undefined) return null;\n if (weather === null) return null;\n if (weather.includes(\"Sunny\") || weather.includes(\"sun\")) {\n return ;\n } else if (\n weather.includes(\"cloudy\") ||\n weather.includes(\"Cloudy\") ||\n weather.includes(\"clouds\")\n ) {\n return ;\n } else if (\n weather.includes(\"rain\") ||\n weather.includes(\"Rain\") ||\n weather.includes(\"storms\") ||\n weather.includes(\"Showers\")\n ) {\n return (\n \n );\n } else if (weather.includes(\"snow\") || weather.includes(\"Snow\")) {\n return ;\n }\n };\n const getPoliticianOdds = (person) => {\n const odds = politicsData.bookmakers[0].markets[0].outcomes.find(\n (x) => x.name === person\n ).price;\n return odds > 0 ? \"+\" + odds : odds;\n };\n const getColor = (idx) => {\n if (\n idx === 0 ||\n idx === 4 ||\n idx === 8 ||\n idx === 3 ||\n idx === 7 ||\n idx === 11 ||\n idx === 12 ||\n idx === 15 ||\n idx === 16 ||\n idx === 19 ||\n idx === 20 ||\n idx === 24 ||\n idx === 28 ||\n idx === 32 ||\n idx === 36 ||\n idx === 40 ||\n idx === 41 ||\n idx === 44 ||\n idx === 48 ||\n idx === 52\n ) {\n return \"#4cff00\";\n } else {\n return \"#fffd01\";\n }\n };\n if (isLoading) {\n return (\n \n
\n {/*
\n Click on a game to display JUST that game\n */}\n {/*
*/}\n
\n Only Top 25 NCAA Football is selected by default, uncheck that in the settings to show all\n NCAA Football\n \n
\n Click the settings icons on the bottom right to choose what sports to display\n \n
\n Change the font size using the settings as well\n \n
\n SEE THE SETTINGS FOR SOME MORE USEFUL TIPS\n \n
\n );\n } else {\n return (\n \n {/* {email === \"pbullion@gmail.com\" && (\n
\n
\n
\n
\n \n HARRIS\n \n \n {getPoliticianOdds(\"Kamala Harris\")}\n \n
\n
\n
\n
\n
\n \n TRUMP\n \n \n {getPoliticianOdds(\"Donald Trump\")}\n \n
\n
\n
\n )} */}\n
\n {allGames\n .filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .filter((x) => {\n if (\n justTop25Basketball &&\n (x.sport === \"NCAABASKETBALL\" || x.sport === \"NCAAFOOTBALL\") &&\n (x.homeTeam.includes(\"#\") || x.awayTeam.includes(\"#\"))\n ) {\n return x;\n } else if (x.sport !== \"NCAABASKETBALL\" && x.sport !== \"NCAAFOOTBALL\") {\n return x;\n } else if (!justTop25Basketball) {\n return x;\n }\n })\n .map((game, idx) => {\n return (\n
{\n if (game.sport === \"MLB\") return;\n history.push(`/game-screen/${email}`, { game: game });\n }}\n style={{ cursor: \"pointer\", color: getColor(idx) }}>\n
\n \n {game.sport === \"NFL\" || game.sport === \"NCAAFOOTBALL\" ? (\n \n ) : game.sport === \"NBA\" || game.sport === \"NCAABASKETBALL\" ? (\n \n ) : game.sport === \"MLB\" ? (\n \n ) : (\n \n )}\n \n \n \n
\n {game.awayTeam.length > 35 && numOfColumns === 3\n ? `${game.awayTeam.slice(0, 35)}`\n : game.awayTeam}\n \n {parseInt(game.awayScore) > parseInt(game.homeScore) ? (\n
\n ) : null}\n
\n \n {game.awayScore ? (\n \n \n \n {game.awayScore}\n \n \n \n \n {game.quarter\n .replace(\"Top\", \"T\")\n .replace(\"Bot\", \"B\")\n .replace(\"Mid\", \"M\")\n .replace(\"End\", \"E\")\n .replace(\" \", \"\")}\n \n \n \n ) : game.sport === \"MLB\" ? (\n <>\n \n \n {game.awayStartingPitcher &&\n game.awayStartingPitcher\n .replace(/\\d+(\\.\\d+)?/g, \"\")\n .trim()\n .replace(/\\s+/g, \" \")\n .replace(\"-\", \"\")\n .split(\".\")[1]}\n \n \n \n >\n ) : (\n \n {/* \n {!game.timeUntilString.includes(\"day\") &&\n game.timeUntilString.replace(\"about \", \"\").replace(\"minutes\", \"min\").replace(\"minute\", \"min\")}\n */}\n {game.sport === \"NFL\" && !game.indoors && (\n \n {game.temperature}\n {game.temperature !== null && \"°\"}\n \n )}\n {game.sport === \"NFL\" && !game.indoors && getWeatherIcon(game.weather)}\n {game.sport === \"NFL\" && !game.indoors && (\n \n {game.weather !== null &&\n game.weather\n .toUpperCase()\n .replace(\"PARTLY \", \"\")\n .replace(\" W/ SHOWERS\", \"\")\n .replace(\"INTERMITTENT \", \"\")\n .replace(\"MOSTLY \", \"\")\n .replace(\"HAZY \", \"\")\n .replace(\"THUNDERSTORMS\", \"STORMS\")}\n \n )}\n \n )}\n \n \n {game.sport === \"MLB\" && renderRunnersMLB(game)}\n {game.sport !== \"MLB\" && game.awaySpread === \"\" ? \"-\" : game.awaySpread}\n \n \n \n 4\n ? textSize - 0.2\n : textSize\n }rem`,\n }}>\n {game.awayMoneyLine === \"\" ? \"-\" : game.awayMoneyLine}\n \n \n \n \n O/U\n \n \n \n
\n \n \n {game.clock === undefined && game.clock !== game.time\n ? `${\n momentTimezone(moment(new Date(), \"mm/dd\"))\n .tz(userTimezone)\n .format(\"ddd\") !==\n momentTimezone(moment(game.fullDate, \"mm/dd\"))\n .tz(userTimezone)\n .format(\"ddd\")\n ? momentTimezone(moment(game.fullDate, \"mm/dd\"))\n .tz(userTimezone)\n .format(\"ddd\")\n : \"\"\n } ${game.time.replace(\" AM\", \"\").replace(\" PM\", \"\")}`\n : game.tvChannel &&\n game.tvChannel\n .replace(\"NHLPP|\", \"\")\n .replace(\"USA Net\", \"USA\")\n .replace(\"CW NETWORK\", \"CW\")\n .replace(\"BIG12|\", \"\")\n .replace(\"NHL NET\", \"NHLN\")\n .replace(\"Peacock\", \"PEA\")\n .replace(\"NBA TV\", \"NBAT\")\n .slice(0, 6)}\n \n \n \n \n
\n {game.homeTeam.length > 35 && numOfColumns === 3\n ? `${game.homeTeam.slice(0, 35)}`\n : game.homeTeam}\n \n {parseInt(game.homeScore) > parseInt(game.awayScore) ? (\n
\n ) : null}\n
\n \n \n {game.homeScore ? (\n \n {game.homeScore}\n \n ) : game.homeStartingPitcher ? (\n \n {game.homeStartingPitcher &&\n game.homeStartingPitcher\n .replace(/\\d+(\\.\\d+)?/g, \"\")\n .trim()\n .replace(/\\s+/g, \" \")\n .replace(\"-\", \"\")\n .split(\" \")[1]}\n \n ) : (\n \n {game.tvChannel &&\n game.tvChannel\n .replace(\" \", \"\")\n .replace(\"NHLPP|\", \"\")\n .replace(\"USA Net\", \"USA\")\n .replace(\"CW NETWORK\", \"CW\")\n .replace(\"BIG12|\", \"\")\n .slice(0, 6)}\n \n )}\n \n \n 4 &&\n textSize > 1 &&\n allGames.filter((x) => sportsToDisplayRef.current.includes(x.sport))\n .length > 13)\n ? `${textSize - 0.25}rem`\n : `${textSize}rem`,\n }}\n color={idx % 2 === 0 ? \"orange\" : \"#00b4dd\"}>\n {game.clock}\n \n \n \n \n {game.homeSpread === \"\" ? \"-\" : game.homeSpread}\n \n \n \n 4\n ? textSize - 0.2\n : textSize\n }rem`,\n }}>\n {game.homeMoneyLine === \"\" ? \"-\" : game.homeMoneyLine}\n \n \n \n 4 ? textSize - 0.2 : textSize\n }rem`,\n }}>\n {game.overUnder === \"\" ? \"-\" : game.overUnder}\n \n \n \n
\n );\n })}\n
\n
\n
\n \n {lastUpdated}\n \n {/* {isBehindTheScenesLoading ? : null} */}\n
\n
\n \n Odds by BETMGM\n \n
\n
\n setIsSettingsOpen(true)}\n />\n setIsSettingsOpen(true)}\n style={{\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n fontSize: \"1.5rem\",\n }}\n color={\"white\"}>\n mancavedisplays.com\n \n
\n
\n
setIsSettingsOpen(false)}\n maxWidth=\"xxl\"\n fullWidth>\n Select Sports to Display \n \n \n {[\"NFL\", \"MLB\", \"NBA\", \"NCAAFOOTBALL\", \"NCAABASKETBALL\", \"NHL\"].map(\n (sport, index) => (\n \n {sport}\n \n )\n )}\n \n \n \n \n Only Show Top 25 NCAA \n \n \n \n setJustTop25Basketball(!justTop25Basketball)}\n />\n \n \n \n
\n \n Number of Columns\n \n \n setNumOfColumns(value)}\n />\n \n \n Font Size\n \n \n setTextSize(value)}\n />\n \n \n \n \n Only Show One Column (vertical displays) \n \n \n
\n \n TIPS\n \n \n - Bookmark {window.location.href} so you don't have to login everytime\n \n \n - Add '/2.5' (any number, but probably no larger than 3.5) after the url to autochange\n the font size if your screen always loads small text *** ex. {window.location.href}\n /2.5\n \n \n \n \n \n Manage Subscription\n \n window.location.reload()}>Refresh \n setIsSettingsOpen(false)}>Close \n
\n \n \n
\n );\n }\n}\nexport default OddsScreen;\n","import React from \"react\";\nimport { Typography, Table, TableBody, TableCell, TableContainer, TableHead, TableRow, Paper } from \"@mui/material\";\nimport Loading from \"react-loading\";\nimport { Bar } from \"react-chartjs-2\";\nimport { Chart as ChartJS, CategoryScale, LinearScale, BarElement, Title, Tooltip, Legend } from \"chart.js\";\n\nChartJS.register(CategoryScale, LinearScale, BarElement, Title, Tooltip, Legend);\n\nconst SessionTable = (props) => {\n const { selectTracking } = props;\n React.useEffect(() => {\n selectTracking();\n }, [selectTracking]);\n const [sessions, setSessions] = React.useState([]);\n const [updatedTime, setUpdatedTime] = React.useState(null);\n\n const getSessions = async (email) => {\n const url = `https://sheline-art-website-api.herokuapp.com/odds-screen/tracking`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => response.json())\n .then((data) => {\n setSessions(data.sessions);\n setSessions(data.sessions.filter((x) => x.email !== \"pbullion@gmail.com\"));\n setUpdatedTime(new Date().toLocaleString(\"en-US\", { hour: \"2-digit\", minute: \"2-digit\", second: \"2-digit\" }));\n });\n };\n React.useEffect(() => {\n getSessions();\n console.log(window);\n }, []);\n\n React.useEffect(() => {\n const getUpdate = () => {\n getSessions();\n };\n const intervalId = setInterval(getUpdate, 185000);\n return () => clearInterval(intervalId);\n }, []);\n\n const fontOptions = {\n family: \"'Baloo Bhaijaan', cursive\", // Font family\n color: \"white\",\n size: \"12rem\",\n };\n const dayOfWeekCount = {\n Sunday: 0,\n Monday: 0,\n Tuesday: 0,\n Wednesday: 0,\n Thursday: 0,\n Friday: 0,\n Saturday: 0,\n };\n sessions.reduce((acc, session) => {\n const day = new Date(session.start_date_time).getUTCDay();\n const dayLabel = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"][day];\n acc[dayLabel] = (acc[dayLabel] || 0) + (session.number_of_refreshes * 15) / 60;\n return acc;\n }, dayOfWeekCount);\n\n const chartData = {\n labels: [\"Sun\", \"Mon\", \"Tues\", \"Wed\", \"Thurs\", \"Fri\", \"Sat\"],\n datasets: [\n {\n label: \"Sessions\",\n data: Object.values(dayOfWeekCount),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const getOptions = (title) => {\n const options = {\n scales: {\n y: {\n grid: {\n drawBorder: false,\n display: true,\n drawOnChartArea: true,\n drawTicks: false,\n borderDash: [5, 5],\n color: \"rgba(255, 255, 255, .2)\",\n },\n ticks: {\n suggestedMin: 0,\n beginAtZero: true,\n padding: 10,\n font: fontOptions,\n color: \"#fff\",\n },\n },\n x: {\n grid: {\n drawBorder: false,\n display: true,\n drawOnChartArea: true,\n drawTicks: false,\n borderDash: [5, 5],\n color: \"rgba(255, 255, 255, .2)\",\n },\n ticks: {\n display: true,\n color: \"#f8f9fa\",\n padding: 10,\n font: fontOptions,\n },\n },\n },\n responsive: true,\n plugins: {\n legend: {\n labels: {\n font: fontOptions,\n },\n display: false,\n position: \"top\",\n },\n title: {\n display: true,\n text: title,\n font: fontOptions,\n color: \"white\",\n },\n },\n };\n return options;\n };\n\n const aggregateDataByHour = (sessions) => {\n const minutesPerHourData = {};\n sessions.forEach((session) => {\n const startTime = new Date(session.start_date_time);\n const endTime = new Date(\n startTime.getTime() + session.number_of_refreshes * 15 * 1000 // Each refresh is 15 seconds\n );\n while (startTime < endTime) {\n const hour = startTime.getHours();\n const minutes = startTime.getMinutes();\n if (!minutesPerHourData[hour]) {\n minutesPerHourData[hour] = 0;\n }\n minutesPerHourData[hour] += 1;\n startTime.setMinutes(minutes + 1);\n }\n });\n console.log(\"🚀 ~ sessions.forEach ~ minutesPerHourData:\", minutesPerHourData);\n return Object.entries(minutesPerHourData).map(([hour, minutes]) => ({\n hour,\n minutes,\n }));\n };\n const chartDataByHour = {\n labels: aggregateDataByHour(sessions).map((item) => (item.hour === \"0\" ? \"12\" : item.hour > 12 ? `${item.hour - 12}` : `${item.hour}`)),\n datasets: [\n {\n label: \"Total Number of Minutes\",\n data: aggregateDataByHour(sessions).map((item) => item.minutes),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n\n const aggregateDataByBrowser = (sessions) => {\n const refreshesByBrowser = {};\n sessions.forEach((session) => {\n if (refreshesByBrowser[session.browser]) {\n refreshesByBrowser[session.browser] += 1;\n } else {\n refreshesByBrowser[session.browser] = 1;\n }\n });\n return Object.entries(refreshesByBrowser).map(([browser, totalCount]) => ({\n browser,\n totalCount,\n }));\n };\n const aggregateDataByOS = (sessions) => {\n const refreshesByOS = {};\n sessions.forEach((session) => {\n if (refreshesByOS[session.os]) {\n refreshesByOS[session.os] += 1;\n } else {\n refreshesByOS[session.os] = 1;\n }\n });\n return Object.entries(refreshesByOS).map(([os, totalCount]) => ({\n os,\n totalCount,\n }));\n };\n const aggregateDataByFetches = (sessions) => {\n const fetchesByEmail = {};\n sessions.forEach((session) => {\n if (fetchesByEmail[session.email]) {\n fetchesByEmail[session.email] += session.fetch_games_count;\n } else {\n fetchesByEmail[session.email] = session.fetch_games_count;\n }\n });\n return Object.entries(fetchesByEmail).map(([email, totalFetches]) => ({\n email,\n totalFetches: totalFetches * 6,\n }));\n };\n const aggregateDataByEmail = (sessions) => {\n const refreshesByEmail = {};\n sessions.forEach((session) => {\n if (refreshesByEmail[session.email]) {\n refreshesByEmail[session.email] += session.number_of_refreshes;\n } else {\n refreshesByEmail[session.email] = session.number_of_refreshes;\n }\n });\n return Object.entries(refreshesByEmail).map(([email, totalRefreshes]) => ({\n email,\n totalRefreshes: (totalRefreshes * 15) / 60,\n }));\n };\n function getMonthKey(date) {\n const shortMonths = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n return shortMonths[date.getMonth()]; // Only Month Abbreviation\n }\n const aggregateDataByMonth = (sessions) => {\n const refreshesByMonth = {};\n\n sessions.forEach((session) => {\n const date = new Date(session.start_date_time);\n const monthYearKey = getMonthKey(date);\n\n if (!refreshesByMonth[monthYearKey]) {\n refreshesByMonth[monthYearKey] = 0;\n }\n\n refreshesByMonth[monthYearKey] += session.number_of_refreshes;\n });\n\n return Object.entries(refreshesByMonth).map(([date, totalRefreshes]) => ({\n date,\n totalRefreshes: (totalRefreshes * 15) / 60,\n }));\n };\n const aggregateDataByDate = (sessions) => {\n const refreshesByDate = {};\n sessions.forEach((session) => {\n const date = session.start_date_time.split(\"T\")[0];\n if (!refreshesByDate[date]) {\n refreshesByDate[date] = 0;\n }\n refreshesByDate[date] += session.number_of_refreshes;\n });\n return Object.entries(refreshesByDate).map(([date, totalRefreshes]) => ({\n date,\n totalRefreshes: (totalRefreshes * 15) / 60,\n }));\n };\n const chartDataByMonth = {\n labels: aggregateDataByMonth(sessions).map((item) => item.date),\n datasets: [\n {\n label: \"Total Number of Minutes\",\n data: aggregateDataByMonth(sessions).map((item) => item.totalRefreshes),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const chartDataByDate = {\n labels: aggregateDataByDate(sessions).map((item) => new Date(item.date).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" })),\n datasets: [\n {\n label: \"Total Number of Minutes\",\n data: aggregateDataByDate(sessions).map((item) => item.totalRefreshes),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const chartDataByUser = {\n labels: aggregateDataByEmail(sessions).map((item) => item.email.split(\"@\")[0]),\n datasets: [\n {\n label: \"Total Number of Minutes\",\n data: aggregateDataByEmail(sessions).map((item) => item.totalRefreshes),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const chartDataByFetches = {\n labels: aggregateDataByFetches(sessions).map((item) => item.email.split(\"@\")[0]),\n datasets: [\n {\n label: \"Total Number of Fetches\",\n data: aggregateDataByFetches(sessions).map((item) => item.totalFetches),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const chartDataByBrowser = {\n labels: aggregateDataByBrowser(sessions).map((item) => item.browser),\n datasets: [\n {\n label: \"Total Number of Browsers\",\n data: aggregateDataByBrowser(sessions).map((item) => item.totalCount),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const chartDataByOS = {\n labels: aggregateDataByOS(sessions).map((item) => item.os),\n datasets: [\n {\n label: \"Total Number of OSs\",\n data: aggregateDataByOS(sessions).map((item) => item.totalCount),\n color: \"white\",\n tension: 0.4,\n borderWidth: 0,\n borderRadius: 4,\n borderSkipped: false,\n backgroundColor: \"rgba(255, 255, 255, 0.8)\",\n maxBarThickness: 6,\n },\n ],\n };\n const getIsCurrentlyRunning = (session) => {\n const startDate = new Date(session.start_date_time);\n const utcOffset = 6 * 60 * 60 * 1000;\n const startDateUtc = new Date(startDate.getTime() + utcOffset);\n const sessionDuration = (session.number_of_refreshes * 2 + 5) * 15000;\n const endDateUtc = new Date(startDateUtc.getTime() + sessionDuration);\n const currentDateUtc = new Date();\n return currentDateUtc < endDateUtc;\n };\n\n const colors = [\n \"rgb(0, 181, 204)\", // Cyan: Bright and inviting\n \"rgb(220, 53, 69)\", // Red: Bold and attention-grabbing\n \"rgb(40, 167, 69)\", // Green: Nature-inspired, easy on thef\n \"rgb(255, 87, 34)\", // Deep Orange: Warm and energetic\n \"rgb(102, 16, 242)\", // Purple: Rich and elegant\n \"rgb(253, 126, 20)\", // Bright Orange: Lively and playful\n \"rgb(255, 193, 7)\", // Yellow: Cheerful and bright\n \"rgb(52, 58, 64)\", // Charcoal: Sophisticated and versatile\n \"rgb(25, 25, 25)\", // Dark Gray: Strong contrast, modern\n ];\n\n if (sessions.length === 0) {\n return ;\n } else\n return (\n \n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Minutes by Day of the Week\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Minutes by User\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Number of Browsers\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Number of Operating Systems\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Min by Day\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Min by Month\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Min by Hour\")}\n />\n
\n
\n 850 ? \"14rem\" : null }}\n options={getOptions(\"Fetches by User\")}\n />\n
\n
\n
\n \n Updated at {updatedTime}\n \n
\n
\n \n \n \n \n Email\n \n \n Run Time\n \n \n Refreshes\n \n \n Fetches\n \n \n Currently Running\n \n \n Start Date & Time\n \n \n \n \n {sessions\n .sort((a, b) => b.id - a.id)\n .sort((a, b) => getIsCurrentlyRunning(b) - getIsCurrentlyRunning(a))\n .map((session, idx) => (\n \n \n {session.email}\n \n \n {Math.floor((session.number_of_refreshes * 2 * 15) / 3600) > 0 &&\n Math.floor((session.number_of_refreshes * 2 * 15) / 3600) + \"hrs\"}{\" \"}\n {(((session.number_of_refreshes * 2 * 15) % 3600) / 60).toFixed(0)} min\n \n \n {session.number_of_refreshes}\n \n \n {session.fetch_games_count}\n \n \n {idx === 0 && console.log(session)}\n {getIsCurrentlyRunning(session) ? \"Running\" : \"Not Running\"}\n \n \n {new Date(session.start_date_time.replace(\"Z\", \"\")).toLocaleString(\"en-US\", {\n month: \"short\",\n day: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n })}\n \n \n ))}\n \n
\n \n
\n );\n};\n\nexport default SessionTable;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Typography, Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport CheckIcon from \"@mui/icons-material/Check\";\nimport ColoredButton from \"../../../shared/components/ColoredButton\";\n\nconst styles = (theme) => ({\n card: {\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n marginTop: theme.spacing(2),\n border: `3px solid ${theme.palette.primary.dark}`,\n borderRadius: theme.shape.borderRadius * 2,\n },\n cardHightlighted: {\n paddingTop: theme.spacing(8),\n paddingBottom: theme.spacing(4),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n border: `3px solid ${theme.palette.primary.dark}`,\n borderRadius: theme.shape.borderRadius * 2,\n backgroundColor: theme.palette.primary.main,\n [theme.breakpoints.down(\"sm\")]: {\n marginTop: theme.spacing(2),\n },\n },\n title: {\n color: theme.palette.primary.main,\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n },\n});\n\nfunction PriceCard(props) {\n const { classes, theme, title, pricing, features, highlighted, btnLink } = props;\n return (\n \n \n \n {title}\n \n \n \n \n {pricing}\n \n \n {features.map((feature, index) => (\n \n \n \n \n {feature}\n \n \n \n ))}\n \n Subscribe\n \n
\n );\n}\n\nPriceCard.propTypes = {\n classes: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired,\n title: PropTypes.string.isRequired,\n pricing: PropTypes.oneOfType([PropTypes.node, PropTypes.string]).isRequired,\n highlighted: PropTypes.bool,\n};\n\nexport default withStyles(styles, { withTheme: true })(PriceCard);\n","import React, { Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport { Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport WaveBorder from \"../../../shared/components/WaveBorder\";\nimport ZoomImage from \"../../../shared/components/ZoomImage\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\nconst styles = (theme) => ({\n extraLargeButtonLabel: {\n fontSize: theme.typography.body1.fontSize,\n [theme.breakpoints.up(\"sm\")]: {\n fontSize: theme.typography.h6.fontSize,\n },\n },\n extraLargeButton: {\n paddingTop: theme.spacing(1.5),\n paddingBottom: theme.spacing(1.5),\n [theme.breakpoints.up(\"xs\")]: {\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n [theme.breakpoints.up(\"lg\")]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n },\n },\n card: {\n boxShadow: theme.shadows[4],\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n [theme.breakpoints.up(\"xs\")]: {\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n },\n [theme.breakpoints.up(\"sm\")]: {\n paddingTop: theme.spacing(5),\n paddingBottom: theme.spacing(5),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n },\n [theme.breakpoints.up(\"md\")]: {\n paddingTop: theme.spacing(5.5),\n paddingBottom: theme.spacing(5.5),\n paddingLeft: theme.spacing(5),\n paddingRight: theme.spacing(5),\n },\n [theme.breakpoints.up(\"lg\")]: {\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6),\n paddingLeft: theme.spacing(6),\n paddingRight: theme.spacing(6),\n },\n [theme.breakpoints.down(\"xl\")]: {\n width: \"auto\",\n },\n },\n wrapper: {\n position: \"relative\",\n backgroundColor: theme.palette.secondary.main,\n paddingBottom: theme.spacing(2),\n },\n image: {\n [theme.breakpoints.up(\"lg\")]: {\n maxWidth: \"75%\",\n },\n maxWidth: \"100%\",\n verticalAlign: \"middle\",\n borderRadius: theme.shape.borderRadius,\n boxShadow: theme.shadows[4],\n },\n container: {\n marginTop: theme.spacing(6),\n marginBottom: theme.spacing(12),\n [theme.breakpoints.down(\"lg\")]: {\n marginBottom: theme.spacing(9),\n },\n [theme.breakpoints.down(\"md\")]: {\n marginBottom: theme.spacing(6),\n },\n [theme.breakpoints.down(\"md\")]: {\n marginBottom: theme.spacing(3),\n },\n },\n containerFix: {\n [theme.breakpoints.up(\"md\")]: {\n maxWidth: \"none !important\",\n },\n },\n waveBorder: {\n paddingTop: theme.spacing(4),\n },\n});\n\nfunction HeadSection(props) {\n const { classes, theme } = props;\n const isWidthUpLg = useMediaQuery(theme.breakpoints.up(\"lg\"));\n const [currentPic, setCurrentPic] = React.useState(3);\n\n React.useEffect(() => {\n const updateVariable = () => {\n setCurrentPic((prevVariable) => (prevVariable === 3 ? 1 : prevVariable + 1));\n };\n const intervalId = setInterval(updateVariable, 3000);\n return () => clearInterval(intervalId);\n }, []);\n\n return (\n \n \n \n \n );\n}\n\nHeadSection.propTypes = {\n classes: PropTypes.object,\n theme: PropTypes.object,\n};\n\nexport default withStyles(styles, { withTheme: true })(HeadSection);\n","function calculateSpacing(width, theme) {\n const currentWidth = theme[\"breakpoints\"][\"values\"][width];\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"lg\"]) {\n return 10;\n }\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"md\"]) {\n return 8;\n }\n if (currentWidth >= theme[\"breakpoints\"][\"values\"][\"sm\"]) {\n return 6;\n }\n return 4;\n}\nexport default calculateSpacing;\n","import React, { Fragment } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Typography } from \"@mui/material\";\n\nimport withStyles from \"@mui/styles/withStyles\";\n\nconst styles = (theme) => ({\n iconWrapper: {\n borderRadius: theme.shape.borderRadius,\n textAlign: \"center\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: theme.spacing(3),\n padding: theme.spacing(1) * 1.5,\n },\n});\n\nfunction shadeColor(hex, percent) {\n const f = parseInt(hex.slice(1), 16);\n\n const t = percent < 0 ? 0 : 255;\n\n const p = percent < 0 ? percent * -1 : percent;\n\n const R = f >> 16;\n\n const G = (f >> 8) & 0x00ff;\n\n const B = f & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((t - R) * p) + R) * 0x10000 +\n (Math.round((t - G) * p) + G) * 0x100 +\n (Math.round((t - B) * p) + B)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction FeatureCard(props) {\n const { classes, Icon, color, headline, text } = props;\n return (\n \n \n {Icon}\n
\n \n {headline}\n \n \n {text}\n \n \n );\n}\n\nFeatureCard.propTypes = {\n classes: PropTypes.object.isRequired,\n Icon: PropTypes.element.isRequired,\n color: PropTypes.string.isRequired,\n headline: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(FeatureCard);\n","import React from \"react\";\nimport { Grid } from \"@mui/material\";\nimport calculateSpacing from \"./calculateSpacing\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport FeatureCard from \"./FeatureCard\";\nimport useWidth from \"../../../shared/functions/useWidth\";\nimport SportsFootballIcon from \"@mui/icons-material/SportsFootball\";\nimport SettingsSuggestIcon from \"@mui/icons-material/SettingsSuggest\";\nimport TvIcon from \"@mui/icons-material/Tv\";\nimport ComputerIcon from \"@mui/icons-material/Computer\";\nconst iconSize = 30;\n\nconst styles = (theme) => ({\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n marginBottom: theme.spacing(2),\n },\n});\nconst features = [\n {\n color: \"#0091EA\",\n headline: \"Easy to Display!!!\",\n text: \"Use the browser on your smart tv, cast from your computer to a chromecast, or purchase a Fire TV stick and use the browser on it.\",\n icon: ,\n mdDelay: \"0\",\n smDelay: \"0\",\n },\n {\n color: \"rgb(255, 193, 7)\",\n headline: \"Raspberry Pi\",\n text: \"Optionally purchase a Raspberry Pi (sold seperatly) and set it to automatically load the odds screen on boot. (as cheap as $35)\",\n icon: ,\n mdDelay: \"0\",\n smDelay: \"0\",\n },\n {\n color: \"#00C853\",\n headline: \"Sports\",\n text: \"NFL, NCAA, MLB, NBA, NHL pre/live/final scores with odds\",\n icon: ,\n mdDelay: \"200\",\n smDelay: \"200\",\n },\n // {\n // color: \"#6200EA\",\n // headline: \"Settings Page\",\n // text: \"Have your own settings page to update what sports to display\",\n // icon: ,\n // mdDelay: \"400\",\n // smDelay: \"0\",\n // },\n // {\n // color: \"#0091EA\",\n // headline: \"Stocks and Commodities\",\n // text: \"Live stock quotes\",\n // icon: ,\n // mdDelay: \"400\",\n // smDelay: \"0\",\n // },\n];\n\nfunction FeatureSection(props) {\n const { theme } = props;\n const width = useWidth();\n const isWidthUpMd = useMediaQuery(theme.breakpoints.up(\"md\"));\n\n return (\n \n
\n
\n \n {features.map((element) => (\n \n \n \n ))}\n \n
\n
\n
\n );\n}\n\nFeatureSection.propTypes = {};\n\nexport default withStyles(styles, { withTheme: true })(FeatureSection);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { Grid, Typography } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport PriceCard from \"./PriceCard\";\nimport HeadSection from \"./HeadSection\";\nimport FeatureSection from \"./FeatureSection\";\nimport calculateSpacing from \"./calculateSpacing\";\nimport useWidth from \"../../../shared/functions/useWidth\";\n\nconst styles = (theme) => ({\n containerFix: {\n [theme.breakpoints.down(\"lg\")]: {\n paddingLeft: theme.spacing(6),\n paddingRight: theme.spacing(6),\n },\n [theme.breakpoints.down(\"md\")]: {\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(4),\n },\n [theme.breakpoints.down(\"sm\")]: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n overflow: \"hidden\",\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n brandText: {\n fontFamily: \"'Baloo Bhaijaan', cursive\",\n fontWeight: 400,\n },\n cardWrapper: {\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"auto\",\n marginRight: \"auto\",\n maxWidth: 340,\n },\n },\n cardWrapperHighlighted: {\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"auto\",\n marginRight: \"auto\",\n maxWidth: 360,\n },\n },\n});\n\nfunction OddsScreenStore(props) {\n const { classes, theme } = props;\n const width = useWidth();\n\n return (\n <>\n \n \n \n
\n *******NEW ******\n \n
\n Live Odds Screen\n \n
\n
\n \n $4.99}\n btnLink=\"https://buy.stripe.com/5kA4jtgmC47c7HaeVF\"\n features={[\"7 Day Free Trial\"]}\n />\n \n \n $45}\n btnLink=\"https://buy.stripe.com/4gwcPZc6meLQbXqeVE\"\n features={[\"7 Day Free Trial\"]}\n />\n \n \n
\n
\n >\n );\n}\n\nOddsScreenStore.propTypes = {};\n\nexport default withStyles(styles, { withTheme: true })(OddsScreenStore);\n","import * as React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { alpha } from \"@mui/material/styles\";\nimport Box from \"@mui/material/Box\";\nimport Table from \"@mui/material/Table\";\nimport TableBody from \"@mui/material/TableBody\";\nimport TableCell from \"@mui/material/TableCell\";\nimport TableContainer from \"@mui/material/TableContainer\";\nimport TableHead from \"@mui/material/TableHead\";\nimport TablePagination from \"@mui/material/TablePagination\";\nimport TableRow from \"@mui/material/TableRow\";\nimport TableSortLabel from \"@mui/material/TableSortLabel\";\nimport Toolbar from \"@mui/material/Toolbar\";\nimport Typography from \"@mui/material/Typography\";\nimport Paper from \"@mui/material/Paper\";\nimport Checkbox from \"@mui/material/Checkbox\";\nimport IconButton from \"@mui/material/IconButton\";\nimport Tooltip from \"@mui/material/Tooltip\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Switch from \"@mui/material/Switch\";\nimport DeleteIcon from \"@mui/icons-material/Delete\";\nimport FilterListIcon from \"@mui/icons-material/FilterList\";\nimport { visuallyHidden } from \"@mui/utils\";\n\nfunction createData(id, name, calories, fat, carbs, protein) {\n return {\n id,\n name,\n calories,\n fat,\n carbs,\n protein,\n };\n}\n\nconst rows = [\n createData(1, \"Cupcake\", 305, 3.7, 67, 4.3),\n createData(2, \"Donut\", 452, 25.0, 51, 4.9),\n createData(3, \"Eclair\", 262, 16.0, 24, 6.0),\n createData(4, \"Frozen yoghurt\", 159, 6.0, 24, 4.0),\n createData(5, \"Gingerbread\", 356, 16.0, 49, 3.9),\n createData(6, \"Honeycomb\", 408, 3.2, 87, 6.5),\n createData(7, \"Ice cream sandwich\", 237, 9.0, 37, 4.3),\n createData(8, \"Jelly Bean\", 375, 0.0, 94, 0.0),\n createData(9, \"KitKat\", 518, 26.0, 65, 7.0),\n createData(10, \"Lollipop\", 392, 0.2, 98, 0.0),\n createData(11, \"Marshmallow\", 318, 0, 81, 2.0),\n createData(12, \"Nougat\", 360, 19.0, 9, 37.0),\n createData(13, \"Oreo\", 437, 18.0, 63, 4.0),\n];\n\nfunction descendingComparator(a, b, orderBy) {\n if (b[orderBy] < a[orderBy]) {\n return -1;\n }\n if (b[orderBy] > a[orderBy]) {\n return 1;\n }\n return 0;\n}\n\nfunction getComparator(order, orderBy) {\n return order === \"desc\" ? (a, b) => descendingComparator(a, b, orderBy) : (a, b) => -descendingComparator(a, b, orderBy);\n}\n\nfunction stableSort(array, comparator) {\n const stabilizedThis = array.map((el, index) => [el, index]);\n stabilizedThis.sort((a, b) => {\n const order = comparator(a[0], b[0]);\n if (order !== 0) {\n return order;\n }\n return a[1] - b[1];\n });\n return stabilizedThis.map((el) => el[0]);\n}\n\nconst headCells = [\n {\n id: \"name\",\n numeric: false,\n disablePadding: true,\n label: \"Dessert (100g serving)\",\n },\n {\n id: \"calories\",\n numeric: true,\n disablePadding: false,\n label: \"Calories\",\n },\n {\n id: \"fat\",\n numeric: true,\n disablePadding: false,\n label: \"Fat (g)\",\n },\n {\n id: \"carbs\",\n numeric: true,\n disablePadding: false,\n label: \"Carbs (g)\",\n },\n {\n id: \"protein\",\n numeric: true,\n disablePadding: false,\n label: \"Protein (g)\",\n },\n];\n\nfunction EnhancedTableHead(props) {\n const { onSelectAllClick, order, orderBy, numSelected, rowCount, onRequestSort } = props;\n const createSortHandler = (property) => (event) => {\n onRequestSort(event, property);\n };\n\n return (\n \n \n {headCells.map((headCell) => (\n \n \n {headCell.label}\n {orderBy === headCell.id ? (\n \n {order === \"desc\" ? \"sorted descending\" : \"sorted ascending\"}\n \n ) : null}\n \n \n ))}\n \n \n );\n}\n\nEnhancedTableHead.propTypes = {\n numSelected: PropTypes.number.isRequired,\n onRequestSort: PropTypes.func.isRequired,\n onSelectAllClick: PropTypes.func.isRequired,\n order: PropTypes.oneOf([\"asc\", \"desc\"]).isRequired,\n orderBy: PropTypes.string.isRequired,\n rowCount: PropTypes.number.isRequired,\n};\n\nfunction EnhancedTableToolbar(props) {\n const { numSelected } = props;\n\n return (\n 0 && {\n bgcolor: (theme) => alpha(theme.palette.primary.main, theme.palette.action.activatedOpacity),\n }),\n }}>\n {numSelected > 0 ? (\n \n {numSelected} selected\n \n ) : (\n \n Nutrition\n \n )}\n\n {numSelected > 0 ? (\n \n \n \n \n \n ) : (\n \n \n \n \n \n )}\n \n );\n}\n\nEnhancedTableToolbar.propTypes = {\n numSelected: PropTypes.number.isRequired,\n};\n\nexport default function TDMPFFL(props) {\n const { selectTDMPFFL } = props;\n const [order, setOrder] = React.useState(\"asc\");\n const [orderBy, setOrderBy] = React.useState(\"calories\");\n const [selected, setSelected] = React.useState([]);\n const [page, setPage] = React.useState(0);\n const [dense, setDense] = React.useState(true);\n const [rowsPerPage, setRowsPerPage] = React.useState(5);\n\n const handleRequestSort = (event, property) => {\n const isAsc = orderBy === property && order === \"asc\";\n setOrder(isAsc ? \"desc\" : \"asc\");\n setOrderBy(property);\n };\n\n const handleSelectAllClick = (event) => {\n if (event.target.checked) {\n const newSelected = rows.map((n) => n.id);\n setSelected(newSelected);\n return;\n }\n setSelected([]);\n };\n\n const handleClick = (event, id) => {\n const selectedIndex = selected.indexOf(id);\n let newSelected = [];\n\n if (selectedIndex === -1) {\n newSelected = newSelected.concat(selected, id);\n } else if (selectedIndex === 0) {\n newSelected = newSelected.concat(selected.slice(1));\n } else if (selectedIndex === selected.length - 1) {\n newSelected = newSelected.concat(selected.slice(0, -1));\n } else if (selectedIndex > 0) {\n newSelected = newSelected.concat(selected.slice(0, selectedIndex), selected.slice(selectedIndex + 1));\n }\n setSelected(newSelected);\n };\n\n React.useEffect(() => {\n selectTDMPFFL();\n }, [selectTDMPFFL]);\n const handleChangePage = (event, newPage) => {\n setPage(newPage);\n };\n\n const handleChangeRowsPerPage = (event) => {\n setRowsPerPage(parseInt(event.target.value, 10));\n setPage(0);\n };\n\n const handleChangeDense = (event) => {\n setDense(event.target.checked);\n };\n\n const isSelected = (id) => selected.indexOf(id) !== -1;\n\n // Avoid a layout jump when reaching the last page with empty rows.\n const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - rows.length) : 0;\n\n const visibleRows = React.useMemo(\n () => stableSort(rows, getComparator(order, orderBy)).slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage),\n [order, orderBy, page, rowsPerPage]\n );\n\n return (\n \n \n \n \n \n \n \n {visibleRows.map((row, index) => {\n const isItemSelected = isSelected(row.id);\n const labelId = `enhanced-table-checkbox-${index}`;\n\n return (\n handleClick(event, row.id)}\n role=\"checkbox\"\n aria-checked={isItemSelected}\n tabIndex={-1}\n key={row.id}\n selected={isItemSelected}\n sx={{ cursor: \"pointer\" }}>\n \n {row.name}\n \n {row.calories} \n {row.fat} \n {row.carbs} \n {row.protein} \n \n );\n })}\n {emptyRows > 0 && (\n \n \n \n )}\n \n
\n \n \n \n );\n}\n","import * as React from \"react\";\nimport CandlelightersLogo from \"./pics/candlelighters_logo.png\";\nimport MargLogo from \"./pics/marg_logo.png\";\nimport { Typography, Button, Box, Slider, OutlinedInput, TextField } from \"@mui/material\";\nimport { useParams } from \"react-router-dom\";\n\nexport default function Candlelighters(props) {\n const { user } = useParams();\n const { selectCandlelighters } = props;\n const [judge, setJudge] = React.useState(null);\n const [selectedBooth, setSelectedBooth] = React.useState(null);\n const [loggedIn, setLoggedIn] = React.useState(false);\n const [finalize, setFinalize] = React.useState(false);\n const [updatedScores, setUpdatedScores] = React.useState(null);\n const [edited, setEdited] = React.useState(false);\n const [booths, setBooths] = React.useState([]);\n\n React.useEffect(() => {\n selectCandlelighters();\n }, [selectCandlelighters]);\n\n React.useEffect(() => {\n // if (judge === \"null\") {\n // const judge = window.prompt(\"Enter your Clipboard Number\");\n // setJudge(judge);\n // }\n if (user) {\n const urlJudges = `https://sheline-art-website-api.herokuapp.com/candlelighters/judges/${user}`;\n // const urlJudges = `http://localhost:3001/candlelighters/judges/${user}`;\n const requestOptionsJudges = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(urlJudges, requestOptionsJudges)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n setLoggedIn(true);\n const user = { ...data, scores: JSON.parse(data.scores) };\n console.log(\"🚀 ~ .then ~ user:\", user);\n setJudge(user);\n setUpdatedScores(JSON.parse(data.scores));\n })\n .catch((error) => console.error(error));\n }\n const url = `https://sheline-art-website-api.herokuapp.com/candlelighters/restaurants`;\n // const url = `http://localhost:3001/candlelighters/restaurants`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n setBooths(data);\n })\n .catch((error) => console.error(error));\n }, []);\n const handleSave = async () => {\n const data = { scores: updatedScores, id: judge.id };\n const urlJudges = `https://sheline-art-website-api.herokuapp.com/candlelighters/update-score`;\n // const urlJudges = `http://localhost:3001/candlelighters/update-score`;\n const requestOptionsJudges = {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify(data),\n };\n fetch(urlJudges, requestOptionsJudges)\n .then((response) => {\n console.log(\"🚀 ~ .then ~ response:\", response);\n return response;\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n if (data.status === 200) {\n setEdited(false);\n setSelectedBooth(null);\n }\n })\n .catch((error) => console.error(error));\n };\n\n const handleLogin = () => {\n const user = window.prompt(\"Enter your Clipboard Number\");\n if (user) {\n const urlJudges = `https://sheline-art-website-api.herokuapp.com/candlelighters/judges/${user}`;\n // const urlJudges = `http://localhost:3001/candlelighters/judges/${user}`;\n const requestOptionsJudges = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(urlJudges, requestOptionsJudges)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n setLoggedIn(true);\n const user = { ...data, scores: JSON.parse(data.scores) };\n console.log(\"🚀 ~ .then ~ user:\", user);\n setJudge(user);\n setUpdatedScores(JSON.parse(data.scores));\n })\n .catch((error) => console.error(error));\n }\n };\n const questions = [\n { id: 1, name: \"Best Booth Décor\", years: [\"2024\"] },\n { id: 2, name: \"Best Overall Theme\", years: [\"2024\"] },\n { id: 3, name: \"Most Festive Bartenders\", years: [\"2024\"] },\n { id: 4, name: \"Friendliest Bartenders\", years: [\"2024\"] },\n { id: 5, name: \"Most Spirited Award\", years: [\"2024\"] },\n { id: 6, name: \"Hot Tamale Award\", years: [\"2024\"] },\n { id: 7, name: \"Best Appetizer Presentation\", years: [\"2024\"] },\n { id: 8, name: \"Best Cold Appetizer\", years: [\"2024\"] },\n { id: 9, name: \"Best Hot Appetizer\", years: [\"2024\"] },\n { id: 10, name: \"Best Margarita Presentation\", years: [\"2024\"] },\n { id: 11, name: \"Most Unique Margarita Garnish\", years: [\"2024\"] },\n { id: 12, name: \"Most Refreshing Margarita\", years: [\"2024\"] },\n { id: 13, name: \"Most Unforgettable Margarita\", years: [\"2024\"] },\n { id: 14, name: \"Most Buzzworthy Margarita\", years: [\"2024\"] },\n { id: 15, name: \"Best Use of Fresh Ingredients\", years: [\"2024\"] },\n { id: 16, name: \"Most Exotic Margarita Flavor\", years: [\"2024\"] },\n { id: 17, name: \"Smoothest Margarita\", years: [\"2024\"] },\n { id: 18, name: \"Most Unique Margarita\", years: [\"2024\"] },\n { id: 19, name: \"Best Traditional Margarita Recipe\", years: [\"2024\"] },\n // { id: 20, name: \"Veteran Award\", years: [\"2024\"] },\n // { id: 21, name: \"Best NEW Restaurant Margarita\", years: [\"2024\"] },\n // { id: 22, name: \"Best NEW Restaurant Appetizer\", years: [\"2024\"] },\n // { id: 23, name: \"Community Award\", years: [\"2024\"] },\n // { id: 24, name: \"Don Julio Critics Choice\", years: [\"2024\"] },\n ];\n const getRemaining = (booth) => {\n console.log(\"🚀 ~ getRemaining ~ booth:\", booth);\n const { id } = booth;\n console.log(\"🚀 ~ getRemaining ~ id:\", id);\n console.log(\"🚀 ~ getRemaining ~ updatedScores:\", updatedScores);\n const boothScores = updatedScores[id.toString()];\n let remaining = 0;\n boothScores.forEach((x) => x.score === 0 && remaining++);\n if (remaining === 0) {\n return \"Done\";\n }\n return remaining + \" Remaining\";\n };\n return loggedIn && judge ? (\n \n
\n
\n
\n {judge.name}\n \n {selectedBooth && (\n
\n setSelectedBooth(null)}>\n Back\n \n
\n )}\n {/* {!selectedBooth && !finalize && (\n
\n setFinalize(true)}>\n FINALIZE\n \n
\n )} */}\n {/*
\n {judge.type}\n */}\n
\n
\n
\n\n {selectedBooth && (\n
\n
\n {selectedBooth.name}\n \n {questions.map((question, idx) => {\n return (\n
{}}>\n \n {question.name}\n \n \n {updatedScores[selectedBooth.id.toString()].find((x) => x.questionID === question.id).score} / 10\n \n x.questionID === question.id).score}\n onChange={(e, value) => {\n console.log(\"🚀 ~ {questions.map ~ selectedBooth:\", selectedBooth);\n updatedScores[selectedBooth.id.toString()].find((x) => x.questionID === question.id).score = value;\n setUpdatedScores({ ...updatedScores });\n setEdited(true);\n }}\n />\n {/* booth.id === x.id).notes}\n onChange={(e, value) => {\n setBoothScore((prev) => prev.map((y, i) => (y.id === x.id ? { ...y, notes: value } : y)));\n }}\n /> */}\n
\n );\n })}\n
handleSave()}>\n Save\n \n
\n )}\n {finalize && (\n
\n
\n {questions.map((x, idx) => {\n return (\n
{}}>\n
\n {x.question}\n \n
\n {[1, 2, 3, 4, 5].map((y, idx) => {\n return (\n \n {y}\n \n );\n })}\n
\n
\n );\n })}\n
{}}>\n Save\n \n
\n
\n )}\n {!selectedBooth && !finalize && booths.length > 0 && updatedScores && (\n
\n {booths.map((booth, idx) => {\n return (\n
{\n setSelectedBooth(booth);\n }}>\n \n {booth.name}\n \n \n {getRemaining(booth)}\n \n
\n );\n })}\n
\n )}\n
\n ) : (\n \n
\n
\n Questions Call\n \n
\n Someone at Candlelighters\n \n
\n (409) 833-2668\n \n
handleLogin()}>\n Login\n \n
\n );\n}\n","import * as React from \"react\";\nimport CandlelightersLogo from \"./pics/candlelighters_logo.png\";\nimport MargLogo from \"./pics/marg_logo.png\";\nimport { Typography, Button, Box, Slider, OutlinedInput, TextField } from \"@mui/material\";\nimport { useParams } from \"react-router-dom\";\n\nexport default function Candlelighters(props) {\n const { selectCandlelightersAdmin } = props;\n const [judges, setJudges] = React.useState(null);\n const [isLoading, setIsLoading] = React.useState(true);\n const [booths, setBooths] = React.useState([]);\n\n React.useEffect(() => {\n selectCandlelightersAdmin();\n }, [selectCandlelightersAdmin]);\n\n React.useEffect(() => {\n const urlJudges = `https://sheline-art-website-api.herokuapp.com/candlelighters/judges`;\n // const urlJudges = `http://localhost:3001/candlelighters/judges/${user}`;\n const requestOptionsJudges = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(urlJudges, requestOptionsJudges)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n const allJudges = data.map((judge) => {\n return {\n ...judge,\n scores: JSON.parse(judge.scores),\n };\n });\n setJudges(allJudges);\n setIsLoading(false);\n })\n .catch((error) => console.error(error));\n const url = `https://sheline-art-website-api.herokuapp.com/candlelighters/restaurants`;\n // const url = `http://localhost:3001/candlelighters/restaurants`;\n const requestOptions = {\n method: \"GET\",\n headers: { \"Content-Type\": \"application/json\" },\n };\n fetch(url, requestOptions)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n console.log(\"🚀 ~ .then ~ data:\", data);\n setBooths(data);\n })\n .catch((error) => console.error(error));\n }, []);\n\n const colors = [\n \"rgb(0, 181, 204)\", // Cyan: Bright and inviting\n \"rgb(220, 53, 69)\", // Red: Bold and attention-grabbing\n \"rgb(40, 167, 69)\", // Green: Nature-inspired, easy on thef\n \"rgb(255, 87, 34)\", // Deep Orange: Warm and energetic\n \"rgb(102, 16, 242)\", // Purple: Rich and elegant\n \"rgb(253, 126, 20)\", // Bright Orange: Lively and playful\n \"rgb(255, 193, 7)\", // Yellow: Cheerful and bright\n \"rgb(52, 58, 64)\", // Charcoal: Sophisticated and versatile\n \"rgb(25, 25, 25)\", // Dark Gray: Strong contrast, modern\n ];\n const questions = [\n { id: 1, name: \"Best Booth Décor\", years: [\"2024\"] },\n { id: 2, name: \"Best Overall Theme\", years: [\"2024\"] },\n { id: 3, name: \"Most Festive Bartenders\", years: [\"2024\"] },\n { id: 4, name: \"Friendliest Bartenders\", years: [\"2024\"] },\n { id: 5, name: \"Most Spirited Award\", years: [\"2024\"] },\n { id: 6, name: \"Hot Tamale Award\", years: [\"2024\"] },\n { id: 7, name: \"Best Appetizer Presentation\", years: [\"2024\"] },\n { id: 8, name: \"Best Cold Appetizer\", years: [\"2024\"] },\n { id: 9, name: \"Best Hot Appetizer\", years: [\"2024\"] },\n { id: 10, name: \"Best Margarita Presentation\", years: [\"2024\"] },\n { id: 11, name: \"Most Unique Margarita Garnish\", years: [\"2024\"] },\n { id: 12, name: \"Most Refreshing Margarita\", years: [\"2024\"] },\n { id: 13, name: \"Most Unforgettable Margarita\", years: [\"2024\"] },\n { id: 14, name: \"Most Buzzworthy Margarita\", years: [\"2024\"] },\n { id: 15, name: \"Best Use of Fresh Ingredients\", years: [\"2024\"] },\n { id: 16, name: \"Most Exotic Margarita Flavor\", years: [\"2024\"] },\n { id: 17, name: \"Smoothest Margarita\", years: [\"2024\"] },\n { id: 18, name: \"Most Unique Margarita\", years: [\"2024\"] },\n { id: 19, name: \"Best Traditional Margarita Recipe\", years: [\"2024\"] },\n // { id: 20, name: \"Veteran Award\", years: [\"2024\"] },\n // { id: 21, name: \"Best NEW Restaurant Margarita\", years: [\"2024\"] },\n // { id: 22, name: \"Best NEW Restaurant Appetizer\", years: [\"2024\"] },\n // { id: 23, name: \"Community Award\", years: [\"2024\"] },\n // { id: 24, name: \"Don Julio Critics Choice\", years: [\"2024\"] },\n ];\n const getTopTen = (id) => {\n // console.log(\"====================================\");\n // console.log(\"🚀 ~ getTopTen ~ id:\", id);\n // console.log(\"🚀 ~ getTopTen ~ booths:\", booths);\n // console.log(\"🚀 ~ getTopTen ~ judges:\", judges);\n // console.log(\"🚀 ~ Candlelighters ~ questions:\", questions);\n const scores = [];\n booths.forEach((booth) => {\n let runningScore = 0;\n judges.forEach((judge) => {\n const score = judge.scores[booth.id.toString()].find((question) => question.questionID === id).score;\n runningScore += score;\n });\n scores.push({ name: booth.name, score: runningScore });\n });\n console.log(\"🚀 ~ getTopTen ~ scores:\", scores);\n scores.sort((a, b) => b.score - a.score);\n return scores.map((score, index) => {\n return (\n \n \n {score.name}\n \n \n {score.score}\n \n
\n );\n });\n };\n const Card = ({ question }) => {\n return (\n \n
\n {question.name}\n \n
\n {getTopTen(question.id)}\n
\n
\n );\n };\n return (\n !isLoading && (\n \n {questions.map((question) => (\n \n ))}\n
\n )\n );\n}\n","export default {\n Items: [\n {\n Timezone: \"CT\",\n Description: \"8 Team - Teaser - PRIME 7\",\n Wagers: [\n {\n idCustomer: 513243,\n AgentName: \"\",\n CustName: \"\",\n Password: \"\",\n FirstName: \"\",\n NickName: \"\",\n Website: \"\",\n Type: \"Teaser\",\n TicketNumber: 511349448,\n TotalRisk: 100,\n TotalWin: 700,\n Description: \"8 Team - Teaser - PRIME 7\",\n TeaserName: \"PRIME 7\",\n PlacedDate: \"2024-03-04T13:59:37.62\",\n AllowDelete: false,\n FifteenMinsPost: false,\n ContinueOnPush: true,\n Details: [\n {\n Points: 212.5,\n OddsFormatted: \"-115\",\n Description: \"Memphis Grizzlies/Brooklyn Nets\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T18:40:00\",\n Outcome: \"Pending\",\n Rotation: \"501/502\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Memphis Grizzlies (20-41) @ Brooklyn Nets (24-36)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Memphis Grizzlies\",\n Team1Logo: 56,\n Team1Mascot: \"Grizzlies\",\n Team2: \"Brooklyn Nets\",\n Team2Logo: 44,\n Team2Mascot: \"Nets\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 217,\n OddsFormatted: \"-110\",\n Description: \"Portland Trail Blazers/Minnesota Timberwolves\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T19:10:00\",\n Outcome: \"Pending\",\n Rotation: \"505/506\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Portland Trail Blazers (17-42) @ Minnesota Timberwolves (42-19)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Portland Trail Blazers\",\n Team1Logo: 66,\n Team1Mascot: \"Blazers\",\n Team2: \"Minnesota Timberwolves\",\n Team2Logo: 59,\n Team2Mascot: \"T-Wolves\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 247,\n OddsFormatted: \"-115\",\n Description: \"Washington Wizards/Utah Jazz\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:10:00\",\n Outcome: \"Pending\",\n Rotation: \"507/508\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Washington Wizards (9-51) @ Utah Jazz (27-34)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Washington Wizards\",\n Team1Logo: 71,\n Team1Mascot: \"Wizards\",\n Team2: \"Utah Jazz\",\n Team2Logo: 70,\n Team2Mascot: \"Jazz\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 0,\n OddsFormatted: \"-105\",\n Description: \"Duke\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T18:00:00\",\n Outcome: \"Pending\",\n Rotation: \"881\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"#10 Duke (23-6) @ NC State (17-12) (ESPN)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Duke\",\n Team1Logo: 240,\n Team1Mascot: \"\",\n Team2: \"NC State\",\n Team2Logo: 369,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 1.5,\n OddsFormatted: \"-110\",\n Description: \"Weber St\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:00:00\",\n Outcome: \"Pending\",\n Rotation: \"885\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"Weber St (20-10) @ Montana St (13-17) (ESPNU)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Weber St\",\n Team1Logo: 504,\n Team1Mascot: \"\",\n Team2: \"Montana St\",\n Team2Logo: 348,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: -2.5,\n OddsFormatted: \"-110\",\n Description: \"Montana\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:00:00\",\n Outcome: \"Pending\",\n Rotation: \"888\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"Idaho St (12-18) @ Montana (20-10)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Idaho St\",\n Team1Logo: 284,\n Team1Mascot: \"\",\n Team2: \"Montana\",\n Team2Logo: 347,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: -2,\n OddsFormatted: \"-110\",\n Description: \"E Washington\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:00:00\",\n Outcome: \"Pending\",\n Rotation: \"889\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"E Washington (20-10) @ Sacramento St (8-22)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"E Washington\",\n Team1Logo: 246,\n Team1Mascot: \"\",\n Team2: \"Sacramento St\",\n Team2Logo: 412,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 2,\n OddsFormatted: \"-110\",\n Description: \"N Colorado\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T19:00:00\",\n Outcome: \"Pending\",\n Rotation: \"883\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"N Colorado (18-12) @ N Arizona (14-17)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"N Colorado\",\n Team1Logo: 376,\n Team1Mascot: \"\",\n Team2: \"N Arizona\",\n Team2Logo: 375,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n ],\n Outcome: \"Pending\",\n WagerNumber: 1,\n IsFreePlay: false,\n TicketType: \"INTERNET\",\n },\n ],\n },\n {\n Timezone: \"CT\",\n Description: \"8 Team - Teaser - PRIME 7\",\n Wagers: [\n {\n idCustomer: 513243,\n AgentName: \"\",\n CustName: \"\",\n Password: \"\",\n FirstName: \"\",\n NickName: \"\",\n Website: \"\",\n Type: \"Teaser\",\n TicketNumber: 511349486,\n TotalRisk: 150,\n TotalWin: 1050,\n Description: \"8 Team - Teaser - PRIME 7\",\n TeaserName: \"PRIME 7\",\n PlacedDate: \"2024-03-04T14:00:06.657\",\n AllowDelete: false,\n FifteenMinsPost: false,\n ContinueOnPush: true,\n Details: [\n {\n Points: -3,\n OddsFormatted: \"-110\",\n Description: \"Brooklyn Nets\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T18:40:00\",\n Outcome: \"Pending\",\n Rotation: \"502\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"Memphis Grizzlies (20-41) @ Brooklyn Nets (24-36)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Memphis Grizzlies\",\n Team1Logo: 56,\n Team1Mascot: \"Grizzlies\",\n Team2: \"Brooklyn Nets\",\n Team2Logo: 44,\n Team2Mascot: \"Nets\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: -7.5,\n OddsFormatted: \"-110\",\n Description: \"Minnesota Timberwolves\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T19:10:00\",\n Outcome: \"Pending\",\n Rotation: \"506\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"Portland Trail Blazers (17-42) @ Minnesota Timberwolves (42-19)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Portland Trail Blazers\",\n Team1Logo: 66,\n Team1Mascot: \"Blazers\",\n Team2: \"Minnesota Timberwolves\",\n Team2Logo: 59,\n Team2Mascot: \"T-Wolves\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 1.5,\n OddsFormatted: \"-110\",\n Description: \"Utah Jazz\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:10:00\",\n Outcome: \"Pending\",\n Rotation: \"508\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"Washington Wizards (9-51) @ Utah Jazz (27-34)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Washington Wizards\",\n Team1Logo: 71,\n Team1Mascot: \"Wizards\",\n Team2: \"Utah Jazz\",\n Team2Logo: 70,\n Team2Mascot: \"Jazz\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 212.5,\n OddsFormatted: \"-115\",\n Description: \"Memphis Grizzlies/Brooklyn Nets\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T18:40:00\",\n Outcome: \"Pending\",\n Rotation: \"501/502\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Memphis Grizzlies (20-41) @ Brooklyn Nets (24-36)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Memphis Grizzlies\",\n Team1Logo: 56,\n Team1Mascot: \"Grizzlies\",\n Team2: \"Brooklyn Nets\",\n Team2Logo: 44,\n Team2Mascot: \"Nets\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 217,\n OddsFormatted: \"-110\",\n Description: \"Portland Trail Blazers/Minnesota Timberwolves\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T19:10:00\",\n Outcome: \"Pending\",\n Rotation: \"505/506\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Portland Trail Blazers (17-42) @ Minnesota Timberwolves (42-19)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Portland Trail Blazers\",\n Team1Logo: 66,\n Team1Mascot: \"Blazers\",\n Team2: \"Minnesota Timberwolves\",\n Team2Logo: 59,\n Team2Mascot: \"T-Wolves\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 247,\n OddsFormatted: \"-115\",\n Description: \"Washington Wizards/Utah Jazz\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T20:10:00\",\n Outcome: \"Pending\",\n Rotation: \"507/508\",\n WagerType: \"L\",\n PointsOU: \"U\",\n Header: \"Washington Wizards (9-51) @ Utah Jazz (27-34)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NBA\",\n IdLeague: 3,\n LeagueTypeName: \"Game\",\n LeagueName: \"NBA\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Washington Wizards\",\n Team1Logo: 71,\n Team1Mascot: \"Wizards\",\n Team2: \"Utah Jazz\",\n Team2Logo: 70,\n Team2Mascot: \"Jazz\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 0,\n OddsFormatted: \"-105\",\n Description: \"Duke\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T18:00:00\",\n Outcome: \"Pending\",\n Rotation: \"881\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"#10 Duke (23-6) @ NC State (17-12) (ESPN)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"Duke\",\n Team1Logo: 240,\n Team1Mascot: \"\",\n Team2: \"NC State\",\n Team2Logo: 369,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n {\n Points: 2,\n OddsFormatted: \"-110\",\n Description: \"N Colorado\",\n AmountRisk: 0,\n AmountToWin: 0,\n EventdDate: \"2024-03-04T19:00:00\",\n Outcome: \"Pending\",\n Rotation: \"883\",\n WagerType: \"S\",\n PointsOU: \"\\u0000\",\n Header: \"N Colorado (18-12) @ N Arizona (14-17)\",\n SportType: \"Basketball\",\n SportSubTypeWeb: \"NCAA Basketball\",\n IdLeague: 4,\n LeagueTypeName: \"Game\",\n LeagueName: \"NCAA Basketball\",\n ContestDesc: \"\",\n RegulationNote: \"\",\n PeriodDescription: \"Game\",\n Pitcher1Required: false,\n Pitcher2Required: false,\n ListedPitcher1: \"\",\n ListedPitcher2: \"\",\n PitcherAdjust: 0,\n AdjustableOddsFlag: false,\n IsFreePlay: false,\n OutcomeCode: \"P\",\n WinnerId: \"\",\n Team1: \"N Colorado\",\n Team1Logo: 376,\n Team1Mascot: \"\",\n Team2: \"N Arizona\",\n Team2Logo: 375,\n Team2Mascot: \"\",\n Team1Score: 0,\n Team2Score: 0,\n PendingType: 0,\n },\n ],\n Outcome: \"Pending\",\n WagerNumber: 1,\n IsFreePlay: false,\n TicketType: \"INTERNET\",\n },\n ],\n },\n ],\n Page: 0,\n PageSize: 500,\n TotalItemCount: 0,\n};\n","import * as React from \"react\";\nimport {\n Box,\n TextField,\n Grid,\n Container,\n Button,\n FormControl,\n Select,\n MenuItem,\n Chip,\n Typography,\n FormGroup,\n FormControlLabel,\n Switch,\n ListItemText,\n ListItemSecondaryAction,\n List,\n ListItem,\n Accordion,\n AccordionSummary,\n OutlinedInput,\n AccordionDetails,\n} from \"@mui/material\";\nimport myBets from \"./mybets.js\";\n\nexport default function Betfolio(props) {\n React.useEffect(() => {\n props.selectBetfolio();\n }, [props.selectBetfolio]);\n const [email, setEmail] = React.useState(\"btb151\");\n const [password, setPassword] = React.useState(\"PATb\");\n const [isLoading, setIsLoading] = React.useState(false);\n const [bearer, setBearer] = React.useState(\"\");\n const [errorMessage, setErrorMessage] = React.useState(\"\");\n const [bettingWebsite, setBettingWebsite] = React.useState(\"steam22\");\n const [token, setToken] = React.useState(\"\");\n const [todaysGames, setTodaysGames] = React.useState([]);\n const [todaysNFLGames, setTodaysNFLGames] = React.useState([]);\n const [todaysNBAGames, setTodaysNBAGames] = React.useState([]);\n const [todaysNHLGames, setTodaysNHLGames] = React.useState([]);\n const [todaysXFLGames, setTodaysXFLGames] = React.useState([]);\n const [todaysNCAAFootballGames, setTodaysNCAAFootballGames] = React.useState([]);\n const [todaysNCAABasketballGames, setTodaysNCAABasketballGames] = React.useState([]);\n const [todaysNCAABaseballGames, setTodaysNCAABaseballGames] = React.useState([]);\n const [todaysSoccerGames, setTodaysSoccerGames] = React.useState([]);\n const [allTodaysBets, setAllTodaysBets] = React.useState([]);\n const allTodaysBetsRef = React.useRef(allTodaysBets);\n allTodaysBetsRef.current = allTodaysBets;\n\n const allGames = {\n nba: todaysNBAGames,\n nhl: todaysNHLGames,\n mlb: todaysGames,\n nfl: todaysNFLGames,\n xfl: todaysXFLGames,\n ncaafootball: todaysNCAAFootballGames,\n ncaabasketball: todaysNCAABasketballGames,\n ncaabaseball: todaysNCAABaseballGames,\n soccer: todaysSoccerGames,\n };\n async function getAllData() {\n try {\n // await fetch(`http://site.api.espn.com/apis/site/v2/sports/football/college-football/scoreboard?groups=81&limit=900`)\n // .then((response) => {\n // return response.json();\n // })\n // .then((data) => {\n // setTodaysNCAAFCSFootballGames(data.events);\n // })\n // .catch((error) => {\n // console.log(error);\n // });\n // await fetch(`http://site.api.espn.com/apis/site/v2/sports/football/college-football/scoreboard?groups=80&limit=900`)\n // .then((response) => {\n // return response.json();\n // })\n // .then((data) => {\n // setTodaysNCAAFootballGames(data.events);\n // })\n // .catch((error) => {\n // console.log(error);\n // });\n // await fetch(`https://site.api.espn.com/apis/site/v2/sports/football/xfl/scoreboard`)\n // .then((response) => {\n // return response.json();\n // })\n // .then((data) => {\n // setTodaysXFLGames(data.events);\n // })\n // .catch((error) => {\n // console.log(error);\n // });\n await fetch(`http://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/scoreboard?groups=50&limit=900`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setTodaysNCAABasketballGames(data.events);\n })\n .catch((error) => {\n console.log(error);\n });\n // await fetch(`https://site.api.espn.com/apis/site/v2/sports/baseball/college-baseball/scoreboard`)\n // .then((response) => {\n // return response.json();\n // })\n // .then((data) => {\n // setTodaysNCAABaseballGames(data.events);\n // })\n // .catch((error) => {\n // console.log(error);\n // });\n await fetch(`http://site.api.espn.com/apis/site/v2/sports/soccer/all/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setTodaysSoccerGames(data.events);\n })\n .catch((error) => {\n console.log(error);\n });\n await fetch(`http://site.api.espn.com/apis/site/v2/sports/hockey/nhl/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setTodaysNHLGames(data.events);\n })\n .catch((error) => {\n console.log(error);\n });\n await fetch(`http://site.api.espn.com/apis/site/v2/sports/baseball/mlb/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setTodaysGames(data.events);\n })\n .catch((error) => {\n console.log(error);\n });\n // await fetch(`http://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard`)\n // .then((response) => {\n // return response.json();\n // })\n // .then((data) => {\n // setTodaysNFLGames(data.events);\n // })\n // .catch((error) => {\n // console.log(error);\n // });\n await fetch(`http://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard`)\n .then((response) => {\n return response.json();\n })\n .then((data) => {\n setTodaysNBAGames(data.events);\n })\n .catch((error) => {\n console.log(error);\n });\n } catch (e) {\n console.log(\"catch errorrrrrrrr\");\n console.warn(\"e\", e);\n } finally {\n }\n }\n async function syncWithSportsWebsite(fetchedToken) {\n const bets = myBets.Items.map((item) => {\n let totalWin = 0;\n let totalRisk = 0;\n if (item.Wagers.length > 1) {\n item.Wagers.map((x) => {\n totalWin += x.TotalWin;\n totalRisk += x.TotalRisk;\n });\n }\n return {\n parlay: item.Description.includes(\"Parlay\") || item.Description.includes(\"Teaser\"),\n risk: totalRisk > 0 ? totalRisk.toFixed(2) : item.Wagers[0].TotalRisk,\n win: totalWin > 0 ? totalWin.toFixed(2) : item.Wagers[0].TotalWin,\n bets: item.Wagers[0].Details,\n };\n });\n if (bets.length > 0) {\n bets.forEach((bet) => {\n let webParlays = [];\n bet.bets.forEach((betGame) => {\n const leagueName = betGame.LeagueName ? betGame.LeagueName : betGame.SportSubTypeWeb;\n if (\n leagueName === \"WNBA\" ||\n leagueName === \"International Baseball\" ||\n leagueName === \"Tennis\" ||\n leagueName === \"Major Soccer\" ||\n leagueName === \"Contest Wager\" ||\n leagueName === \"Golf\" ||\n leagueName === \"Boxing\" ||\n betGame.SportType === \"Other Sports\" ||\n betGame.LeagueTypeName === \"Props\" ||\n betGame.Description === \"Heads\" ||\n betGame.Header === \"Super Bowl LVII - Coin toss to land Heads or Tails\"\n ) {\n return;\n }\n const league =\n betGame.LeagueName === \"NCAA Basketball\"\n ? 2\n : betGame.LeagueName === \"MLB\"\n ? 3\n : betGame.LeagueName === \"NBA\"\n ? 1\n : betGame.LeagueName === \"NHL\"\n ? 4\n : betGame.LeagueName === \"NFL\"\n ? 6\n : betGame.LeagueName === \"NCAA Football\"\n ? 7\n : leagueName === \"XFL Main\"\n ? 8\n : 5;\n const game = allGames[leagueName.toLowerCase().replace(\" \", \"\")].find((x) => {\n if (\n x.competitions[0].competitors[1].team.location === betGame.Team1 ||\n x.competitions[0].competitors[0].team.location === betGame.Team1 ||\n x.competitions[0].competitors[0].team.location === betGame.Team2 ||\n x.competitions[0].competitors[1].team.location === betGame.Team2\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"FAU\" || betGame.Team2 === \"FAU\") &&\n (x.competitions[0].competitors[1].team.location === \"Florida Atlantic\" ||\n x.competitions[0].competitors[0].team.location === \"Florida Atlantic\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Morehead St\" || betGame.Team2 === \"Morehead St\") &&\n (x.competitions[0].competitors[1].team.location === \"Morehead State\" ||\n x.competitions[0].competitors[0].team.location === \"Morehead State\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"St. Francis PA\" || betGame.Team2 === \"St. Francis PA\") &&\n (x.competitions[0].competitors[1].team.location === \"St. Francis (PA)\" ||\n x.competitions[0].competitors[0].team.location === \"St. Francis (PA)\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Montana St\" || betGame.Team2 === \"Montana St\") &&\n (x.competitions[0].competitors[1].team.location === \"Montana State\" ||\n x.competitions[0].competitors[0].team.location === \"Montana State\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Missouri St\" || betGame.Team2 === \"Missouri St\") &&\n (x.competitions[0].competitors[1].team.location === \"Missouri State\" ||\n x.competitions[0].competitors[0].team.location === \"Missouri State\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Colorado St\" || betGame.Team2 === \"Colorado St\") &&\n (x.competitions[0].competitors[1].team.location === \"Colorado State\" ||\n x.competitions[0].competitors[0].team.location === \"Colorado State\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Youngstown St\" || betGame.Team2 === \"Youngstown St\") &&\n (x.competitions[0].competitors[1].team.location === \"Youngstown State\" ||\n x.competitions[0].competitors[0].team.location === \"Youngstown State\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"Coastal Car\" || betGame.Team2 === \"Coastal Car\") &&\n (x.competitions[0].competitors[1].team.location === \"Coastal Carolina\" ||\n x.competitions[0].competitors[0].team.location === \"Coastal Carolina\")\n ) {\n return x;\n } else if (\n (betGame.Team1 === \"E Illinois\" || betGame.Team2 === \"E Illinois\") &&\n (x.competitions[0].competitors[1].team.location === \"Eastern Illinois\" ||\n x.competitions[0].competitors[0].team.location === \"Eastern Illinois\")\n ) {\n return x;\n }\n // } else if (\n // (betGame.Team1 === \"S Illinois\" || betGame.Team2 === \"S Illinois\") &&\n // (x.competitions[0].competitors[1].team.location === \"Southern Illinois\" ||\n // x.competitions[0].competitors[0].team.location === \"Southern Illinois\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"IPFW\" || betGame.Team2 === \"IPFW\") &&\n // (x.competitions[0].competitors[1].team.location === \"Purdue Fort Wayne\" ||\n // x.competitions[0].competitors[0].team.location === \"Purdue Fort Wayne\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"N Illinois\" || betGame.Team2 === \"N Illinois\") &&\n // (x.competitions[0].competitors[1].team.location === \"Northern Illinois\" ||\n // x.competitions[0].competitors[0].team.location === \"Northern Illinois\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Grambling St\" || betGame.Team2 === \"Grambling St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Grambling\" || x.competitions[0].competitors[0].team.location === \"Grambling\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"TX A&M-CC\" || betGame.Team2 === \"TX A&M-CC\") &&\n // (x.competitions[0].competitors[1].team.location === \"Texas A&M-Corpus Christi\" ||\n // x.competitions[0].competitors[0].team.location === \"Texas A&M-Corpus Christi\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Kent St\" || betGame.Team2 === \"Kent St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Kent State\" ||\n // x.competitions[0].competitors[0].team.location === \"Kent State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Saint Peters\" || betGame.Team2 === \"Saint Peters\") &&\n // (x.competitions[0].competitors[1].team.location === \"Saint Peter's\" ||\n // x.competitions[0].competitors[0].team.location === \"Saint Peter's\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Saint Josephs\" || betGame.Team2 === \"Saint Josephs\") &&\n // (x.competitions[0].competitors[1].team.location === \"Saint Josephs Long Island\" ||\n // x.competitions[0].competitors[0].team.location === \"Saint Josephs Long Island\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Connecticut\" || betGame.Team2 === \"Connecticut\") &&\n // (x.competitions[0].competitors[1].team.location === \"UConn\" || x.competitions[0].competitors[0].team.location === \"UConn\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"FIU\" || betGame.Team2 === \"FIU\") &&\n // (x.competitions[0].competitors[1].team.location === \"Florida International\" ||\n // x.competitions[0].competitors[0].team.location === \"Florida International\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Appalachian St\" || betGame.Team2 === \"Appalachian St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Appalachian State\" ||\n // x.competitions[0].competitors[0].team.location === \"Appalachian State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"E Kentucky\" || betGame.Team2 === \"E Kentucky\") &&\n // (x.competitions[0].competitors[1].team.location === \"Eastern Kentucky\" ||\n // x.competitions[0].competitors[0].team.location === \"Eastern Kentucky\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"W Kentucky\" || betGame.Team2 === \"W Kentucky\") &&\n // (x.competitions[0].competitors[1].team.location === \"Western Kentucky\" ||\n // x.competitions[0].competitors[0].team.location === \"Western Kentucky\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"N Kentucky\" || betGame.Team2 === \"N Kentucky\") &&\n // (x.competitions[0].competitors[1].team.location === \"Northern Kentucky\" ||\n // x.competitions[0].competitors[0].team.location === \"Northern Kentucky\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"North Dakota St\" || betGame.Team2 === \"North Dakota St\") &&\n // (x.competitions[0].competitors[1].team.location === \"North Dakota State\" ||\n // x.competitions[0].competitors[0].team.location === \"North Dakota State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Alabama St\" || betGame.Team2 === \"Alabama St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Alabama State\" ||\n // x.competitions[0].competitors[0].team.location === \"Alabama State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Ark-Pine Bluff\" || betGame.Team2 === \"Ark-Pine Bluff\") &&\n // (x.competitions[0].competitors[1].team.location === \"Arkansas-Pine Bluff\" ||\n // x.competitions[0].competitors[0].team.location === \"Arkansas-Pine Bluff\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"S Carolina St\" || betGame.Team2 === \"S Carolina St\") &&\n // (x.competitions[0].competitors[1].team.location === \"South Carolina State\" ||\n // x.competitions[0].competitors[0].team.location === \"South Carolina State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"S Dakota St\" || betGame.Team2 === \"S Dakota St\") &&\n // (x.competitions[0].competitors[1].team.location === \"South Dakota State\" ||\n // x.competitions[0].competitors[0].team.location === \"South Dakota State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Norfolk St\" || betGame.Team2 === \"Norfolk St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Norfolk State\" ||\n // x.competitions[0].competitors[0].team.location === \"Norfolk State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"North Carolina\" || betGame.Team2 === \"North Carolina\") &&\n // (x.competitions[0].competitors[1].team.location === \"North Carolina\" ||\n // x.competitions[0].competitors[0].team.location === \"North Carolina\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Coppin St\" || betGame.Team2 === \"Coppin St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Coppin State\" ||\n // x.competitions[0].competitors[0].team.location === \"Coppin State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Morgan St\" || betGame.Team2 === \"Morgan St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Morgan State\" ||\n // x.competitions[0].competitors[0].team.location === \"Morgan State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Alcorn St\" || betGame.Team2 === \"Alcorn St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Alcorn State\" ||\n // x.competitions[0].competitors[0].team.location === \"Alcorn State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Arkansas St\" || betGame.Team2 === \"Arkansas St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Arkansas State\" ||\n // x.competitions[0].competitors[0].team.location === \"Arkansas State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Chicago St\" || betGame.Team2 === \"Chicago St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Chicago State\" ||\n // x.competitions[0].competitors[0].team.location === \"Chicago State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Fair Dickinson\" || betGame.Team2 === \"Fair Dickinson\") &&\n // (x.competitions[0].competitors[1].team.location === \"Fairleigh Dickinson\" ||\n // x.competitions[0].competitors[0].team.location === \"Fairleigh Dickinson\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Kansas St\" || betGame.Team2 === \"Kansas St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Kansas State\" ||\n // x.competitions[0].competitors[0].team.location === \"Kansas State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Nicholls St\" || betGame.Team2 === \"Nicholls St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Nicholls State\" ||\n // x.competitions[0].competitors[0].team.location === \"Nicholls State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"East Washington\" || betGame.Team2 === \"East Washington\") &&\n // (x.competitions[0].competitors[1].team.location === \"Eastern Washington\" ||\n // x.competitions[0].competitors[0].team.location === \"Eastern Washington\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Weber St\" || betGame.Team2 === \"Weber St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Weber State\" ||\n // x.competitions[0].competitors[0].team.location === \"Weber State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Idaho St\" || betGame.Team2 === \"Idaho St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Idaho State\" ||\n // x.competitions[0].competitors[0].team.location === \"Idaho State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Utah St\" || betGame.Team2 === \"Utah St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Utah State\" ||\n // x.competitions[0].competitors[0].team.location === \"Utah State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"UMES\" || betGame.Team2 === \"UMES\") &&\n // (x.competitions[0].competitors[1].team.location === \"Maryland-Eastern Shore\" ||\n // x.competitions[0].competitors[0].team.location === \"Maryland-Eastern Shore\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Sam Houston St\" || betGame.Team2 === \"Sam Houston St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Sam Houston\" ||\n // x.competitions[0].competitors[0].team.location === \"Sam Houston\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Ball St\" || betGame.Team2 === \"Ball St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Ball State\" ||\n // x.competitions[0].competitors[0].team.location === \"Ball State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"St. Johns\" || betGame.Team2 === \"St. Johns\") &&\n // (x.competitions[0].competitors[1].team.location === \"St. John's\" ||\n // x.competitions[0].competitors[0].team.location === \"St. John's\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"TX San Antonio\" || betGame.Team2 === \"TX San Antonio\") &&\n // (x.competitions[0].competitors[1].team.location === \"UTSA\" || x.competitions[0].competitors[0].team.location === \"UTSA\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Oklahoma St\" || betGame.Team2 === \"Oklahoma St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Oklahoma State\" ||\n // x.competitions[0].competitors[0].team.location === \"Oklahoma State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Indiana St\" || betGame.Team2 === \"Indiana St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Indiana State\" ||\n // x.competitions[0].competitors[0].team.location === \"Indiana State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Wichita St\" || betGame.Team2 === \"Wichita St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Wichita State\" ||\n // x.competitions[0].competitors[0].team.location === \"Wichita State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"San Jose St\" || betGame.Team2 === \"San Jose St\") &&\n // (x.competitions[0].competitors[1].team.location === \"San José State\" ||\n // x.competitions[0].competitors[0].team.location === \"San José State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"McNeese St\" || betGame.Team2 === \"McNeese St\") &&\n // (x.competitions[0].competitors[1].team.location === \"McNeese\" || x.competitions[0].competitors[0].team.location === \"McNeese\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Tarleton St\" || betGame.Team2 === \"Tarleton St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Tarleton State\" ||\n // x.competitions[0].competitors[0].team.location === \"Tarleton State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"N-Western St\" || betGame.Team2 === \"N-Western St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Northwestern State\" ||\n // x.competitions[0].competitors[0].team.location === \"Northwestern State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Ohio St\" || betGame.Team2 === \"Ohio St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Ohio State\" ||\n // x.competitions[0].competitors[0].team.location === \"Ohio State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"San Diego St\" || betGame.Team2 === \"San Diego St\") &&\n // (x.competitions[0].competitors[1].team.location === \"San Diego State\" ||\n // x.competitions[0].competitors[0].team.location === \"San Diego State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"E Michigan\" || betGame.Team2 === \"E Michigan\") &&\n // (x.competitions[0].competitors[1].team.location === \"Eastern Michigan\" ||\n // x.competitions[0].competitors[0].team.location === \"Eastern Michigan\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"W Michigan\" || betGame.Team2 === \"W Michigan\") &&\n // (x.competitions[0].competitors[1].team.location === \"Western Michigan\" ||\n // x.competitions[0].competitors[0].team.location === \"Western Michigan\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Cleveland St\" || betGame.Team2 === \"Cleveland St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Cleveland State\" ||\n // x.competitions[0].competitors[0].team.location === \"Cleveland State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Sacramento St\" || betGame.Team2 === \"Sacramento St\") &&\n // (x.competitions[0].competitors[1].team.location === \"Sacramento State\" ||\n // x.competitions[0].competitors[0].team.location === \"Sacramento State\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"N-Eastern\" || betGame.Team2 === \"N-Eastern\") &&\n // (x.competitions[0].competitors[1].team.location === \"Northeastern\" ||\n // x.competitions[0].competitors[0].team.location === \"Northeastern\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Hawaii\" || betGame.Team2 === \"Hawaii\") &&\n // (x.competitions[0].competitors[1].team.location === \"Hawai'i\" || x.competitions[0].competitors[0].team.location === \"Hawai'i\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Mississippi\" || betGame.Team2 === \"Mississippi\") &&\n // (x.competitions[0].competitors[1].team.location === \"Ole Miss\" || x.competitions[0].competitors[0].team.location === \"Ole Miss\")\n // ) {\n // return x;\n // } else if (\n // (betGame.Team1 === \"Miami Florida\" || betGame.Team2 === \"Miami Florida\") &&\n // (x.competitions[0].competitors[1].team.location === \"Miami\" || x.competitions[0].competitors[0].team.location === \"Miami\")\n // ) {\n // return x;\n else if (\n (leagueName === \"NFL\" || leagueName === \"NBA\" || leagueName === \"MLB\" || leagueName === \"XFL Main\" || leagueName === \"NHL\") &&\n (x.name.includes(betGame.Team1) || x.name.includes(betGame.Team2))\n ) {\n return x;\n } else if (\n (leagueName === \"NCAA Basketball\" || leagueName === \"NCAA Football\") &&\n (x.competitions[0].competitors[1].team.location === betGame.Team1 || x.competitions[0].competitors[1].team.location === betGame.Team2)\n ) {\n return x;\n }\n // else if (\n // leagueName === \"MLB\" &&\n // betGame.Team1.includes(\"GM #1\") &&\n // (x.name.includes(betGame.Team1.split(\"GM #\")[0]) || x.name.includes(betGame.Team2.split(\"GM #\")[0])) &&\n // x.competitions[0].notes.length > 0 &&\n // x.competitions[0].notes[0].headline?.includes(\"Game 1\")\n // ) {\n // return x;\n // } else if (\n // leagueName === \"MLB\" &&\n // betGame.Team1.includes(\"GM #2\") &&\n // (x.name.includes(betGame.Team1.split(\"GM #\")[0]) || x.name.includes(betGame.Team2.split(\"GM #\")[0])) &&\n // x.competitions[0].notes.length > 0 &&\n // x.competitions[0].notes[0].headline?.includes(\"Game 2\")\n // ) {\n // return x;\n // } else {\n // return null;\n // }\n });\n // if (game === undefined) console.log(\"was undefined\", bet.bets[0].Team1);\n // if (game === undefined) console.log(\"was undefined\", bet.bets[0].Team2);\n if (game === undefined) {\n return;\n }\n const wagerType = betGame.WagerType;\n const winner =\n wagerType !== \"L\" &&\n (betGame.Description.includes(\n betGame.Description.includes(\"#\") ? game.competitions[0].competitors[1].team.name : game.competitions[0].competitors[1].team.location\n ) ||\n betGame.Description === \"IPFW\" ||\n betGame.Description === \"UNC Central\" ||\n betGame.Description === \"UMES\" ||\n betGame.Description === \"George Washington\" ||\n betGame.Description === \"Valparaiso\" ||\n betGame.Description === \"Wichita St\" ||\n betGame.Description === \"Missouri St\" ||\n betGame.Description === \"Kansas St\" ||\n betGame.Description === \"E Tenn St\" ||\n betGame.Description === \"S Dakota St\" ||\n betGame.Description === \"W Carolina\" ||\n betGame.Description === \"W Kentucky\" ||\n betGame.Description === \"N Kentucky\" ||\n betGame.Description === \"N Colorado\" ||\n betGame.Description === \"Sacramento St\" ||\n betGame.Description === \"San Diego St\" ||\n betGame.Description === \"McNeese St\" ||\n betGame.Description === \"Utah St\" ||\n betGame.Description === \"Murray St\" ||\n betGame.Description === \"San Jose St\" ||\n betGame.Description === \"Texas St\" ||\n betGame.Description === \"Louisiana Tech\" ||\n betGame.Description === \"Cleveland St\" ||\n betGame.Description === \"Alcorn St\" ||\n betGame.Description === \"Tarleton St\" ||\n betGame.Description === \"Ohio St\" ||\n betGame.Description === \"Alabama St\" ||\n betGame.Description === \"Coastal Car\" ||\n betGame.Description === \"Illinois St\" ||\n betGame.Description === \"Florida St\" ||\n betGame.Description === \"Arkansas St\" ||\n betGame.Description === \"S Carolina St\" ||\n betGame.Description === \"S Illinois\" ||\n betGame.Description === \"Northeastern\" ||\n betGame.Description === \"St Bonaventure\" ||\n betGame.Description === \"Coppin St\" ||\n betGame.Description === \"Middle Tenn\" ||\n betGame.Description === \"Washington St\")\n ? game.competitions[0].competitors[1].team.abbreviation.replace(\"-\", \"\")\n : game.competitions[0].competitors[0].team.abbreviation.replace(\"-\", \"\");\n const spread = wagerType === \"S\" && betGame.Points;\n const spreadType = wagerType === \"S\" && betGame.Points > 0 ? \"plus\" : \"minus\";\n const overUnder = wagerType === \"L\" && betGame.Points;\n const overUnderType = wagerType === \"L\" ? (betGame.PointsOU === \"O\" ? \"Over\" : \"Under\") : false;\n const overUnderTeams =\n wagerType === \"L\" &&\n `${game.competitions[0].competitors[1].team.abbreviation.replace(\n \"-\",\n \"\"\n )}/${game.competitions[0].competitors[0].team.abbreviation.replace(\"-\", \"\")}`;\n if (wagerType === \"M\") {\n webParlays.push(\n `game-${game.id}-${winner}-${\n league === 2\n ? \"ncaab\"\n : league === 3\n ? \"mlb\"\n : league === 1\n ? \"nba\"\n : league === 4\n ? \"nhl\"\n : league === 6\n ? \"nfl\"\n : league === 7\n ? \"ncaaf\"\n : league === 8\n ? \"xfl\"\n : \"ncaabaseball\"\n }`\n );\n } else {\n const gameStr = `game-${game.id}-${wagerType === \"L\" ? \"null\" : winner}-${\n league === 2\n ? \"ncaab\"\n : league === 3\n ? \"mlb\"\n : league === 1\n ? \"nba\"\n : league === 4\n ? \"nhl\"\n : league === 6\n ? \"nfl\"\n : league === 7\n ? \"ncaaf\"\n : league === 8\n ? \"xfl\"\n : \"ncaabaseball\"\n }-${spread < 0 ? spread.toString().split(\"-\")[1] : spread}-${spreadType}-${overUnder}-${overUnderType}-${overUnderTeams}`;\n webParlays.push(gameStr);\n }\n });\n if (bet.parlay) {\n // const parlays = allTodaysBets.push(webParlays);\n setAllTodaysBets((prevValue) => {\n return [...prevValue, webParlays];\n });\n } else {\n }\n });\n }\n }\n\n const websiteLogin = async () => {\n setIsLoading(true);\n await fetch(`https://sheline-art-website-api.herokuapp.com/patrick/steam-login/${email}/${password}/${bettingWebsite}`)\n .then((response) => {\n console.log(\"🚀 ~ .then ~ response:\", response);\n return response.json();\n })\n .then((data) => {\n if (data.tokenData.accessToken) {\n console.log(\"🚀 ~ .then ~ data.tokenData.accessToken:\", data.tokenData.accessToken);\n setBearer(\"Bearer \" + data.tokenData.accessToken);\n syncWithSportsWebsite(\"Bearer \" + data.tokenData.accessToken);\n } else {\n setErrorMessage(data.tokenData.error);\n setIsLoading(false);\n }\n });\n };\n React.useEffect(() => {\n getAllData();\n }, []);\n React.useEffect(() => {}, [allTodaysBetsRef]);\n\n return (\n \n
\n \n setEmail(e.target.value)} style={{ width: 200 }} label=\"Username\" />\n setPassword(e.target.value)} style={{ width: 200 }} label=\"Username\" />\n \n websiteLogin()}>\n Sync\n \n \n
\n {console.log(allTodaysBetsRef)}\n {allTodaysBetsRef.current.length > 0 &&\n allTodaysBetsRef.current.map((parlay, index) => {\n console.log(\"🚀 ~ allTodaysBetsRef.current.map ~ parlay:\", parlay);\n return (\n
\n {parlay.map((game, idx) => {\n console.log(\"🚀 ~ {parlay.map ~ game:\", game);\n return
{game}
;\n })}\n
\n );\n })}\n
\n
\n );\n}\n","import React, { useEffect } from \"react\";\nimport ImageGallery from \"react-image-gallery\";\nimport \"react-image-gallery/styles/css/image-gallery.css\";\n\nfunction Home(props) {\n const { selectThomasFirstBirthday } = props;\n\n const images = Array.from({ length: 27 }, (_, i) => ({\n original: `${process.env.PUBLIC_URL}/images/thomas/${i + 1} Medium.png`,\n }));\n\n const shuffledImages = [...images].sort(() => 0.5 - Math.random());\n\n useEffect(() => {\n selectThomasFirstBirthday();\n }, [selectThomasFirstBirthday]);\n\n return (\n \n
\n \n
\n
\n
Thomas' First Birthday
\n
April 12th at 12 PM
\n
\n Add event to calendar\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
725 Sue Barnett Drive
\n
Houston, Texas
\n\n
\n \n \n
\n
\n
\n
\n Menu\n
\n
\n Sandwiches\n
\n
Pimento Cheese
\n
Egg Salad
\n
Pulled Pork
\n
\n Snacks\n
\n
Chips
\n
Peanuts
\n
Cookies
\n
Georgia Pecan Caramel Popcorn
\n
Mini Moon Pies
\n
\n Beverages\n
\n
Azalea
\n
Signature Masters Drink
\n
Arnold Palmer
\n
Sweet Tea & Lemonade
\n
John Daly
\n
Sweet Tea, Lemonade & Vodka
\n
Transfusion
\n
Vodka, Ginger Ale & Grape Juice
\n
Miller Lite
\n
Great Taste, Less Filling
\n
Wine
\n
Red, White & Chardonnay
\n
\n
\n );\n}\n\nexport default Home;\n","import React, { useState } from \"react\";\nimport { Box, TextField, Select, MenuItem, Typography, Button, InputLabel } from \"@mui/material\";\nimport { LocalizationProvider } from \"@mui/x-date-pickers\";\nimport { AdapterDateFns } from \"@mui/x-date-pickers/AdapterDateFnsV3\";\nimport { DatePicker } from \"@mui/x-date-pickers/DatePicker\";\nimport { TimePicker } from \"@mui/x-date-pickers/TimePicker\";\nimport { format, addDays } from \"date-fns\";\n\nfunction InputForm() {\n const [phoneNumber, setPhoneNumber] = useState(\"\");\n const [startTime, setStartTime] = useState(\"\");\n const [endTime, setEndTime] = useState(\"\");\n const [numPlayers, setNumPlayers] = useState(\"\");\n const [name, setName] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [date, setDate] = useState(addDays(new Date(), 1));\n const [message, setMessage] = useState(\"\");\n const [course, setCourse] = useState(\"memorial\");\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n try {\n const data = {\n phoneNumber,\n startTime: format(startTime, \"HH:mm\"),\n endTime: format(endTime, \"HH:mm\"),\n numPlayers,\n name,\n email,\n date: format(date, \"MM-dd-yyyy\"),\n course,\n };\n const response = await fetch(\"https://sheline-art-website-api.herokuapp.com/golf/start\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(data),\n });\n\n if (!response.ok) {\n throw new Error(`Error: ${response.statusText}`);\n }\n if (response.ok) {\n setMessage(\"Success! Your tee time has been scheduled.\");\n }\n } catch (error) {\n setMessage(error.message);\n }\n };\n\n return (\n \n \n
\n Tee Time Tracker\n \n
Course \n
setCourse(e.target.value)}>\n Memorial \n Gus Wortham \n \n
setName(e.target.value)}\n />\n setEmail(e.target.value)}\n />\n setPhoneNumber(e.target.value)}\n />\n \n setDate(value)}\n label=\"Date\"\n />\n setStartTime(value)}\n label=\"Start Time\"\n />\n setEndTime(value)}\n label=\"End Time\"\n />\n \n Num. of Players \n setNumPlayers(e.target.value)}>\n 1 \n 2 \n 3 \n 4 \n \n \n Start\n \n \n By pressing 'Start', I consent to provide my name, email address, and phone number to\n Mancave Displays and receive a one-time message. I understand that my information will be\n used solely for this purpose and will be deleted immediately after the message is sent.\n
\n {message}
\n \n \n );\n}\n\nexport default InputForm;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\nimport format from \"date-fns/format\";\nimport classNames from \"classnames\";\nimport { Typography, Card, Box } from \"@mui/material\";\n\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = (theme) => ({\n img: {\n width: \"100%\",\n height: \"auto\",\n marginBottom: 8,\n },\n card: {\n boxShadow: theme.shadows[2],\n },\n noDecoration: {\n textDecoration: \"none !important\",\n },\n title: {\n transition: theme.transitions.create([\"background-color\"], {\n duration: theme.transitions.duration.complex,\n easing: theme.transitions.easing.easeInOut,\n }),\n cursor: \"pointer\",\n color: theme.palette.secondary.main,\n \"&:hover\": {\n color: theme.palette.secondary.dark,\n },\n \"&:active\": {\n color: theme.palette.primary.dark,\n },\n },\n link: {\n transition: theme.transitions.create([\"background-color\"], {\n duration: theme.transitions.duration.complex,\n easing: theme.transitions.easing.easeInOut,\n }),\n cursor: \"pointer\",\n color: theme.palette.primary.main,\n \"&:hover\": {\n color: theme.palette.primary.dark,\n },\n },\n showFocus: {\n \"&:focus span\": {\n color: theme.palette.secondary.dark,\n },\n },\n});\n\nfunction BlogCard(props) {\n const { classes, url, src, date, title, snippet } = props;\n\n return (\n \n {src && (\n \n \n \n )}\n \n \n {format(new Date(date * 1000), \"PPP\", {\n awareOfUnicodeTokens: true,\n })}\n \n \n \n {title} \n \n \n \n {snippet}\n \n read more... \n \n \n \n \n );\n}\n\nBlogCard.propTypes = {\n classes: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n date: PropTypes.number.isRequired,\n snippet: PropTypes.string.isRequired,\n src: PropTypes.string,\n};\n\nexport default withStyles(styles, { withTheme: true })(BlogCard);\n","import React, { useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport { Grid, Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport BlogCard from \"./BlogCard\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\nconst styles = (theme) => ({\n blogContentWrapper: {\n marginLeft: theme.spacing(1),\n marginRight: theme.spacing(1),\n [theme.breakpoints.up(\"sm\")]: {\n marginLeft: theme.spacing(4),\n marginRight: theme.spacing(4),\n },\n maxWidth: 1280,\n width: \"100%\",\n },\n wrapper: {\n minHeight: \"60vh\",\n },\n noDecoration: {\n textDecoration: \"none !important\",\n },\n});\n\nfunction getVerticalBlogPosts(isWidthUpSm, isWidthUpMd, blogPosts) {\n const gridRows = [[], [], []];\n let rows;\n let xs;\n if (isWidthUpMd) {\n rows = 3;\n xs = 4;\n } else if (isWidthUpSm) {\n rows = 2;\n xs = 6;\n } else {\n rows = 1;\n xs = 12;\n }\n blogPosts.forEach((blogPost, index) => {\n gridRows[index % rows].push(\n \n \n \n \n \n );\n });\n return gridRows.map((element, index) => (\n \n {element}\n \n ));\n}\n\nfunction Blog(props) {\n const { classes, blogPosts, selectBlog, theme } = props;\n\n const isWidthUpSm = useMediaQuery(theme.breakpoints.up(\"sm\"));\n const isWidthUpMd = useMediaQuery(theme.breakpoints.up(\"md\"));\n\n useEffect(() => {\n selectBlog();\n }, [selectBlog]);\n\n return (\n \n \n \n {getVerticalBlogPosts(isWidthUpSm, isWidthUpMd, blogPosts)}\n \n
\n \n );\n}\n\nBlog.propTypes = {\n selectBlog: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n blogPosts: PropTypes.arrayOf(PropTypes.object),\n};\n\nexport default withStyles(styles, { withTheme: true })(Blog);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { SvgIcon } from \"@mui/material\";\nimport ColoredButton from \"./ColoredButton\";\n\n/**\n * Losely based on: https://sharingbuttons.io/\n */\nfunction ShareButton(props) {\n let { type, title, description, ...rest } = props;\n const site = window.location.href;\n title = encodeURIComponent(title);\n description = encodeURIComponent(description);\n switch (type) {\n case \"Facebook\":\n return (\n \n \n \n }\n {...rest}\n >\n Share on Facebook\n \n );\n case \"Twitter\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Twitter\n \n );\n }\n case \"Tumblr\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Tumblr\n \n );\n }\n case \"E-Mail\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share by E-Mail\n \n );\n }\n case \"Pinterest\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Pinterest\n \n );\n }\n case \"LinkedIn\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on LinkedIn\n \n );\n }\n case \"Reddit\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Reddit\n \n );\n }\n case \"XING\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on XING\n \n );\n }\n case \"WhatsApp\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on WhatsApp\n \n );\n }\n case \"Hacker News\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Hacker News\n \n );\n }\n case \"VK\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on VK\n \n );\n }\n case \"Telegram\": {\n return (\n \n \n \n }\n {...rest}\n >\n Share on Telegram\n \n );\n }\n default: {\n throw new Error(\n `No branch taken in switch-statement: ${type} is not a valid type.`\n );\n }\n }\n}\n\nShareButton.propTypes = {\n type: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired\n};\n\nexport default ShareButton;\n","import React, { useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport format from \"date-fns/format\";\nimport { Grid, Typography, Card, Box } from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport BlogCard from \"./BlogCard\";\nimport ShareButton from \"../../../shared/components/ShareButton\";\nimport ZoomImage from \"../../../shared/components/ZoomImage\";\nimport smoothScrollTop from \"../../../shared/functions/smoothScrollTop\";\n\nconst styles = (theme) => ({\n blogContentWrapper: {\n marginLeft: theme.spacing(1),\n marginRight: theme.spacing(1),\n [theme.breakpoints.up(\"sm\")]: {\n marginLeft: theme.spacing(4),\n marginRight: theme.spacing(4),\n },\n maxWidth: 1280,\n width: \"100%\",\n },\n wrapper: {\n minHeight: \"60vh\",\n },\n img: {\n width: \"100%\",\n height: \"auto\",\n },\n card: {\n boxShadow: theme.shadows[4],\n },\n});\n\nfunction BlogPost(props) {\n const { classes, date, title, src, content, otherArticles } = props;\n\n useEffect(() => {\n document.title = `Mancave Displays`;\n smoothScrollTop();\n }, [title]);\n\n return (\n \n \n \n \n \n \n \n {title} \n \n \n {format(new Date(date * 1000), \"PPP\", {\n awareOfUnicodeTokens: true,\n })}\n \n \n \n \n {content}\n \n \n {[\"Facebook\", \"Twitter\", \"Reddit\", \"Tumblr\"].map((type, index) => (\n \n \n \n ))}\n \n \n \n \n \n \n \n Other articles\n \n {otherArticles.map((blogPost) => (\n \n \n \n ))}\n \n \n
\n \n );\n}\n\nBlogPost.propTypes = {\n classes: PropTypes.object.isRequired,\n title: PropTypes.string.isRequired,\n date: PropTypes.number.isRequired,\n src: PropTypes.string.isRequired,\n content: PropTypes.node.isRequired,\n otherArticles: PropTypes.arrayOf(PropTypes.object).isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(BlogPost);\n","import React, { memo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Switch } from \"react-router-dom\";\nimport PropsRoute from \"../../shared/components/PropsRoute\";\nimport Home from \"./home/Home\";\nimport TickerSettings from \"./tickerSettings/TickerSettings\";\nimport WiFiInstructions from \"./tickerSettings/WiFi\";\nimport WiFiInstructionsOnboarding from \"./tickerSettings/WiFiOnboarding\";\nimport GifDisplay from \"./gifDisplay/GifDisplay\";\nimport GameScreen from \"./gameScreen\";\nimport TeslaDashboard from \"./TeslaDashboard\";\nimport OddsScreen from \"./oddsScreen/OddsScreen\";\nimport Tracking from \"./oddsScreen/Tracking\";\nimport OddsScreenStore from \"./oddsScreen/OddsScreenStore\";\nimport TDMPFFL from \"./TDMPFFL\";\nimport Candlelighters from \"./Candlelighters\";\nimport CandlelightersAdmin from \"./Candlelighters/Admin\";\nimport Betfolio from \"./Betfolio\";\nimport ThomasFirstBirthday from \"./ThomasFirstBirthday\";\nimport GolfTeeTimeFinder from \"./GolfTeeTimeFinder\";\nimport Blog from \"./blog/Blog\";\nimport BlogPost from \"./blog/BlogPost\";\nimport useLocationBlocker from \"../../shared/functions/useLocationBlocker\";\n\nfunction Routing(props) {\n const {\n selectTDMPFFL,\n blogPosts,\n selectBlog,\n selectHome,\n selectGifDisplay,\n pushMessageToSnackbar,\n selectWifiInstructions,\n selectTracking,\n selectOddsDisplay,\n selectGamesScreen,\n selectBetfolio,\n selectCandlelighters,\n selectCandlelightersAdmin,\n selectThomasFirstBirthday,\n selectGolfTeeTimeFinder,\n selectWifiInstructionsOnboarding,\n selectTeslaDashboard,\n } = props;\n useLocationBlocker();\n return (\n \n {blogPosts.map((post) => (\n blogPost.id !== post.id)}\n />\n ))}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nRouting.propTypes = {\n blogposts: PropTypes.arrayOf(PropTypes.object),\n selectHome: PropTypes.func.isRequired,\n selectBlog: PropTypes.func.isRequired,\n};\n\nexport default memo(Routing);\n","import React, { memo, useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport AOS from \"aos/dist/aos\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport NavBar from \"./navigation/NavBar\";\nimport Footer from \"./footer/Footer\";\nimport \"aos/dist/aos.css\";\nimport CookieRulesDialog from \"./cookies/CookieRulesDialog\";\nimport CookieConsent from \"./cookies/CookieConsent\";\nimport dummyBlogPosts from \"../dummy_data/blogPosts\";\nimport DialogSelector from \"./register_login/DialogSelector\";\nimport Routing from \"./Routing\";\nimport smoothScrollTop from \"../../shared/functions/smoothScrollTop\";\nimport ConsecutiveSnackbarMessages from \"../../shared/components/ConsecutiveSnackbarMessages\";\n\nAOS.init({ once: true });\n\nconst styles = (theme) => ({\n wrapper: {\n backgroundColor: theme.palette.common.white,\n overflowX: \"hidden\",\n },\n});\n\nfunction Main(props) {\n const { classes } = props;\n const [selectedTab, setSelectedTab] = useState(\"Home\");\n const [isMobileDrawerOpen, setIsMobileDrawerOpen] = useState(false);\n const [blogPosts, setBlogPosts] = useState([]);\n const [dialogOpen, setDialogOpen] = useState(null);\n const [isCookieRulesDialogOpen, setIsCookieRulesDialogOpen] = useState(false);\n const [pushMessageToSnackbar, setPushMessageToSnackbar] = useState(null);\n\n const selectHome = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Home\");\n }, [setSelectedTab]);\n\n const selectWifiInstructions = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Wifi Instructions\");\n }, [setSelectedTab]);\n const selectThomasFirstBirthday = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Thomas First Birthday\");\n }, [setSelectedTab]);\n\n const selectTeslaDashboard = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Tesla Dashboard\");\n }, [setSelectedTab]);\n\n const selectWifiInstructionsOnboarding = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Wifi Instructions\");\n }, [setSelectedTab]);\n\n const selectGifDisplay = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Gif Display\");\n }, [setSelectedTab]);\n const selectGamesScreen = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Game Screen\");\n }, [setSelectedTab]);\n\n const selectBetfolio = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Betfolio\");\n }, [setSelectedTab]);\n const selectGolfTeeTimeFinder = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"GolfTeeTimeFinder\");\n }, [setSelectedTab]);\n\n const selectTDMPFFL = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"TDMPFFL\");\n }, [setSelectedTab]);\n\n const selectCandlelightersAdmin = useCallback(() => {\n smoothScrollTop();\n document.title = \"Candlelighters Admin\";\n setSelectedTab(\"CandlelightersAdmin\");\n }, [setSelectedTab]);\n\n const selectCandlelighters = useCallback(() => {\n smoothScrollTop();\n document.title = \"Canldelighters\";\n setSelectedTab(\"Candlelighters\");\n }, [setSelectedTab]);\n\n const selectTracking = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Tracking\");\n }, [setSelectedTab]);\n\n const selectOddsDisplay = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Odds Display\");\n }, [setSelectedTab]);\n\n const selectBlog = useCallback(() => {\n smoothScrollTop();\n document.title = \"Mancave Displays\";\n setSelectedTab(\"Blog\");\n }, [setSelectedTab]);\n\n const openLoginDialog = useCallback(() => {\n setDialogOpen(\"login\");\n setIsMobileDrawerOpen(false);\n }, [setDialogOpen, setIsMobileDrawerOpen]);\n\n const closeDialog = useCallback(() => {\n setDialogOpen(null);\n }, [setDialogOpen]);\n\n const openRegisterDialog = useCallback(() => {\n setDialogOpen(\"register\");\n setIsMobileDrawerOpen(false);\n }, [setDialogOpen, setIsMobileDrawerOpen]);\n\n const openTermsDialog = useCallback(() => {\n setDialogOpen(\"termsOfService\");\n }, [setDialogOpen]);\n\n const handleMobileDrawerOpen = useCallback(() => {\n setIsMobileDrawerOpen(true);\n }, [setIsMobileDrawerOpen]);\n\n const handleMobileDrawerClose = useCallback(() => {\n setIsMobileDrawerOpen(false);\n }, [setIsMobileDrawerOpen]);\n\n const openChangePasswordDialog = useCallback(() => {\n setDialogOpen(\"changePassword\");\n }, [setDialogOpen]);\n\n const fetchBlogPosts = useCallback(() => {\n const blogPosts = dummyBlogPosts.map((blogPost) => {\n let title = blogPost.title;\n title = title.toLowerCase();\n title = title.replace(/[^A-Za-z0-9 ]/g, \"\");\n title = title.replace(/\\s{2,}/g, \" \");\n title = title.replace(/\\s/g, \"-\");\n blogPost.url = `/blog/post/${title}`;\n blogPost.params = `?id=${blogPost.id}`;\n return blogPost;\n });\n setBlogPosts(blogPosts);\n }, [setBlogPosts]);\n\n const handleCookieRulesDialogOpen = useCallback(() => {\n setIsCookieRulesDialogOpen(true);\n }, [setIsCookieRulesDialogOpen]);\n\n const handleCookieRulesDialogClose = useCallback(() => {\n setIsCookieRulesDialogOpen(false);\n }, [setIsCookieRulesDialogOpen]);\n\n useEffect(fetchBlogPosts, [fetchBlogPosts]);\n\n const getPushMessageFromChild = useCallback(\n (pushMessage) => {\n setPushMessageToSnackbar(() => pushMessage);\n },\n [setPushMessageToSnackbar]\n );\n\n return (\n \n {!isCookieRulesDialogOpen && (\n \n )}\n \n \n \n {!selectedTab.includes(\"TDMPFFL\") &&\n !selectedTab.includes(\"Candlelighters\") &&\n !selectedTab.includes(\"Thomas First Birthday\") &&\n !selectedTab.includes(\"Tesla Dashboard\") &&\n !selectedTab.includes(\"Gif\") &&\n !selectedTab.includes(\"Game\") &&\n !selectedTab.includes(\"Odds\") &&\n !selectedTab.includes(\"Tracking\") && (\n \n )}\n \n {!selectedTab.includes(\"TDMPFFL\") &&\n !selectedTab.includes(\"Betfolio\") &&\n !selectedTab.includes(\"CandlelightersAdmin\") &&\n !selectedTab.includes(\"Tesla Dashboard\") &&\n !selectedTab.includes(\"Thomas First Birthday\") &&\n !selectedTab.includes(\"Candlelighters\") &&\n !selectedTab.includes(\"Gif\") &&\n !selectedTab.includes(\"Game\") &&\n !selectedTab.includes(\"Odds\") &&\n !selectedTab.includes(\"Tracking\") && (\n \n )}\n
\n );\n}\n\nMain.propTypes = {\n classes: PropTypes.object.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(memo(Main));\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = theme => ({\n wrapper: {\n border: `${theme.border.borderWidth}px solid ${theme.border.borderColor}`\n },\n greyed: {\n border: `${theme.border.borderWidth}px solid rgba(0, 0, 0, 0.23)`\n }\n});\n\nfunction Bordered(props) {\n const {\n classes,\n theme,\n disableVerticalPadding,\n disableBorderRadius,\n children,\n variant\n } = props;\n return (\n \n {children}\n
\n );\n}\n\nBordered.propTypes = {\n classes: PropTypes.object,\n theme: PropTypes.object,\n disableVerticalPadding: PropTypes.bool,\n disableBorderRadius: PropTypes.bool,\n children: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n PropTypes.array\n ]),\n variant: PropTypes.string\n};\n\nexport default withStyles(styles, { withTheme: true })(Bordered);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { CircularProgress, Box } from \"@mui/material\";\n\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = theme => ({\n circularProgress: {\n color: theme.palette.secondary.main\n }\n});\n\nfunction ButtonCircularProgress(props) {\n const { size, classes } = props;\n return (\n \n \n \n );\n}\n\nButtonCircularProgress.propTypes = {\n size: PropTypes.number,\n classes: PropTypes.object.isRequired\n};\n\nexport default withStyles(styles, { withTheme: true })(ButtonCircularProgress);\n","import React, { memo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Button, createTheme, ThemeProvider, StyledEngineProvider, adaptV4Theme } from \"@mui/material\";\n\nfunction ColoredButton(props) {\n const { color, children, theme } = props;\n const buttonTheme = createTheme(adaptV4Theme({\n ...theme,\n palette: {\n primary: {\n main: color\n }\n }\n }));\n const buttonProps = (({ color, theme, children, ...o }) => o)(props);\n return (\n \n \n \n {children}\n \n \n \n );\n}\n\nColoredButton.propTypes = {\n color: PropTypes.string.isRequired\n};\n\nexport default memo(ColoredButton);\n","import React, { useCallback, useState, useRef, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Snackbar } from \"@mui/material\";\n\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = (theme) => ({\n root: {\n backgroundColor: theme.palette.primary.main,\n paddingTop: 0,\n paddingBottom: 0,\n },\n});\n\nfunction ConsecutiveSnackbars(props) {\n const { classes, getPushMessageFromChild } = props;\n const [isOpen, setIsOpen] = useState(false);\n const [messageInfo, setMessageInfo] = useState({});\n const queue = useRef([]);\n\n const processQueue = useCallback(() => {\n if (queue.current.length > 0) {\n setMessageInfo(queue.current.shift());\n setIsOpen(true);\n }\n }, [setMessageInfo, setIsOpen, queue]);\n\n const handleClose = useCallback((_, reason) => {\n if (reason === \"clickaway\") {\n return;\n }\n setIsOpen(false);\n }, [setIsOpen]);\n\n const pushMessage = useCallback(message => {\n queue.current.push({\n message,\n key: new Date().getTime(),\n });\n if (isOpen) {\n // immediately begin dismissing current message\n // to start showing new one\n setIsOpen(false);\n } else {\n processQueue();\n }\n }, [queue, isOpen, setIsOpen, processQueue]);\n\n useEffect(() => {\n getPushMessageFromChild(pushMessage);\n }, [getPushMessageFromChild, pushMessage]);\n\n return (\n {messageInfo.message ? messageInfo.message.text : null}\n }\n TransitionProps={{\n onExited: processQueue\n }} />\n );\n\n}\n\nConsecutiveSnackbars.propTypes = {\n getPushMessageFromChild: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n};\n\nexport default withStyles(styles, { withTheme: true })(ConsecutiveSnackbars);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { IconButton, DialogTitle, Typography, Box } from \"@mui/material\";\nimport withTheme from '@mui/styles/withTheme';\nimport CloseIcon from \"@mui/icons-material/Close\";\n\nfunction DialogTitleWithCloseIcon(props) {\n const {\n theme,\n paddingBottom,\n onClose,\n disabled,\n title,\n disablePadding\n } = props;\n return (\n \n \n {title} \n \n \n \n \n \n );\n}\n\nDialogTitleWithCloseIcon.propTypes = {\n theme: PropTypes.object,\n paddingBottom: PropTypes.number,\n onClose: PropTypes.func,\n disabled: PropTypes.bool,\n title: PropTypes.string,\n disablePadding: PropTypes.bool\n};\n\nexport default withTheme(DialogTitleWithCloseIcon);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, DialogContent, Box } from \"@mui/material\";\nimport withStyles from '@mui/styles/withStyles';\nimport DialogTitleWithCloseIcon from \"./DialogTitleWithCloseIcon\";\n\nconst styles = theme => ({\n dialogPaper: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n paddingBottom: theme.spacing(3),\n maxWidth: 420\n },\n actions: {\n marginTop: theme.spacing(2)\n },\n dialogPaperScrollPaper: {\n maxHeight: \"none\"\n },\n dialogContent: {\n paddingTop: 0,\n paddingBottom: 0\n }\n});\n\n/**\n * A Wrapper around the Dialog component to create centered\n * Login, Register or other Dialogs.\n */\nfunction FormDialog(props) {\n const {\n classes,\n open,\n onClose,\n loading,\n headline,\n onFormSubmit,\n content,\n actions,\n hideBackdrop\n } = props;\n return (\n \n \n \n \n \n \n );\n}\n\nFormDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n open: PropTypes.bool.isRequired,\n onClose: PropTypes.func.isRequired,\n headline: PropTypes.string.isRequired,\n loading: PropTypes.bool.isRequired,\n onFormSubmit: PropTypes.func.isRequired,\n content: PropTypes.element.isRequired,\n actions: PropTypes.element.isRequired,\n hideBackdrop: PropTypes.bool.isRequired\n};\n\nexport default withStyles(styles, { withTheme: true })(FormDialog);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport { Typography } from \"@mui/material\";\n\nimport withStyles from '@mui/styles/withStyles';\n\nconst styles = theme => ({\n main: {\n backgroundColor: theme.palette.warning.light,\n border: `${theme.border.borderWidth}px solid ${theme.palette.warning.main}`,\n padding: theme.spacing(2),\n borderRadius: theme.shape.borderRadius\n }\n});\n\nfunction HighlighedInformation(props) {\n const { className, children, classes } = props;\n return (\n \n {children} \n
\n );\n}\n\nHighlighedInformation.propTypes = {\n classes: PropTypes.object.isRequired,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element,\n PropTypes.array\n ]).isRequired,\n className: PropTypes.string\n};\n\nexport default withStyles(styles, { withTheme: true })(HighlighedInformation);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\nimport {\n List,\n ListItem,\n ListItemIcon,\n ListItemText,\n Drawer,\n IconButton,\n Typography,\n Toolbar,\n} from \"@mui/material\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\n\nconst styles = (theme) => ({\n closeIcon: {\n marginRight: theme.spacing(0.5),\n },\n headSection: {\n width: 200,\n },\n blackList: {\n backgroundColor: theme.palette.common.black,\n height: \"100%\",\n },\n noDecoration: {\n textDecoration: \"none !important\",\n },\n});\n\nfunction NavigationDrawer(props) {\n const { open, onClose, anchor, classes, menuItems, selectedItem, theme } =\n props;\n const isWidthUpSm = useMediaQuery(theme.breakpoints.up(\"sm\"));\n\n window.onresize = () => {\n if (isWidthUpSm && open) {\n onClose();\n }\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n {menuItems.map((element) => {\n if (element.link) {\n return (\n \n \n {element.icon} \n \n {element.name}\n \n }\n />\n \n \n );\n }\n return (\n \n {element.icon} \n \n {element.name}\n \n }\n />\n \n );\n })}\n
\n \n );\n}\n\nNavigationDrawer.propTypes = {\n anchor: PropTypes.string.isRequired,\n theme: PropTypes.object.isRequired,\n open: PropTypes.bool.isRequired,\n onClose: PropTypes.func.isRequired,\n menuItems: PropTypes.arrayOf(PropTypes.object).isRequired,\n classes: PropTypes.object.isRequired,\n selectedItem: PropTypes.string,\n};\n\nexport default withStyles(styles, { withTheme: true })(NavigationDrawer);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Route } from \"react-router-dom\";\n\nconst renderMergedProps = (component, ...rest) => {\n const finalProps = Object.assign({}, ...rest);\n return React.createElement(component, finalProps);\n};\n\nconst PropsRoute = ({ component, ...rest }) => renderMergedProps(component, routeProps, rest)} />;\n\nPropsRoute.propTypes = {\n component: PropTypes.oneOfType([PropTypes.elementType, PropTypes.node]),\n};\n\nexport default PropsRoute;\n","/**\n * When called scrolls smooth to the top of the page.\n * globLastC prevents shaky animations when scrolling to\n * bottom while topscrolling.\n */\nlet globLastC = Infinity;\n\nfunction smoothScrollTopRec() {\n const c = document.documentElement.scrollTop || document.body.scrollTop;\n if (c > 0 && globLastC > c) {\n globLastC = c;\n window.requestAnimationFrame(smoothScrollTopRec);\n window.scrollTo(0, c - c / 8);\n } else {\n globLastC = Infinity;\n }\n}\n\nfunction smoothScrollTop() {\n /**\n * Normally this gets called from componentDidMount()\n * Not waiting a tiny fraction of time can lead\n * to shaky behaviour\n */\n setTimeout(() => {\n smoothScrollTopRec();\n }, 10);\n}\n\nexport default smoothScrollTop;\n","import { useHistory } from \"react-router-dom\";\nimport { useEffect } from \"react\";\n\n\nconst useLocationBlocker = () => {\n /** \n * Prevents react-router from pushing the same\n * page to the history twice which leads to\n * multiple clicks on the back icon of the browser\n * being necessary to go back into the history.\n */\n const history = useHistory();\n useEffect(\n () =>\n history.block(\n (location, action) =>\n action !== \"PUSH\" ||\n getLocationId(location) !== getLocationId(history.location)\n ),\n [] // eslint-disable-line react-hooks/exhaustive-deps\n );\n}\n\nconst getLocationId = ({ pathname, search, hash }) => {\n return pathname + (search ? \"?\" + search : \"\") + (hash ? \"#\" + hash : \"\");\n}\n\nexport default useLocationBlocker;"],"names":["NavBar","props","classes","openRegisterDialog","openLoginDialog","handleMobileDrawerOpen","handleMobileDrawerClose","mobileDrawerOpen","selectedTab","menuItems","link","name","icon","_jsx","HomeIcon","className","BookIcon","HowToRegIcon","_jsxs","root","children","AppBar","position","appBar","Toolbar","toolbar","Typography","variant","brandText","display","color","Hidden","mdUp","IconButton","menuButton","onClick","size","MenuIcon","mdDown","map","element","Link","to","noDecoration","Button","text","menuButtonText","NavigationDrawer","anchor","open","selectedItem","onClose","withStyles","theme","boxShadow","shadows","backgroundColor","palette","common","white","justifyContent","fontSize","typography","body1","fontWeight","h6","fontFamily","textDecoration","withTheme","memo","waves","width","marginBottom","height","minHeight","from","transform","parallax","animation","animationDelay","animationNegativeDelay","id","String","Math","random","lowerColor","upperColor","rest","style","background","xmlns","xlink","viewBox","preserveAspectRatio","shapeRendering","d","href","x","y","fill","infos","PhoneIcon","description","MailIcon","socialIcons","role","label","footerInner","darkBlack","paddingTop","spacing","paddingLeft","paddingRight","paddingBottom","breakpoints","up","footerLinks","marginTop","marginBot","infoIcon","socialIcon","borderRadius","shape","primary","light","cursor","transition","transitions","create","duration","shortest","easing","easeIn","whiteBg","pushMessageToSnackbar","isWidthUpMd","useMediaQuery","WaveBorder","Grid","container","item","xs","md","lg","onSubmit","e","preventDefault","textValue","document","getElementById","value","emailValue","window","emailjs","send","message","email","then","res","catch","err","console","error","handleSubmit","Box","flexDirection","mb","TextField","placeholder","InputProps","fullWidth","required","multiline","rows","ColoredButton","type","lgDown","info","index","mr","tabIndex","disabled","length","dialogActions","dialog","zIndex","backIcon","marginRight","Dialog","scroll","DialogTitle","DialogContent","paragraph","DialogActions","black","ArrowBackIcon","Promise","resolve","reject","ajax","XMLHttpRequest","location","includes","data","country","onload","response","JSON","parse","responseText","onerror","europeanCountryCodes","snackbarContent","borderBottomLeftRadius","borderBottomRightRadius","handleCookieRulesDialogOpen","isVisible","setIsVisible","useState","openOnEuCountry","useCallback","fetchIpData","onAccept","Cookies","set","expires","useEffect","undefined","get","Snackbar","action","Fragment","content","title","date","src","snippet","onVisibilityChange","endAdornment","InputAdornment","onMouseDown","event","VisibilityIcon","VisibilityOffIcon","complex","easeInOut","main","dark","setStatus","openTermsDialog","status","isLoading","setIsLoading","hasTermsOfServiceError","setHasTermsOfServiceError","isPasswordVisible","setIsPasswordVisible","registerTermsCheckbox","useRef","registerPassword","registerPasswordRepeat","register","current","checked","setTimeout","FormDialog","loading","headline","onFormSubmit","hideBackdrop","hasCloseIcon","margin","autoFocus","autoComplete","onChange","FormHelperTextProps","VisibilityPasswordTextField","inputRef","helperText","FormControlLabel","control","Checkbox","onKeyDown","keyCode","FormHelperText","HighlightedInformation","actions","ButtonCircularProgress","termsConditionsListitem","marginLeft","withRouter","forgotPassword","disabledText","formControlLabel","history","openChangePasswordDialog","loginEmail","loginPassword","login","push","align","classNames","dialogContent","setLoginStatus","sendPasswordEmail","disableEscapeKeyDown","maxWidth","backdrop","top","left","right","bottom","touchAction","Backdrop","dialogOpen","loginStatus","registerStatus","setRegisterStatus","_onClose","printDialog","RegisterDialog","TermsOfServiceDialog","LoginDialog","ChangePasswordDialog","ModalBackdrop","modal","portalImgWrapper","portalImgInnerWrapper","alignItems","portalImg","objectFit","maxHeight","zoomedOutImage","alt","zoomedImgProps","zoomedIn","setZoomedIn","scrollbarSize","setScrollbarSize","zoomIn","zoomOut","body","overflow","querySelector","ScrollbarSize","Portal","extraLargeButtonLabel","extraLargeButton","card","down","wrapper","secondary","image","verticalAlign","containerFix","waveBorder","currentPic","setCurrentPic","React","intervalId","setInterval","updateVariable","prevVariable","clearInterval","ZoomImage","currentWidth","shadeColor","hex","percent","f","parseInt","slice","t","p","R","G","B","round","toString","iconWrapper","textAlign","padding","Icon","useTheme","keys","reverse","reduce","output","key","matches","iconSize","features","SportsFootballIcon","mdDelay","smDelay","NewspaperIcon","SavingsIcon","SettingsSuggestIcon","MeassageIcon","ShowChartIcon","useWidth","calculateSpacing","FeatureCard","border","cardHightlighted","pricing","highlighted","btnLink","feature","CheckIcon","ml","disableElevation","target","cardWrapper","cardWrapperHighlighted","_Fragment","gridContainer","sm","PriceCard","selectHome","HeadSection","FeatureSection","PricingSection","numberInput","numberInputInput","dBlock","listItemLeftPadding","misc","accordionDetails","paddintTop","paper","scaleMinus","spin","listItemSecondaryAction","user","useParams","errorMessage","setErrorMessage","showErrorAlert","setShowErrorAlert","setName","stocks_during_the_week","setShowStocksDuringTheWeek","show_weather","setShowWeather","show_dow","setShowDow","show_nasdaq","setShowNasdaq","show_stocks","setShowStocks","show_commodities","setShowCommodities","just_stocks","setShowOnlyStocks","time_zone","setTimeZone","just_stocks_splice_value","setGainersDeclinersSpliceValue","show_only_live","setShowOnlyLive","show_custom_headline","setShowCustomHeadline","with_onboarding","setWithOnboarding","setEmail","zip_code","setZipCode","rss_feeds","setRss_feeds","rankings","setRankings","stockSymbol","setStockSymbol","stock_symbols","setStockSymbols","custom_headline","setCustomHeadline","custom_headline_2","setCustomHeadline2","custom_headline_3","setCustomHeadline3","custom_headline_4","setCustomHeadline4","tickerArr","setTickerArr","sports_to_display","setSportsToDisplay","prompt","fetch","method","headers","json","handleAddStockSymbol","async","symbol","getStockInfo","sports","news","url","requestOptions","stringify","Container","sx","pt","component","borderBottom","log","warn","startRunning","Accordion","AccordionSummary","expandIcon","ExpandMoreIcon","AccordionDetails","List","disablePadding","Bordered","disableVerticalPadding","disableBorderRadius","sport","ListItem","disableGutters","divider","ListItemText","FormControl","ListItemSecondaryAction","Switch","filter","s","prevValue","FormGroup","OutlinedInput","toUpperCase","edge","DeleteForeverIcon","direction","alignContent","idx","Chip","onDelete","filtered","Select","input","labelWidth","MenuProps","disableScrollLock","MenuItem","gutterBottom","LinearProgress","heroContent","heroButtons","cardGrid","cardMedia","cardContent","flexGrow","footer","listStyle","pic1","pic2","muted","loop","controls","rel","pics","pic3","pic4","pic5","allGifs","source","bregman_stare_vertical","verlander","baylor_letsgo_vertical","baylor_trophy_vertical","dak_dancing_vertical","dak_card_vertical","cowboys9_vertical","cowboy_crawl_vertical","ceedee2_vertical","cowboys4_vertical","jerry_jones_wink_vertical","cowboys8_vertical","cowboys2_vertical","cowboys7_vertical","ceedee3_vertical","dak_surprised_vertical","cowboys1_vertical","ceedee1_vertical","dak_celebrate_vertical","penny1","penny2","cowboys5_vertical","cowboys6_vertical","cowboys10_vertical","vertical","selectGifDisplay","dayOfTheWeek","setDayOfTheWeek","currentIndex","setCurrentIndex","isVertical","setIsVertical","gifs","setGifs","theGifs","gif","array","i","j","floor","shuffle","autoPlay","transformOrigin","ReactLoading","useHistory","defaultFontSize","browserDetect","game","textSize","setTextSize","updateInterval","setUpdateInterval","screenWidth","setScreenWidth","screenHeight","setScreenHeight","allGames","setAllGames","isSettingsOpen","setIsSettingsOpen","showOverlay","setShowOverlay","onlyOneColumn","setOnlyOneColumn","justTop25Basketball","setJustTop25Basketball","isBehindTheScenesLoading","setIsBehindTheScenesLoading","setUser","lastUpdated","setLastUpdated","Date","toLocaleString","split","isLoadingRef","sessionID","setSessionID","gameData","setGameData","homeTeamData","setHomeTeamData","awayTeamData","setAwayTeamData","fetchGame","userAgent","navigator","getUpdate","teamBackgroundLinks","NFL","NHL","NCAABASKETBALL","team","homeCourtImage","NCAAFOOTBALL","NBA","theGame","events","find","getNCAAFootballGames","getNFLGame","getNBAGame","getNHLGame","getNCAAGame","competitions","competitors","getBackgroundImage","homeTeam","awayTeam","foundBackground","getNetworkLogo","network","backgroundImage","backgroundPosition","backgroundRepeat","backgroundSize","logo","_awayTeamData$records","records","summary","leaders","alternateColor","athlete","headshot","displayName","displayValue","shortDisplayName","tvChannel","format","detail","timeStr","shortDetail","score","odds","overUnder","details","awayData","statistics","homeData","_homeTeamData$records","SettingsIcon","NorthIcon","Slider","defaultValue","step","marks","min","max","valueLabelDisplay","zone","abbr","diff","Intl","DateTimeFormat","resolvedOptions","timeZone","subtractHours","hours","minutesPart","minutes","substring","amPm","setHours","toLowerCase","getHours","newHours","newMinutes","getMinutes","newAmPm","padStart","convertToUserLocalTime","selectGamesScreen","isFireTV","setIsFireTV","BasketballFirestick","state","Basketball","DateTimeWidget","dateTime","setDateTime","formattedMonth","month","formattedDay","day","replace","NewsWidget","headlines","setHeadlines","axios","params","token","topic","lang","articles","fetchHeadlines","overflowX","overflowY","article","lineHeight","WeatherWidget","weatherData","setWeatherData","setLoading","setError","latitude","setLatitude","longitude","setLongitude","getUserLocation","geolocation","getCurrentPosition","coords","fetchWeatherData","currentWeather","dailyForecasts","forecastDaily","days","Card","minWidth","CircularProgress","celsiusToFahrenheit","celsius","conditionCode","CardContent","temperature","code","conditionCodes","conditionNames","conditionsWithSpaces","getConditionNames","temperatureMin","temperatureMax","precipitationChance","maximumFractionDigits","setValue","interval","Clock","minuteHandLength","minuteHandWidth","hourHandLength","hourHandWidth","renderMinuteMarks","forecastStart","toLocaleDateString","weekday","condition","Clear","ClearIcon","Cloudy","CloudyIcon","Dust","DustIcon","Fog","FogIcon","Haze","HazeIcon","MostlyClear","MostlyClearIcon","MostlyCloudy","MostlyCloudyIcon","PartlyCloudy","PartlyCloudyIcon","ScatteredThunderstorms","ScatteredThunderstormsIcon","Smoke","SmokeIcon","Breezy","BreezyIcon","Windy","WindyIcon","Drizzle","DrizzleIcon","HeavyRain","HeavyRainIcon","Rain","RainIcon","Showers","ShowersIcon","Flurries","FlurriesIcon","HeavySnow","HeavySnowIcon","MixedRainAndSleet","MixedRainAndSleetIcon","MixedRainAndSnow","MixedRainAndSnowIcon","MixedRainfall","MixedRainfallIcon","MixedSnowAndSleet","MixedSnowAndSleetIcon","ScatteredShowers","ScatteredShowersIcon","ScatteredSnowShowers","ScatteredSnowShowersIcon","Sleet","SleetIcon","Snow","SnowIcon","SnowShowers","SnowShowersIcon","Blizzard","BlizzardIcon","BlowingSnow","BlowingSnowIcon","FreezingDrizzle","FreezingDrizzleIcon","FreezingRain","FreezingRainIcon","Frigid","FrigidIcon","Hail","HailIcon","Hot","HotIcon","Hurricane","HurricaneIcon","IsolatedThunderstorms","IsolatedThunderstormsIcon","SevereThunderstorm","SevereThunderstormIcon","Thunderstorm","ThunderstormIcon","Tornado","TornadoIcon","TropicalStorm","TropicalStormIcon","browserData","selectOddsDisplay","userTimezone","setUserTimezone","moment","sportsToDisplayRef","sessionIDRef","convertToDate","dateStr","currentYear","getFullYear","convertToMonthDayString","jsDate","parseFloat","checkSubscription","fetchGames","isDateToday","today","getDate","currentTime","filteredData","splice","league","isPregame","dateParts","match","year","fullDateStr","timeUntilString","homeSpread","awaySpread","homeMoneyLine","awayMoneyLine","time","momentTimezone","tz","fullDate","inProgress","formatDistanceToNow","addSuffix","awayStartingPitcher","homeStartingPitcher","homeScore","awayScore","quarter","clock","onFirst","onSecond","onThird","conferences","weather","indoors","sorted","concat","sort","a","b","aTime","Number","bTime","formattedTimeInUserTimezone","urlTracking","requestOptionsTracking","os","browser","getColor","gridTemplateColumns","gridGap","gap","SportsBasketballIcon","SportsBaseballIcon","SportsHockeyIcon","whiteSpace","ArrowLeftIcon","npm","run","trim","WiDaySunny","WiDayCloudy","WiThunderstorm","WiSnow","ToggleButtonGroup","handleFormat","newSports","flexWrap","ToggleButton","selectTeslaDashboard","reload","CurrentWeatherWidget","ForecastWeatherWidget","TimeWidget","OddsScreen","politicsData","setPoliticsData","numOfColumns","setNumOfColumns","handleResize","renderRunnersMLB","basesLoaded","first","second","third","firstAndSecond","firstAndThird","secondAndThird","alert","emailFromPrompt","timeFormatted","screenWidthHalf","innerWidth","innerHeight","addEventListener","ChartJS","CategoryScale","LinearScale","BarElement","Title","Tooltip","Legend","selectTracking","sessions","setSessions","updatedTime","setUpdatedTime","getSessions","hour","minute","fontOptions","family","dayOfWeekCount","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","acc","session","dayLabel","start_date_time","getUTCDay","number_of_refreshes","chartData","labels","datasets","Object","values","tension","borderWidth","borderSkipped","maxBarThickness","getOptions","scales","grid","drawBorder","drawOnChartArea","drawTicks","borderDash","ticks","suggestedMin","beginAtZero","font","responsive","plugins","legend","aggregateDataByHour","minutesPerHourData","forEach","startTime","endTime","getTime","setMinutes","entries","_ref","chartDataByHour","aggregateDataByBrowser","refreshesByBrowser","_ref2","totalCount","aggregateDataByOS","refreshesByOS","_ref3","aggregateDataByFetches","fetchesByEmail","fetch_games_count","_ref4","totalFetches","aggregateDataByEmail","refreshesByEmail","_ref5","totalRefreshes","aggregateDataByMonth","refreshesByMonth","monthYearKey","getMonth","getMonthKey","_ref6","aggregateDataByDate","refreshesByDate","_ref7","chartDataByMonth","chartDataByDate","chartDataByUser","chartDataByFetches","chartDataByBrowser","chartDataByOS","getIsCurrentlyRunning","startDate","startDateUtc","sessionDuration","endDateUtc","colors","Loading","Bar","options","TableContainer","Paper","Table","TableHead","TableRow","TableCell","TableBody","toFixed","TvIcon","ComputerIcon","createData","calories","fat","carbs","protein","descendingComparator","orderBy","headCells","numeric","EnhancedTableHead","onSelectAllClick","order","numSelected","rowCount","onRequestSort","headCell","sortDirection","TableSortLabel","active","property","visuallyHidden","EnhancedTableToolbar","pl","pr","bgcolor","alpha","activatedOpacity","flex","DeleteIcon","FilterListIcon","TDMPFFL","selectTDMPFFL","setOrder","setOrderBy","selected","setSelected","page","setPage","dense","setDense","rowsPerPage","setRowsPerPage","emptyRows","visibleRows","comparator","stabilizedThis","el","stableSort","getComparator","newSelected","n","handleRequestSort","row","isItemSelected","indexOf","labelId","hover","handleClick","selectedIndex","scope","colSpan","Candlelighters","selectCandlelighters","judge","setJudge","selectedBooth","setSelectedBooth","loggedIn","setLoggedIn","finalize","setFinalize","updatedScores","setUpdatedScores","edited","setEdited","booths","setBooths","scores","questions","years","getRemaining","booth","boothScores","remaining","MargLogo","question","questionID","requestOptionsJudges","handleSave","handleLogin","selectCandlelightersAdmin","judges","setJudges","allJudges","getTopTen","runningScore","Items","Timezone","Description","Wagers","idCustomer","AgentName","CustName","Password","FirstName","NickName","Website","Type","TicketNumber","TotalRisk","TotalWin","TeaserName","PlacedDate","AllowDelete","FifteenMinsPost","ContinueOnPush","Details","Points","OddsFormatted","AmountRisk","AmountToWin","EventdDate","Outcome","Rotation","WagerType","PointsOU","Header","SportType","SportSubTypeWeb","IdLeague","LeagueTypeName","LeagueName","ContestDesc","RegulationNote","PeriodDescription","Pitcher1Required","Pitcher2Required","ListedPitcher1","ListedPitcher2","PitcherAdjust","AdjustableOddsFlag","IsFreePlay","OutcomeCode","WinnerId","Team1","Team1Logo","Team1Mascot","Team2","Team2Logo","Team2Mascot","Team1Score","Team2Score","PendingType","WagerNumber","TicketType","Page","PageSize","TotalItemCount","Betfolio","selectBetfolio","password","setPassword","bearer","setBearer","bettingWebsite","setBettingWebsite","setToken","todaysGames","setTodaysGames","todaysNFLGames","setTodaysNFLGames","todaysNBAGames","setTodaysNBAGames","todaysNHLGames","setTodaysNHLGames","todaysXFLGames","setTodaysXFLGames","todaysNCAAFootballGames","setTodaysNCAAFootballGames","todaysNCAABasketballGames","setTodaysNCAABasketballGames","todaysNCAABaseballGames","setTodaysNCAABaseballGames","todaysSoccerGames","setTodaysSoccerGames","allTodaysBets","setAllTodaysBets","allTodaysBetsRef","nba","nhl","mlb","nfl","xfl","ncaafootball","ncaabasketball","ncaabaseball","soccer","websiteLogin","tokenData","accessToken","bets","myBets","totalWin","totalRisk","parlay","risk","win","bet","webParlays","betGame","leagueName","wagerType","winner","abbreviation","spread","spreadType","overUnderType","overUnderTeams","gameStr","syncWithSportsWebsite","getAllData","selectThomasFirstBirthday","shuffledImages","Array","_","original","ImageGallery","items","showThumbnails","showNav","showFullscreenButton","showBullets","showPlayButton","borderTop","phoneNumber","setPhoneNumber","setStartTime","setEndTime","numPlayers","setNumPlayers","setDate","addDays","setMessage","course","setCourse","m","noValidate","InputLabel","LocalizationProvider","dateAdapter","AdapterDateFns","DatePicker","TimePicker","ok","Error","statusText","mt","img","showFocus","awareOfUnicodeTokens","getVerticalBlogPosts","isWidthUpSm","blogPosts","gridRows","blogPost","BlogCard","blogContentWrapper","selectBlog","site","encodeURIComponent","startIcon","SvgIcon","otherArticles","smoothScrollTop","pb","ShareButton","Routing","selectWifiInstructions","selectGolfTeeTimeFinder","selectWifiInstructionsOnboarding","useLocationBlocker","post","PropsRoute","path","BlogPost","exact","Blog","GifDisplay","OddsScreenStore","GameScreen","TickerSettings","TeslaDashboard","WiFiInstructions","WiFiInstructionsOnboarding","Tracking","GolfTeeTimeFinder","CandlelightersAdmin","ThomasFirstBirthday","Home","AOS","once","Main","setSelectedTab","isMobileDrawerOpen","setIsMobileDrawerOpen","setBlogPosts","setDialogOpen","isCookieRulesDialogOpen","setIsCookieRulesDialogOpen","setPushMessageToSnackbar","closeDialog","fetchBlogPosts","dummyBlogPosts","handleCookieRulesDialogClose","getPushMessageFromChild","pushMessage","CookieConsent","ConsecutiveSnackbarMessages","DialogSelector","CookieRulesDialog","selectTab","Footer","borderColor","greyed","circularProgress","thickness","buttonTheme","createTheme","adaptV4Theme","buttonProps","o","StyledEngineProvider","injectFirst","ThemeProvider","isOpen","setIsOpen","messageInfo","setMessageInfo","queue","processQueue","shift","handleClose","reason","disableWindowBlurListener","anchorOrigin","horizontal","autoHideDuration","ContentProps","TransitionProps","onExited","CloseIcon","dialogPaper","dialogPaperScrollPaper","paperScrollPaper","DialogTitleWithCloseIcon","warning","closeIcon","headSection","blackList","onresize","Drawer","ListItemIcon","button","disableRipple","disableTouchRipple","Route","render","routeProps","_len","arguments","_key","finalProps","assign","renderMergedProps","globLastC","Infinity","smoothScrollTopRec","c","documentElement","scrollTop","requestAnimationFrame","scrollTo","getLocationId","pathname","search","hash","block"],"sourceRoot":""}