{"version":3,"file":"static/chunks/5517.e9d8fa84b574f18c.js","mappings":"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","sources":["webpack://_N_E/./utilities/content-parser.js","webpack://_N_E/./components/Content.js","webpack://_N_E/./components/SportsbookPromoItem.js","webpack://_N_E/./components/SportsbookPromos.js","webpack://_N_E/./components/TopBannerImageMobile.js","webpack://_N_E/./components/layouts/SidebarLayout.js"],"sourcesContent":["export function updateImageAndSponsoredAttributes(htmlContent) {\n if (!htmlContent) return \"\";\n\n const externalAffiliateRegex = new RegExp(\n \"https://affiliates\\\\.bettingnews\\\\.com/[\\\\w-]+/\",\n \"g\"\n );\n\n // Function to check if a link is an affiliate link\n const isAffiliateLink = (href) => {\n return href && href.match(externalAffiliateRegex);\n };\n\n // Function to process link (<a>) tags\n const processLinks = (tag) => {\n const hrefIndex = tag?.indexOf('href=\"');\n if (hrefIndex === -1) return tag; // No href attribute found\n\n const start = hrefIndex + 6; // Start of the URL in href\n const end = tag?.indexOf('\"', start); // End of the URL\n const href = tag?.substring(start, end);\n\n if (isAffiliateLink(href)) {\n const relIndex = tag?.indexOf('rel=\"');\n const targetIndex = tag?.indexOf('target=\"');\n const hasSponsored =\n relIndex !== -1 &&\n tag\n ?.substring(relIndex, tag.indexOf('\"', relIndex + 5))\n .includes(\"sponsored\");\n\n if (relIndex === -1) {\n tag = tag?.slice(0, end + 1) + ' rel=\"sponsored\"' + tag?.slice(end + 1);\n } else if (!hasSponsored) {\n const relEnd = tag.indexOf('\"', relIndex + 5);\n tag = tag?.slice(0, relEnd) + \" sponsored\" + tag?.slice(relEnd);\n }\n\n if (targetIndex === -1) {\n tag = tag?.slice(0, end + 1) + ' target=\"_blank\"' + tag?.slice(end + 1);\n }\n }\n\n return tag;\n };\n\n // Main processing of HTML content\n return htmlContent?.replace(/<a [^>]*>/g, processLinks);\n}\n","import { useEffect, useState } from \"react\";\n\nimport { updateImageAndSponsoredAttributes } from \"@/utilities/content-parser\";\n\nconst Content = ({ content, customClass }) => {\n const parsedHtmlContent = updateImageAndSponsoredAttributes(content);\n\n const [clientContent, setClientContent] = useState(null);\n\n useEffect(() => {\n setClientContent(parsedHtmlContent);\n }, [content]);\n\n if (!clientContent) return null;\n\n return (\n <div\n id=\"bettingnews-content\"\n className={customClass}\n dangerouslySetInnerHTML={{ __html: clientContent || content }}\n suppressHydrationWarning\n />\n );\n};\n\nexport default Content;\n","import Image from \"next/image\";\nimport Link from \"next/link\";\n\nimport labels from \"@/config/labels\";\n\nconst SportsbookPromoItem = ({\n sportsbook,\n withOfferButtons,\n isTopBanner,\n withPrefix = false,\n}) => {\n const imageCtaContainerClassname = withOfferButtons\n ? \"flex flex-col sm:flex-row sm:items-center\"\n : withPrefix\n ? \"flex flex-col md:flex-row items-center\"\n : \"flex flex row items-center\";\n const ctaClassname = withOfferButtons\n ? \"mt-1 font-heading text-[.85rem] sm:text-base font-medium text-link-blue hover:underline\"\n : `font-heading text-[10px] md:text-xs font-bold md:font-medium text-link-blue hover:underline ${\n withPrefix\n ? \"underline absolute md:static w-full md:right-0 right-4 md:text-start text-end top-14\"\n : \"\"\n }`;\n const ctaLabel = withPrefix\n ? `${labels.picksCTAPrefix} ${sportsbook?.affiliateCta?.replace(\"»\", \"\")} ${\n labels.picksCTAPostFix\n } ${sportsbook?.title} ${labels.quickCapCTAPostfix}`\n : sportsbook?.affiliateCta;\n return (\n <div className=\"flex items-center justify-between px-5 py-3\">\n <div className={imageCtaContainerClassname}>\n <Image\n className=\"mr-4 h-[30px] w-[94px]\"\n alt={sportsbook?.title}\n height={30}\n src={sportsbook?.affiliateImageUrl}\n width={94}\n />\n {withOfferButtons ? (\n <>\n <p className=\"mt-1 font-heading text-[.85rem] font-medium text-link-blue\">\n {ctaLabel}\n </p>\n </>\n ) : (\n <Link\n aria-label={sportsbook?.affiliateCta}\n className={ctaClassname}\n href={sportsbook?.affiliateUrl ?? \"\"}\n target=\"__blank\"\n prefetch={false}\n rel=\"sponsored\"\n data-event-label={`${sportsbook?.title?.toLowerCase()}-sportsbook-${\n isTopBanner ? \"picks-list-matchup\" : \"left-cta\"\n }`}\n >\n {ctaLabel}\n </Link>\n )}\n </div>\n {withOfferButtons && (\n <Link\n aria-label={sportsbook?.buttonLabel}\n className=\"h-[34px] w-[110px] rounded-full bg-green text-center font-heading text-[.81rem] font-medium leading-[2.125rem] text-white md:w-[125px] md:text-[0.85rem]\"\n href={sportsbook?.affiliateUrl ?? \"\"}\n target=\"__blank\"\n prefetch={false}\n rel=\"sponsored\"\n data-event-label={`${sportsbook?.title?.toLowerCase()}-sportsbook-${\n isTopBanner ? \"top-banner\" : \"left-cta\"\n }`}\n >\n {sportsbook?.buttonLabel}\n </Link>\n )}\n </div>\n );\n};\n\nexport default SportsbookPromoItem;\n","import labels from \"@/config/labels\";\n\nimport SportsbookPromoItem from \"./SportsbookPromoItem\";\n\nconst SportsbookPromos = ({\n affiliates,\n containerClass = \"\",\n withTitle = true,\n withOfferButtons = false,\n isTopBanner = false,\n}) => {\n const containerClassname = containerClass || \"\";\n\n return (\n <div className={containerClassname}>\n {withTitle && (\n <p className=\"mb-2 text-xs font-medium uppercase tracking-wider text-darker-grey\">\n {labels.sportsbookPromosHeader}\n </p>\n )}\n <ul className=\"grid grid-cols-1 divide-y divide-grey-200 rounded-lg border border-grey-200 bg-white\">\n {affiliates?.map((sportsbook, index) => (\n <SportsbookPromoItem\n key={index}\n sportsbook={sportsbook}\n isTopBanner={isTopBanner}\n withOfferButtons={withOfferButtons}\n />\n ))}\n </ul>\n </div>\n );\n};\n\nexport default SportsbookPromos;\n","import Image from \"next/image\";\nimport Link from \"next/link\";\n\nimport useScreenWidth from \"@/hooks/useScreenWidth\";\n\nconst TopBannerImageMobile = ({ banner }) => {\n const screenWidth = useScreenWidth();\n const isMobile = screenWidth <= 480;\n\n return (\n <Link\n title={banner.bannerInfo.title}\n aria-label={banner.bannerInfo.title}\n href={banner?.bannerInfo?.link ?? \"\"}\n target=\"_blank\"\n rel=\"sponsored\"\n data-event-label=\"seasonal-banner\"\n >\n <Image\n className=\"h-[80px] w-full rounded-lg\"\n src={banner.bannerInfo.src}\n alt={banner.bannerInfo.title}\n loading=\"eager\"\n priority\n width={isMobile ? 300 : 900}\n height={100}\n sizes=\"(max-width: 480px) 300px, 900px\"\n quality={65}\n />\n </Link>\n );\n};\n\nexport default TopBannerImageMobile;\n","import ConsensusPicks from \"@/components/consensusPicks/ConsensusPicks\";\nimport Content from \"@/components/Content\";\nimport SportsbookPromos from \"@/components/SportsbookPromos\";\nimport { useAppContext } from \"@/hooks/useAppContext\";\n\nimport TopBannerImageMobile from \"../TopBannerImageMobile\";\n\nconst SidebarLayout = ({ children, siteContent, categoryContent }) => {\n const { affiliates, banners } = useAppContext();\n const mobileBanner = banners?.find(\n (banner) => banner.title === \"banner-mobile\"\n );\n const isMobileBannerActive = mobileBanner?.bannerInfo.active;\n\n return (\n <>\n <div className=\"container grid grid-cols-1 px-0 lg:grid-cols-[66.6%_33.3%] xl:max-w-screen-2xl xl:grid-cols-[25%_50%_25%]\">\n <div className=\"hidden p-4 xl:block\">\n <SportsbookPromos\n containerClass=\"sticky top-[6.5rem] py-10\"\n affiliates={affiliates}\n />\n </div>\n <div className=\"px-5 pb-6 pt-4 lg:py-14\">\n {isMobileBannerActive && (\n <div className=\"mb-4 h-auto w-full sm:hidden\">\n <TopBannerImageMobile banner={mobileBanner} />\n </div>\n )}\n {children}\n </div>\n <div className=\"hidden p-4 lg:block\">\n <ConsensusPicks />\n </div>\n </div>\n {siteContent && <Content content={siteContent} />}\n {categoryContent?.length > 0 &&\n categoryContent.map((article, index) => (\n <Content key={index} content={article.content} />\n ))}\n </>\n );\n};\n\nexport default SidebarLayout;\n"],"names":["components_Content","content","customClass","param","parsedHtmlContent","updateImageAndSponsoredAttributes","htmlContent","externalAffiliateRegex","isAffiliateLink","href","match","replace","hrefIndex","tag","indexOf","start","end","substring","relIndex","targetIndex","hasSponsored","includes","slice","relEnd","clientContent","setClientContent","useState","useEffect","jsx_runtime","jsx","div","id","className","dangerouslySetInnerHTML","__html","suppressHydrationWarning","__webpack_exports__","Z","sportsbook","withOfferButtons","isTopBanner","withPrefix","ctaLabel","concat","labels","picksCTAPrefix","affiliateCta","picksCTAPostFix","title","quickCapCTAPostfix","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsxs","Image","alt","height","src","affiliateImageUrl","width","Fragment","p","Link","aria-label","affiliateUrl","target","prefetch","rel","data-event-label","toLowerCase","buttonLabel","components_SportsbookPromos","affiliates","containerClass","withTitle","sportsbookPromosHeader","ul","map","index","SportsbookPromoItem","components_TopBannerImageMobile","banner","screenWidth","useScreenWidth","bannerInfo","link","loading","priority","isMobile","sizes","quality","layouts_SidebarLayout","children","siteContent","categoryContent","banners","useAppContext","mobileBanner","find","isMobileBannerActive","active","SportsbookPromos","TopBannerImageMobile","ConsensusPicks","Content","length","article"],"sourceRoot":""}