{"version":3,"file":"static/chunks/7920-2daf37276195e3bc.js","mappings":"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","sources":["webpack://_N_E/./components/resources/GTM.js","webpack://_N_E/./components/resources/Adobe.js","webpack://_N_E/./components/resources/NewRelic.js","webpack://_N_E/./components/resources/SchemaMarkup.js","webpack://_N_E/./components/resources/CookieConsent.js","webpack://_N_E/./hooks/useSiteNavigation.js","webpack://_N_E/./js/utils/time.js","webpack://_N_E/./hooks/useAgentStatus.js","webpack://_N_E/./js/utils/countdown.js","webpack://_N_E/./components/blocks/StickyNav/index.js","webpack://_N_E/./components/blocks/SiteNavigation/index.js","webpack://_N_E/./components/blocks/Header.js","webpack://_N_E/./providers/content-provider/components/SiteLegal.js","webpack://_N_E/./components/blocks/Footer/index.js","webpack://_N_E/./providers/content-provider/components/Annotation.js","webpack://_N_E/./providers/content-provider/utils/legal.js","webpack://_N_E/./providers/content-provider/hooks/useContentProviderLegal.js","webpack://_N_E/./components/templates/Default.js","webpack://_N_E/./components/blocks/StickyNav/index.module.css"],"sourcesContent":["/**\n * @module Google Tag Manage\n * @description Our GTM Snippet\n */\nimport Script from 'next/script';\n\n/**\n * @function GTMSnippet\n * @description Google Tag Manager Snippet\n */\nexport const GTMScript = () => (\n \n);\n\n/**\n * @function GTMSnippet\n * @description Google Tag Manager Snippet\n */\nexport const GTMSnippet = () => (\n \n);\n","/**\n * @module Adobe\n * @description Our Adobe Snippet\n */\nimport Script from 'next/script';\n\n/**\n * @function AdobeSnippet\n * @description Adobe Snippet\n */\nexport const AdobeSnippet = () => (\n <>\n {\n const { pathname } = window.location;\n let path = pathname.length > 1 ? pathname.substring( 1 ) : pathname;\n\n if ( path === '/' ) {\n path = 'home';\n }\n\n s_dtm.trackData( {\n pageName: `ftr:${ path }`,\n eVar22: 'visitor',\n eVar49: 'unverified service area'\n } );\n } }\n />\n \n);\n\nexport default AdobeSnippet;\n","/**\n * @module New Relic\n * @description Our New Relic Snippet\n */\nimport Script from 'next/script';\nimport { getAsset } from '@/js/utils/helpers';\n\n/**\n * @function NewRelic\n * @description New Relic Snippet\n */\nconst NewRelic = () => (\n \n);\n\nexport default NewRelic;\n","/**\n * @module Schema Markup\n * @description\n */\nconst SchemaMarkup = () => (\n \n);\n\nexport default SchemaMarkup;\n","/**\n * @module CookieConsent\n * @description Our cookie consent script\n */\nimport Script from 'next/script';\n\n/**\n * @function CookieConsent\n * @description Cookie Consent script\n */\nexport const CookieConsent = () => (\n <>\n '\n } }\n />\n \n \n '\n } }\n />\n \n);\n\nexport default CookieConsent;\n","/**\n * @module Site Navigation\n * @description\n */\nimport hoverIntent from 'hoverintent';\nimport state from '@/js/config/state';\n\nconst el = {\n header: null,\n navItems: null,\n headerItems: null,\n search: null,\n activeSubmenu: null,\n navCollapse: null,\n userNavCollapse: null,\n\n // Buttons\n navToggle: null,\n userToggleOpen: null,\n userToggleClose: null,\n\n // Menus\n siteMenu: null,\n headerMenu: null,\n complementaryMenu: null,\n\n // State\n navOpen: false,\n userNavOpen: false\n};\n\n/**\n * @function Site Navigation\n * @description\n */\nexport const useSiteNavigation = ( ) => {\n /**\n * @function trapUserMenuFocus\n * @description Trap User Menu Focus\n */\n const trapUserMenuFocus = ( e ) => {\n if ( state.is_desktop ) {\n return;\n }\n\n const { target } = e;\n\n if ( target.classList.contains( 'navigation-toggle--user-close' ) ) {\n el.userNavCollapse.querySelector( 'a' ).focus();\n return;\n }\n\n el.userToggleClose.focus();\n };\n\n /**\n * @function trapSubmenuFocus\n * @description Trap Submenu Focus\n */\n const trapSubmenuFocus = () => {\n if ( state.is_desktop ) {\n return;\n }\n\n el.navToggle.focus();\n };\n\n /**\n * @function closeSiblingMenus\n * @description Close sibling menus\n */\n const closeSiblingMenus = ( id, siblings ) => {\n const activeSiblings = [ ...siblings ].filter( ( sibling ) => sibling.classList.contains( 'menu-item-has-children' ) && id !== sibling.querySelector( 'button' ).getAttribute( 'id' ) );\n\n activeSiblings.forEach( ( active ) => {\n active.classList.remove( 'menu-item--active' );\n const btn = active.querySelector( 'button' );\n btn.setAttribute( 'aria-expanded', false );\n const submenu = active.querySelector( '.submenu-wrap' );\n\n if ( ! submenu ) {\n return;\n }\n\n submenu.classList.remove( '--active' );\n } );\n };\n\n /**\n * @function toggleSubmenu\n * @description Toggle our submenu\n */\n const toggleSubmenu = ( target, submenu ) => {\n if ( ! submenu ) {\n return;\n }\n\n const { parentNode } = target;\n const id = target.getAttribute( 'id' );\n const siblings = parentNode.parentNode.querySelectorAll( '.menu-item' );\n closeSiblingMenus( id, siblings );\n\n if ( target.getAttribute( 'aria-expanded' ) === 'false' ) {\n parentNode.classList.add( 'menu-item--active' );\n target.setAttribute( 'aria-expanded', true );\n submenu.classList.add( '--active' );\n\n return;\n }\n\n parentNode.classList.remove( 'menu-item--active' );\n target.setAttribute( 'aria-expanded', false );\n submenu.classList.remove( '--active' );\n };\n\n /**\n * @function openSubmenu\n * @description Open Submenu\n */\n const openSubmenu = ( e ) => {\n // Ignore mobile hover events\n if ( e.type === 'mouseover' && state.is_mobile ) {\n return;\n }\n\n const { target } = e;\n const { parentNode } = target;\n const submenu = parentNode.querySelector( '.submenu-wrap' );\n\n if ( e.type === 'mouseover' && el.activeSubmenu ) {\n const btnId = target.getAttribute( 'id' );\n const submenuId = el.activeSubmenu.getAttribute( 'aria-labelledby' );\n\n if ( btnId === submenuId ) {\n return;\n }\n }\n\n el.activeSubmenu = submenu;\n\n toggleSubmenu( target, submenu );\n\n // All we need for desktop is done\n if ( state.is_desktop ) {\n return;\n }\n\n const firstLink = el.activeSubmenu.querySelector( 'a' );\n\n // We need to wait for submenu to be visible\n setTimeout( () => {\n firstLink.focus();\n }, 100 );\n };\n\n /**\n * @function closeSubmenu\n * @description Close Submenu\n * @param target - Should be the top-level button node\n */\n const closeSubmenu = ( e ) => {\n // Ignore mobile hover events\n if ( ( e.type === 'mouseout' && state.is_mobile ) || ( e.type === 'mouseout' && state.is_tablet ) ) {\n return;\n }\n\n const { target } = e;\n\n // Fix issue with hover over anchor tags, set target manually.\n // if ( target.tagName === 'A' && state.is_desktop ) {\n // target = el.header.querySelector( '.menu-item--active button' );\n // }\n\n const parentNode = target.closest( '.menu-item' );\n\n if ( ! parentNode ) {\n return;\n }\n\n const submenu = parentNode.querySelector( '.submenu-wrap' );\n\n el.activeSubmenu = null;\n parentNode.classList.remove( 'menu-item--active' );\n\n if ( ! submenu ) {\n return;\n }\n\n submenu.classList.remove( '--active' );\n target.setAttribute( 'aria-expanded', false );\n };\n\n /**\n * @function closeUserNav\n * @description Close User Nav\n */\n const closeUserNav = () => {\n el.userNavOpen = false;\n document.documentElement.setAttribute( 'data-nav-open', false );\n el.header.classList.remove( 'navigation-open' );\n el.userNavCollapse.classList.remove( 'navigation-open' );\n\n el.userMenu.querySelector( 'button' ).click();\n };\n\n /**\n * @function openNav\n * @description Open Nav\n */\n const openNav = () => {\n if ( el.userNavOpen ) {\n closeUserNav();\n }\n\n el.navOpen = true;\n document.documentElement.setAttribute( 'data-nav-open', true );\n el.navToggle.classList.add( 'navigation-open' );\n el.header.classList.add( 'navigation-open' );\n el.navCollapse.classList.add( 'navigation-open' );\n\n const lastChild = el.header.querySelector( '.site-menu > li:last-of-type > *' );\n lastChild.addEventListener( 'blur', trapSubmenuFocus.bind( this ) );\n };\n\n /**\n * @function closeNav\n * @description Close Nav\n */\n const closeNav = () => {\n el.navOpen = false;\n document.documentElement.setAttribute( 'data-nav-open', false );\n el.navToggle.classList.remove( 'navigation-open' );\n el.header.classList.remove( 'navigation-open' );\n el.navCollapse.classList.remove( 'navigation-open' );\n };\n\n /**\n * @function openUserNav\n * @description Open User Nav\n */\n const openUserNav = () => {\n if ( el.navOpen ) {\n closeNav();\n }\n\n el.userNavOpen = true;\n document.documentElement.setAttribute( 'data-nav-open', true );\n el.header.classList.add( 'navigation-open' );\n el.userNavCollapse.classList.add( 'navigation-open' );\n el.userMenu.querySelector( 'a' ).focus();\n\n const lastChild = el.header.querySelector( '.user-menu .submenu > li:last-of-type > *' );\n lastChild.addEventListener( 'blur', trapUserMenuFocus.bind( this ) );\n };\n\n /**\n * @function navToggle\n * @description Open / Close Nav\n */\n const navToggle = () => {\n if ( ! el.navOpen ) {\n openNav();\n return;\n }\n\n closeNav();\n };\n\n /**\n * @function determineClose\n * @description Allow user to close nav by clicking outside of it\n */\n const determineClose = ( e ) => {\n if ( state.is_desktop ) {\n return;\n }\n\n const { target } = e;\n\n if ( target.tagName === 'HEADER' ) {\n if ( el.navOpen ) {\n closeNav();\n }\n\n if ( el.userNavOpen ) {\n closeUserNav();\n }\n }\n };\n\n /**\n * @function setA11y\n * @description\n */\n const setA11y = ( element, index, prefix ) => {\n const { parentNode } = element;\n\n element.setAttribute( 'id', `${ prefix }-menu-item-${ index }` );\n element.setAttribute( 'aria-haspopup', true );\n element.setAttribute( 'aria-controls', `${ prefix }-menu-submenu-${ index }` );\n element.setAttribute( 'aria-expanded', false );\n\n const submenu = parentNode.querySelector( '.submenu-wrap' );\n\n if ( ! submenu ) {\n return;\n }\n\n submenu.setAttribute( 'role', 'menu' );\n submenu.setAttribute( 'id', `${ prefix }-menu-submenu-${ index }` );\n submenu.setAttribute( 'aria-labelledby', `${ prefix }-menu-item-${ index }` );\n };\n\n /**\n * @function bindEvents\n * @description Bind events for this modules functions\n */\n const bindEvents = () => {\n el.navToggle.addEventListener( 'click', navToggle.bind( this ) );\n el.header.addEventListener( 'click', determineClose.bind( this ) );\n\n if ( el.userToggleOpen ) {\n el.userToggleOpen.addEventListener( 'click', openUserNav.bind( this ) );\n }\n\n if ( el.userToggleClose ) {\n el.userToggleClose.addEventListener( 'click', closeUserNav.bind( this ) );\n el.userToggleClose.addEventListener( 'blur', trapUserMenuFocus.bind( this ) );\n }\n };\n\n /**\n * @function init\n * @description Kick off this modules functions\n */\n const init = () => {\n el.header = document.querySelector( '.site-header' );\n\n if ( ! el.header ) {\n return;\n }\n\n // Buttons\n el.navToggle = el.header.querySelector( '.navigation-toggle' );\n el.userToggleOpen = el.header.querySelector( '.navigation-toggle--user-open' );\n el.userToggleClose = el.header.querySelector( '.navigation-toggle--user-close' );\n\n // Elements\n el.navCollapse = el.header.querySelector( '.navigation-collapse' );\n el.userNavCollapse = el.header.querySelector( '.navigation-collapse--secondary' );\n\n // Search\n el.search = el.header.querySelector( '.search-form' );\n\n // Menus\n el.siteMenu = el.header.querySelector( '.site-menu' );\n el.userMenu = el.header.querySelector( '.user-menu' );\n el.headerMenu = el.header.querySelector( '.header-menu' );\n el.complementaryMenu = el.header.querySelector( '.complementary-menu' );\n\n // Menu Items + Submenus\n el.navItems = el.header.querySelectorAll( '.site-menu > li.menu-item-has-children > button' );\n el.navItems.forEach( ( item, index ) => {\n const { parentNode } = item;\n hoverIntent( parentNode, openSubmenu.bind( this ), closeSubmenu.bind( this ) );\n setA11y( item, index, 'site' );\n item.addEventListener( 'click', openSubmenu.bind( this ) );\n } );\n\n // User Menu\n el.headerItems = el.header.querySelectorAll( '.header-menu > li.menu-item-has-children > button' );\n el.headerItems.forEach( ( item, index ) => {\n const { parentNode } = item;\n hoverIntent( parentNode, openSubmenu.bind( this ), closeSubmenu.bind( this ) );\n setA11y( item, index, 'header' );\n item.addEventListener( 'click', openSubmenu.bind( this ) );\n } );\n\n // Bind our buttons / elements with events\n bindEvents();\n };\n\n return { init };\n};\n\nexport default useSiteNavigation;\n","/**\n * @module Time\n * @description Time Utility\n */\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport objectSupport from 'dayjs/plugin/objectSupport';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter';\n\ndayjs.extend( relativeTime );\ndayjs.extend( advancedFormat );\ndayjs.extend( objectSupport );\ndayjs.extend( isBetween );\ndayjs.extend( isSameOrAfter );\n\n/**\n * @function getMoment\n * @description Manipulate our data.\n */\nexport const getMoment = ( date = new Date().toLocaleString( 'en-US', { timeZone: 'America/New_York' } ) ) => dayjs( date );\n\n/**\n * @function getDayOfWeek\n * @description Get numeric day of week\n */\nexport const getDayOfWeek = () => dayjs().day();\n\n/**\n * @function formateDate\n * @param date - Date object were passing.\n * @param format - How we want the date to be formatted\n * @description Manipulate our data.\n */\nexport const formatDate = ( format = '', date = new Date() ) => dayjs( date ).format( format );\n\n/**\n * @function parseTimeString\n * @description Split up time string into hour, minutes, seconds\n * @param {string} value the string to split up\n */\nexport const parseTimeString = ( value ) => {\n const values = value.split( ':' );\n\n values.forEach( ( val, index ) => {\n values[ index ] = Number( val ) < 10 ? val.charAt( 1 ) : val;\n } );\n\n return {\n hour: values[ 0 ],\n minute: values[ 1 ],\n second: values[ 2 ]\n };\n};\n","/**\n * @module Agent Status Hooks\n * @description\n */\nimport { getMoment, parseTimeString, getDayOfWeek } from '@/js/utils/time';\n\n/**\n * @function checkStatus\n * @description Compare datetime to see if open\n */\nconst checkStatus = ( today ) => {\n if ( today && today.openTime !== undefined && today.closeTime !== undefined ) {\n // Parse the time string\n const openTime = parseTimeString( today.openTime );\n const closeTime = parseTimeString( today.closeTime );\n\n // number of month & day\n const date = new Date();\n const month = date.getMonth();\n const day = date.getDate();\n\n // Holiday hours for December\n if ( month === 11 ) {\n // 24th & 31st: Open at 8am EST, close at 6pm EST\n if ( day === 24 || day === 31 ) {\n openTime.hour = 8;\n closeTime.hour = 18;\n }\n\n // 25th: Closed\n if ( day === 25 ) {\n openTime.hour = 0;\n closeTime.hour = 0;\n }\n }\n\n // Compare time strings to current time.\n return {\n isOpen: getMoment().isBetween( openTime, closeTime, 'minute' ),\n openTime,\n closeTime\n };\n }\n};\n\n/**\n * @function fetchStatus\n * @description Get the hours of our call center\n */\nconst fetchStatus = ( openHours ) => {\n const today = openHours.find( ( hour ) => hour.dayOfWeek === getDayOfWeek() );\n return checkStatus( today );\n};\n\n\n/**\n * @function useAgentStatus\n * @description Our agent status API\n */\nexport const useAgentStatus = () => fetchStatus;\n\nexport default useAgentStatus;\n","/**\n * @module Countdown Timer\n * @description\n */\n\n/**\n * @function countdown\n * @description Given an end date, pass the time remaining to the provided callback\n */\nexport const countdown = ( endDate, callback = () => { } ) => {\n const countdownTimer = setInterval( () => {\n const now = new Date().getTime();\n const timeLeft = endDate - now;\n\n if ( timeLeft < 0 ) {\n callback( {\n hours: 0,\n minutes: 0,\n seconds: 0\n } );\n clearInterval( countdownTimer );\n return;\n }\n\n const hours = Math.floor( ( timeLeft % ( 1000 * 60 * 60 * 24 ) ) / ( 1000 * 60 * 60 ) );\n const minutes = Math.floor( ( timeLeft % ( 1000 * 60 * 60 ) ) / ( 1000 * 60 ) );\n const seconds = Math.floor( ( timeLeft % ( 1000 * 60 ) ) / 1000 );\n\n callback( {\n hours,\n minutes,\n seconds\n } );\n }, 1000 );\n};\n\nexport default countdown;\n","/**\n * @module StickyNav\n * @description Global Sticky Nav\n */\nimport {\n useState, useEffect, useContext, useCallback\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Link from 'next/link';\nimport { useAgentStatus } from '@/hooks/useAgentStatus';\nimport countdown from '@/js/utils/countdown';\nimport { stringify } from '@/js/utils/filters';\nimport { FuelContext } from '@/providers/fuel-provider';\nimport { trackEvent } from '@/js/helpers/tracking';\nimport styles from './index.module.css';\nimport { formatPhoneNumber } from '@/js/helpers/fuse';\nimport { DEFAULT_FUSE_NUMBER } from '@/js/constants/cohesion';\n\n/**\n * @function Component\n * @description\n */\nconst Component = ( { ...props } ) => {\n const {\n hideOnMobile = false,\n hideOnMobileAndDesktop = false\n } = props;\n const [ isOpen, setIsOpen ] = useState( true );\n const [ time, setTime ] = useState( null );\n const {\n cartHeavy, openHours, fuseNumber\n } = useContext( FuelContext );\n const phoneNumber = formatPhoneNumber( fuseNumber || DEFAULT_FUSE_NUMBER );\n const fetchStatus = useAgentStatus( );\n\n /**\n * @function handleClick\n * @description handle tagular tracking\n */\n const handleClick = ( event ) => {\n const { target } = event;\n const { text, actionOutcome } = JSON.parse( target.getAttribute( 'data-payload' ) );\n const data = {\n elementType: 'BUTTON',\n location: 'GLOBAL',\n position: 'HEADER',\n text,\n actionOutcome\n };\n\n trackEvent( { action: 'elementClicked', data, event } );\n };\n\n /**\n * @function initSticky\n * @description Begin sticky nav\n */\n const initSticky = useCallback( () => {\n const primary = document.querySelector( '#primary' );\n const navbar = document.querySelector( '.site-header' );\n\n if ( primary ) primary.style.paddingTop = `${ navbar.clientHeight }px`;\n }, [] );\n\n /**\n * @function useEffect\n * @description Kick off this modules functions\n */\n useEffect( () => {\n if ( openHours.length === 0 ) return;\n const data = fetchStatus( openHours );\n setIsOpen( data?.isOpen );\n initSticky();\n\n if ( ! data?.isOpen ) return;\n\n const { minute, hour, second } = data.closeTime;\n\n const endDate = new Date();\n endDate.setHours( parseInt( hour, 10 ), parseInt( minute, 10 ), parseInt( second, 10 ) );\n\n countdown( endDate.getTime(), setTime );\n\n window.addEventListener( 'resize', initSticky );\n }, [ fetchStatus, initSticky, openHours ] );\n\n useEffect( () => {\n initSticky();\n }, [ cartHeavy, initSticky, isOpen ] );\n\n return <>\n { isOpen && cartHeavy === false && (\n
\n
\n
\n

\n We're open! \n { time && (\n <>\n { time.hours } { time.hours === 1 ? 'hour' : 'hours' } \n { time.minutes } { time.minutes === 1 ? 'minute' : 'minutes' } \n { time.seconds } { time.seconds === 1 ? 'second' : 'seconds' } \n \n )}\n

\n\n

\n \n Call now { phoneNumber }\n \n

\n
\n
\n
/* */\n ) }\n ;\n};\n\nComponent.propTypes = {\n hideOnMobile: PropTypes.bool,\n hideOnMobileAndDesktop: PropTypes.bool\n};\n\nexport default Component;\n","/**\n * @module SiteMenu\n * @description Site Menu\n */\nimport {\n useEffect, useContext, useRef\n} from 'react';\nimport Link from 'next/link';\nimport Image from 'next/legacy/image';\nimport PropTypes from 'prop-types';\nimport { useSiteNavigation } from '@/hooks/useSiteNavigation';\nimport { stringify } from '@/js/utils/filters';\nimport { fastly } from '@/js/utils/helpers';\nimport { FuelContext } from '@/providers/fuel-provider';\nimport { trackEvent } from '@/js/helpers/tracking';\nimport { addPageAction } from '@/js/utils/new-relic';\n\n// Components\nimport StickyNav from '@/blocks/StickyNav';\nimport { MonarchSlot } from '@redventures/cohesion-utils-react';\n\n/**\n * @function SiteNavigation\n * @description\n */\nexport const SiteNavigation = ( { ...props } ) => {\n const {\n menus = [\n {\n title: 'Shop Plans',\n href: '/plans-pricing',\n links: []\n },\n {\n title: 'Business',\n href: 'https://business.frontier.com/',\n links: []\n },\n {\n title: 'Current Customers',\n href: 'https://frontier.com/helpcenter',\n links: []\n }\n ],\n headerLinks = [\n { icon: 'icon-shopping-cart', href: null, title: 'Buy' }\n ]\n } = props;\n\n const { init } = useSiteNavigation();\n\n const { clickThrough } = useContext( FuelContext );\n\n const didInitRef = useRef( false );\n\n /**\n * @function handleClick\n * @description fire off tagular events\n */\n const handleClick = ( event ) => {\n const { target } = event;\n const payload = JSON.parse( target.getAttribute( 'data-payload' ) );\n const { text, actionOutcome, position } = payload;\n\n const data = {\n elementType: 'BUTTON',\n location: 'GLOBAL',\n position,\n text,\n actionOutcome\n };\n\n trackEvent( { action: 'elementClicked', data, event } );\n };\n\n /**\n * @function handleBuyClick\n * @description fire New Relic cart entrance event\n */\n const handleBuyClick = ( event ) => {\n addPageAction( 'cartEntrance', { method: 'MASTHEAD' } );\n handleClick( event );\n };\n\n /**\n * @function useEffect\n * @description Kick off this modules functions\n */\n useEffect( () => {\n if ( didInitRef.current === false ) {\n didInitRef.current = true;\n init();\n }\n }, [ ] ); /* eslint-disable-line react-hooks/exhaustive-deps */\n\n return <>\n \n \n \n
\n\n
\n
\n { /* */ }\n
\n\n\n
\n

\n Frontier Communications\n \n\n \n\n \n

\n
{ /* */ }\n
{ /* */ }\n\n
\n
\n\n
\n { /* */ }\n
{ /* */ }\n\n
\n
    \n { headerLinks.map( ( link, index ) => (\n
  • \n \n\n { link.title } \n\n \n
  • \n ) ) }\n
\n
{ /* */ }\n\n
\n
    \n
  • \n \n Buy\n \n
  • \n
\n
{ /* */ }\n
{ /* */ }\n
{ /* */ }\n
\n ;\n};\n\nSiteNavigation.propTypes = {\n menus: PropTypes.arrayOf(\n PropTypes.shape( {\n title: PropTypes.string,\n links: PropTypes.arrayOf(\n PropTypes.shape( {\n href: PropTypes.string,\n title: PropTypes.string,\n target: PropTypes.string\n } )\n )\n } )\n ),\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape( {\n href: PropTypes.string,\n title: PropTypes.string,\n target: PropTypes.string\n } )\n )\n};\n\nexport default SiteNavigation;\n","/**\n * @module Header\n * @description Site Header\n */\nimport Head from 'next/head';\n\n// Tracking & Scripts\nimport { useState, useEffect, useContext } from 'react';\nimport { GTMScript } from '@/resources/GTM';\nimport { AdobeSnippet } from '@/resources/Adobe';\nimport NewRelicSnippet from '@/resources/NewRelic';\nimport SchemaMarkup from '@/resources/SchemaMarkup';\nimport CookieConsent from '@/resources/CookieConsent';\n\n// Components\nimport SiteNavigation from '@/blocks/SiteNavigation';\n\n// Helpers\nimport { getAsset } from '@/js/utils/helpers';\nimport { useAgentStatus } from '@/hooks/useAgentStatus';\nimport { FuelContext } from '@/providers/fuel-provider';\n\n/**\n * @function Header\n * @description Default Header\n */\nexport const Header = () => {\n const siteTitle = 'Internet.frontier.com';\n const siteUrl = '/';\n const siteDescription = 'Enjoy fiber internet, TV & phone services from Frontier. Explore the best Internet, TV, and phone packages and deals we offer. More digital solutions available.';\n const faviconPath = getAsset( '/img/favicons/' );\n const { openHours } = useContext( FuelContext );\n\n const [ isOpen, setIsOpen ] = useState( true );\n const fetchStatus = useAgentStatus( );\n\n\n useEffect( () => {\n if ( openHours.length === 0 ) return;\n const data = fetchStatus( openHours );\n setIsOpen( data?.isOpen );\n }, [ fetchStatus, openHours ] );\n\n return (\n <>\n \n \n \n \n \n\n { /* PWA Info */ }\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 \n\n \n \n \n \n \n \n { /* END PWA Info */ }\n\n { /* Image Preconnects */ }\n \n \n \n\n { /* 3rd Party / External Scripts */ }\n \n { ( process.env.environment === 'production' || process.env.environment === 'development' ) && }\n { process.env.environment === 'production' && }\n { process.env.environment === 'production' && }\n\n
\n Skip to content\n\n \n
{ /* */ }\n \n );\n};\n\nexport default Header;\n","/**\n * @module Site Legal\n * @description Footer Site Legal\n */\nimport { useContext } from 'react';\nimport { ContentProviderContext } from '../index';\n\n/**\n * @function Component\n * @description\n */\nconst Component = () => {\n const { legal } = useContext( ContentProviderContext );\n\n return (\n <>\n
\n { legal && [ ...legal ].map( ( item, index ) => (\n \n ) ) }\n
\n \n );\n};\n\nexport default Component;\n","/**\n * @module Footer\n * @description Site Footer\n */\nimport Link from 'next/link';\nimport PropTypes from 'prop-types';\nimport SiteLegal from '@/providers/content-provider/components/SiteLegal';\n\n/**\n * @function Footer\n * @description Default Footer\n */\nconst Footer = ( { ...props } ) => {\n const {\n links = [\n {\n title: 'Plans & Pricing',\n href: '/plans-pricing'\n },\n {\n title: 'Customer Support',\n href: 'https://frontier.com/helpcenter'\n },\n {\n title: 'Online Bill Pay',\n href: 'https://frontier.com/helpcenter/categories/billing'\n },\n {\n title: 'Business',\n href: 'https://business.frontier.com/'\n },\n {\n title: 'Manage Account',\n href: 'https://frontier.com/login'\n },\n {\n title: 'Order Online',\n href: '/buy'\n }\n ],\n footerLinks = [\n { href: 'https://frontier.com/corporate/privacy-policy', title: 'Privacy Policy' },\n { href: '/terms', title: 'Terms & Conditions' },\n { href: 'https://frontier.com', title: 'Accessibility' },\n { href: 'https://frontier.com/corporate/privacy-policy-california', title: 'California Privacy Policy' },\n { href: 'https://frontier.com/corporate/privacy-policy-connecticut-texas', title: 'CT, TX Privacy Policy' }\n ],\n socialLinks = [\n { icon: 'icon-twitter-x', href: 'https://x.com/FrontierCorp', title: 'X' },\n { icon: 'icon-facebook', href: 'https://www.facebook.com/FrontierInternet', title: 'Facebook' },\n { icon: 'icon-linkedin', href: 'https://www.linkedin.com/company/163906', title: 'LinkedIn' },\n { icon: 'icon-youtube', href: 'https://www.youtube.com/user/FrontierCorp', title: 'YouTube' },\n { icon: 'icon-instagram', href: 'https://www.instagram.com/frontierinternet', title: 'Instagram' }\n ]\n } = props;\n\n return <>\n
\n
\n \n
{ /* .site-footer-primary */ }\n\n
\n \n

© { new Date().getFullYear() } Frontier Communications Parent, Inc. All rights reserved.

\n\n \n\n { /* */ }\n
{ /* .site-footer-secondary */ }\n
{ /* */ }\n ;\n};\n\nFooter.propTypes = {\n links: PropTypes.arrayOf(\n PropTypes.shape( {\n title: PropTypes.string,\n links: PropTypes.arrayOf(\n PropTypes.shape( {\n href: PropTypes.string,\n title: PropTypes.string,\n target: PropTypes.string\n } )\n )\n } )\n ),\n footerLinks: PropTypes.arrayOf(\n PropTypes.shape( {\n href: PropTypes.string,\n title: PropTypes.string,\n target: PropTypes.string\n } )\n ),\n socialLinks: PropTypes.arrayOf(\n PropTypes.shape( {\n icon: PropTypes.string,\n href: PropTypes.string,\n title: PropTypes.string\n } )\n )\n};\n\nexport default Footer;\n","/**\n * @module Annotation\n * @description Legal Annotation\n */\nimport { useState, useEffect, useRef } from 'react';\n\n/**\n * @function Component\n * @description\n */\nconst Component = ( { hash, content, disclosures } ) => {\n const [ annotationIndex, setAnnotationIndex ] = useState();\n\n const renderedHashRef = useRef( '' );\n\n /**\n * @function useEffect\n * @description Kick off this modules functions\n */\n useEffect( () => {\n const legal = [ ...disclosures ].filter( ( disclosure ) => {\n if ( disclosure.hash === hash ) {\n renderedHashRef.current = disclosure.hash;\n return true;\n } if ( disclosure.alternateHash?.includes( hash ) ) {\n renderedHashRef.current = disclosure.hash;\n return true;\n }\n return false;\n } )[ 0 ];\n\n if ( ! legal ) {\n return;\n }\n\n setAnnotationIndex( legal.annotationIndex );\n }, [ disclosures, hash ] );\n\n return (\n <>\n { content }\n \n Legal Annotation { annotationIndex }\n \n \n );\n};\n\nexport default Component;\n","/**\n * @module Content Provider Legal Logic\n * @description\n */\nimport { createRoot } from 'react-dom/client';\nimport Annotation from '../components/Annotation';\n\n/**\n * @function filterLegal\n * @description Filter out the legal we don't need\n */\nexport const filterLegal = ( node, disclosures ) => {\n const legal = new Set();\n\n if ( ! disclosures ) {\n return [];\n }\n\n const els = node.querySelectorAll( '[data-legal]' );\n\n els.forEach( ( el ) => {\n const hash = el.getAttribute( 'data-legal' );\n const matched = disclosures.filter( ( disclosure ) => disclosure.hash === hash )[ 0 ];\n\n if ( ! matched ) {\n return;\n }\n\n legal.add( matched );\n el.setAttribute( 'data-legal-set', false );\n } );\n\n return {\n legal,\n legalNodes: els\n };\n};\n\n/**\n * @function setAnnotationIndex\n * @description Set an index starting at 1 to match legal to footer\n */\nexport const setAnnotationIndex = ( legal = new Set(), setLegal ) => {\n let annotationIndex = 1;\n\n legal.forEach( ( disclosure ) => {\n legal.forEach( ( disclosure2 ) => {\n if ( disclosure !== disclosure2 ) {\n if ( disclosure.full === disclosure2.full ) {\n if ( disclosure.alternateHash ) {\n disclosure.alternateHash.push( disclosure2.hash );\n } else {\n disclosure.alternateHash = [ disclosure2.hash ];\n }\n legal.delete( disclosure2 );\n }\n }\n } );\n } );\n\n legal.forEach( ( item ) => {\n item.annotationIndex = annotationIndex;\n annotationIndex += 1;\n } );\n\n setLegal( legal );\n};\n\n/**\n * @function insertAnnotations\n * @description Place annotations within their respective DOM nodes.\n */\nexport const insertAnnotations = ( disclosures, nodes = [] ) => {\n nodes.forEach( ( node ) => {\n const isSet = node.getAttribute( 'data-legal-set' );\n\n if ( isSet === 'true' ) {\n return;\n }\n\n const hash = node.getAttribute( 'data-legal' );\n const content = node.textContent;\n\n const root = createRoot( node );\n root.render( );\n node.setAttribute( 'data-legal-set', true );\n } );\n};\n","/**\n * @module Content Provider Hooks - Legal\n * @description\n */\nimport {\n useRef, useCallback, useContext\n} from 'react';\nimport { ContentProviderContext } from '../index';\nimport { filterLegal, setAnnotationIndex, insertAnnotations } from '../utils/legal';\n\n/**\n * @function useContentProviderLegal\n * @description Locate all legal hash keys on site and begin setup.\n */\nconst useContentProviderLegal = () => {\n const { disclosures, setLegal } = useContext( ContentProviderContext );\n const ref = useRef( null );\n\n const setRef = useCallback( ( node ) => {\n cohesion( 'ready', () => {\n if ( node ) {\n setTimeout( () => {\n const { legal, legalNodes } = filterLegal( node, disclosures );\n setAnnotationIndex( legal, setLegal );\n insertAnnotations( legal, legalNodes );\n }, 1500 );\n }\n\n ref.current = node;\n } );\n }, [ ref, disclosures, setLegal ] );\n\n return [ setRef ];\n};\n\nexport default useContentProviderLegal;\n","/**\n * @module Template - Default\n * @description Default Template\n */\nimport PropTypes from 'prop-types';\n\n// Partials\nimport Header from '@/blocks/Header';\nimport Footer from '@/blocks/Footer';\n\n// Content Provider\nimport useContentProviderLegal from '@/providers/content-provider/hooks/useContentProviderLegal';\n\n/**\n * @function Template\n * @description\n */\nconst Template = ( {\n title, hero, primary, modal\n} ) => {\n const [ ref ] = useContentProviderLegal();\n return (\n <>\n
\n\n
\n
\n
\n
\n

{ title }

\n { hero }\n
\n\n
\n { primary }\n
\n
\n
\n\n { modal }\n
{ /* */ }\n\n