{"version":3,"sources":["webpack://@verndale/toolkit/./src/js/helpers/index.js","webpack://@verndale/toolkit/./src/js/helpers/times.js","webpack://@verndale/toolkit/./src/js/modules/find-a-community-header.js","webpack://@verndale/toolkit/./src/js/modules/hamburger-menu.js","webpack://@verndale/toolkit/./src/js/modules/schedule-a-tour-headless.js","webpack://@verndale/toolkit/./src/js/modules/header.js","webpack://@verndale/toolkit/./src/js/modules/make-header-accessible.js"],"names":["isDevice","userAgent","isEmpty","element","isInViewport","rect","checkTrustarc","cookie","permit","getFakeLocation","getCurrentPathnameWithoutLanguage","pathname","language","getTimesConfig","$datePicker","isToday","today","allOptions","parsedOptions","minDatePicker","hour","minutes","item","index","tomorrow","buildOptionsHtml","items","FindACommunityHeader","dom","openPrimaryNavChildMenu","closePrimaryNavChildMenu","displayPrimaryNavPanel","focusOutPrimaryNav","e","KEYS","headerPanel","data","serialize","url","focusTrap","HamburgerMenu","el","i","x","ScheduleATour","event","$input","splited","value","todayFormated","$dateInput","errorMessage","optionsHtml","Module","Component","insetHamburguer","id","hasClickedOutSidePanel","hasClickedPrimaryNavTrigger","hasClickedFindACommunityTrigger","topScrollPros","headerScrollPos","BREAKPOINTS","Headroom","panel","MakeHeaderAccessible","commonConfig","Cookies","isCommunity","$communityOrTour","list","link","currentHost","text","href","target","setLocalStorageData","title","banner","dropdown","handlePrimaryNavTriggerClick","firstLink","KEYS_DIRECTION"],"mappings":"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","file":"Areas/SunriseSeniorLiving/Scripts/143.b3924c9500ff8d3e6385.bundle.js","sourcesContent":["// /**\n// * Checks browser is running on a native mobile device\n// */\nexport const isDevice = () => {\n const userAgent = navigator.userAgent || navigator.vendor || window.opera;\n\n if (\n /windows phone/i.test(userAgent) ||\n /android/i.test(userAgent) ||\n (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream)\n ) {\n return true;\n }\n\n return false;\n};\n\nexport const isEmpty = element => {\n if (element.textContent.trim() === '') {\n return true;\n }\n};\n\nexport const isInViewport = element => {\n const rect = element.getBoundingClientRect();\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n rect.right <= (window.innerWidth || document.documentElement.clientWidth)\n );\n};\n\nexport const checkTrustarc = (cookie, permit) => {\n if (cookie) {\n if (!(String(cookie)).includes(permit)) {\n return true;\n }\n\n return false;\n }\n};\n\n// for local development purposes\nexport const getFakeLocation = () => {\n if (window.location.hostname === 'localhost') {\n return {\n lat: 42.3612,\n lng: -71.0519,\n countryState: 'MA',\n zipCode: '02108'\n }\n }\n return {};\n};\n\nexport const getCurrentPathnameWithoutLanguage = () => {\n const pathname = window.location.pathname;\n const language = pathname.split('/')[1];\n\n if (language === 'en' || language === 'fr') {\n return pathname.replace(`/${language}`, '');\n }\n\n return pathname;\n}\n","export const getTimesConfig = ($datePicker, isToday, today) => {\n const allOptions = [\n { label: 'Select...', value: '' },\n { label: '9:00 am - 10:00 am ', value: '9:00am-10:00am' },\n { label: '10:00 am - 11:00 am ', value: '10:00am-11:00am' },\n { label: '11:00 am - 12:00 pm', value: '11:00am-12:00pm' },\n { label: '12:00 pm - 1:00 pm', value: '12:00pm-1:00pm' },\n { label: '1:00 pm - 2:00 pm', value: '1:00pm-2:00pm' },\n { label: '2:00 pm - 3:00 pm', value: '2:00pm-3:00pm' },\n { label: '3:00 pm - 4:00 pm', value: '3:00pm-4:00pm' },\n { label: '4:00 pm - 5:00 pm', value: '4:00pm-5:00pm' },\n { label: '5:00 pm - 6:00 pm', value: '5:00pm-6:00pm' }\n ];\n\n let parsedOptions = allOptions,\n minDatePicker = new Date()\n .toLocaleString('sv', {\n timeZone: 'America/New_York',\n year: 'numeric',\n month: '2-digit',\n day: '2-digit'\n })\n .split(' ')[0]\n .split('/')\n .reverse()\n .join('-');\n\n const hour = Number(\n new Date()\n .toLocaleTimeString('en-US', {\n timeZone: 'America/New_York',\n hour: '2-digit',\n hour12: false\n })\n .split(' ')[0]\n );\n const minutes = Number(\n new Date().toLocaleTimeString('en-US', {\n timeZone: 'America/New_York',\n minute: '2-digit'\n })\n );\n\n if (\n ((hour === 6 && minutes >= 1) || (hour === 7 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (index === 1) return false;\n return true;\n });\n } else if (\n ((hour === 7 && minutes >= 1) || (hour === 8 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (index === 1 || index === 2) return false;\n return true;\n });\n } else if (\n ((hour === 8 && minutes >= 1) || (hour === 9 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (index === 1 || index === 2 || index === 3) return false;\n return true;\n });\n } else if (\n ((hour === 9 && minutes >= 1) || (hour === 10 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (index === 1 || index === 2 || index === 3 || index === 4)\n return false;\n return true;\n });\n } else if (\n ((hour === 10 && minutes >= 1) || (hour === 11 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (\n index === 1 ||\n index === 2 ||\n index === 3 ||\n index === 4 ||\n index === 5\n )\n return false;\n return true;\n });\n } else if (\n ((hour === 11 && minutes >= 1) || (hour === 12 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (\n index === 1 ||\n index === 2 ||\n index === 3 ||\n index === 4 ||\n index === 5 ||\n index === 6\n )\n return false;\n return true;\n });\n } else if (\n ((hour === 12 && minutes >= 1) || (hour === 13 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (\n index === 1 ||\n index === 2 ||\n index === 3 ||\n index === 4 ||\n index === 5 ||\n index === 6 ||\n index === 7\n )\n return false;\n return true;\n });\n } else if (\n ((hour === 13 && minutes >= 1) || (hour === 14 && minutes === 0)) &&\n isToday\n ) {\n parsedOptions = allOptions.filter((item, index) => {\n if (\n index === 1 ||\n index === 2 ||\n index === 3 ||\n index === 4 ||\n index === 5 ||\n index === 6 ||\n index === 7 ||\n index === 8\n )\n return false;\n return true;\n });\n } else if (hour >= 14 && minutes >= 1) {\n const tomorrow = new Date(today);\n tomorrow.setDate(tomorrow.getDate() + 1);\n minDatePicker = `${tomorrow\n .toLocaleString('sv', {\n timeZone: 'America/New_York',\n year: 'numeric',\n month: '2-digit',\n day: '2-digit'\n })\n .split(' ')[0]\n .split('/')\n .reverse()\n .join('-')}`;\n }\n\n if ($datePicker.value < $datePicker.min) {\n parsedOptions = [{ label: 'Select...', value: '' }];\n }\n\n return { parsedOptions, minDatePicker };\n};\n\nexport const buildOptionsHtml = items => {\n return items\n .map(\n item => `\n \n `\n )\n .join('');\n};\n","import * as focusTrap from 'focus-trap';\nimport { KEYS } from '../constants';\nimport serialize from 'form-serialize';\n\nclass FindACommunityHeader {\n constructor({\n dom,\n openPrimaryNavChildMenu,\n closePrimaryNavChildMenu,\n displayPrimaryNavPanel,\n focusOutPrimaryNav\n }) {\n this.dom = {\n ...dom,\n $trigger: dom.$header._$('.find-a-community-header-trigger'),\n $panel: dom.$header._$('.find-a-community-header'),\n $form: dom.$header._$('.find-a-community-header__form')\n };\n\n this.openPrimaryNavChildMenu = openPrimaryNavChildMenu;\n this.closePrimaryNavChildMenu = closePrimaryNavChildMenu;\n this.displayPrimaryNavPanel = displayPrimaryNavPanel;\n this.focusOutPrimaryNav = focusOutPrimaryNav;\n\n this.id = 'find-a-community-header';\n this.expandedClass = 'find-a-community-header-trigger--expanded';\n\n this.locationName = this.dom.$form?.dataset?.locationName;\n this.countryName = this.dom.$form?.dataset?.countryName;\n this.careName = this.dom.$form?.dataset?.careName;\n\n this.addListeners();\n this.initiateFocusTrap();\n }\n\n addListeners() {\n this.dom.$trigger?._on('keydown', this.handleTriggerKeyDown.bind(this));\n this.dom.$trigger?._on('click', this.handleTriggerClick.bind(this));\n this.dom.$form?._on?.('submit', this.handleSubmit.bind(this));\n document._on('click', this.outterClickHandler.bind(this));\n }\n\n handleTriggerKeyDown(e) {\n switch (e.keyCode) {\n case KEYS.ESC:\n this.handleClose();\n break;\n case KEYS.DOWN:\n case KEYS.ENTER:\n e.preventDefault();\n this.handleTriggerClick(e);\n this.panelFocusTrap.activate();\n break;\n }\n }\n\n outterClickHandler(e) {\n const headerPanel = document.querySelector('.header__panel');\n if (headerPanel && !headerPanel.contains(e.target)) {\n this.handleClose();\n }\n }\n\n handleTriggerClick() {\n if (this.dom.$trigger.classList.contains(this.expandedClass)) {\n this.handleClose();\n } else {\n this.openPrimaryNavChildMenu();\n this.dom.$trigger.classList.add(this.expandedClass);\n this.displayPrimaryNavPanel(this.id);\n this.focusOutPrimaryNav();\n }\n }\n\n handleClose() {\n this.focusOut();\n this.closePrimaryNavChildMenu();\n }\n\n handleSubmit(e) {\n e.preventDefault();\n const data = serialize(this.dom.$form, { hash: true });\n const isDataEntered = data[this.locationName] || data[this.careName];\n let url = isDataEntered\n ? this.dom.$form.dataset.mapViewUrl\n : this.dom.$form.dataset.countryViewUrl;\n url = `${url}?${serialize(this.dom.$form)}`;\n this.dom.$form.action = url;\n this.dom.$form.submit();\n }\n\n initiateFocusTrap() {\n this.panelFocusTrap = focusTrap.createFocusTrap(this.dom.$childNavWrapper, {\n allowOutsideClick: false,\n onDeactivate: this.handleClose.bind(this),\n initialFocus: () => {\n return this.dom.$panel.getElementsByTagName('INPUT')[0];\n }\n });\n }\n\n focusOut() {\n this.dom.$trigger?.classList.remove(this.expandedClass);\n }\n}\n\nexport default FindACommunityHeader;\n","class HamburgerMenu {\n constructor({\n dom,\n closePrimaryNavChildMenu\n }) {\n\n this.dom = {\n ...dom,\n $trigger: dom.$header._$$('.hamburger-menu-items__trigger'),\n $close: dom.$header._$('.hamburger-menu .header__back-to-top-level-trigger'),\n $menus: dom.$header._$$('.hamburger-menu__child-menu')\n }\n\n this.closePrimaryNavChildMenu = closePrimaryNavChildMenu;\n this.openedClass = 'header--hamburger-menu-opened';\n this.currentChildMenuClass = 'hamburger-menu__child-menu--current';\n\n this.addListeners();\n }\n\n addListeners() {\n this.dom.$trigger.forEach((el, i) => el._on('click', () => this.open(i)));\n this.dom.$close._on('click', this.close.bind(this));\n }\n\n open(index) {\n this.dom.$header.classList.add(this.openedClass);\n this.dom.$menus.forEach(x => x.classList.remove(this.currentChildMenuClass));\n this.dom.$menus[index].classList.add(this.currentChildMenuClass);\n }\n\n close() {\n this.dom.$header.classList.remove(this.openedClass);\n }\n}\n\nexport default HamburgerMenu;\n","import * as focusTrap from 'focus-trap';\nimport { KEYS } from '../constants';\nimport Cookies from 'js-cookie';\nimport * as Coveo from 'coveo-search-ui';\nimport { getTimesConfig, buildOptionsHtml } from '../helpers/times';\n\nclass ScheduleATour {\n constructor({\n dom,\n openPrimaryNavChildMenu,\n closePrimaryNavChildMenu,\n displayPrimaryNavPanel,\n focusOutPrimaryNav\n }) {\n this.dom = {\n ...dom,\n $trigger: dom.$header._$('.schedule-a-tour-trigger'),\n $panel: dom.$header._$('.schedule-a-tour'),\n $datePicker: dom.$header._$('duet-date-picker'),\n $timeSelect: dom.$header._$('.schedule-a-tour__time select'),\n $communityPage: document.querySelector('.community-landing-page-coveo')\n };\n\n this.openPrimaryNavChildMenu = openPrimaryNavChildMenu;\n this.closePrimaryNavChildMenu = closePrimaryNavChildMenu;\n this.displayPrimaryNavPanel = displayPrimaryNavPanel;\n this.focusOutPrimaryNav = focusOutPrimaryNav;\n\n // this.location = Cookies.get('ssl-location');\n // this.apiKey = this.dom.$panel.dataset.apiK;\n if (this.dom.$datePicker) this.dom.$datePicker.firstDayOfWeek = 0;\n this.wasValidated = false;\n\n // this.miles = 0.000621371;\n // this.km = 0.001;\n // this.unit = this.dom.$panel.dataset.unit === 'mi' ? this.miles : this.km;\n\n // if (this.dom.$communityPage) {\n // this.ssl_latitude = this.dom.$communityPage.dataset.sslLatitude;\n // this.ssl_longitude = this.dom.$communityPage.dataset.sslLongitude;\n // this.ssl_communityname = this.dom.$communityPage.dataset.sslCommunityname;\n // this.ssl_thumbnailimage =\n // this.dom.$communityPage.dataset.sslThumbnailimage;\n // this.ssl_mainimagedesktop =\n // this.dom.$communityPage.dataset.sslMainimagedesktop;\n // this.ssl_pricingandavailabilityphone =\n // this.dom.$communityPage.dataset.sslPricingandavailabilityphone;\n // this.ssl_residentsandfamilyphone =\n // this.dom.$communityPage.dataset.sslResidentsandfamilyphone;\n // this.ssl_contextlanguage =\n // this.dom.$communityPage.dataset.sslContextlanguage;\n // this.ssl_communityid = this.dom.$communityPage.dataset.sslCommunityid;\n // }\n\n // Current community\n // if (Cookies.get('current_community')) {\n // this.currentCommunity = JSON.parse(Cookies.get('current_community'));\n // } else if (this.dom.$communityPage && this.ssl_communityid) {\n // this.currentCommunity = {\n // ssl_latitude: this.ssl_latitude,\n // ssl_longitude: this.ssl_longitude,\n // ssl_communityname: this.ssl_communityname,\n // ssl_thumbnailimage: this.ssl_thumbnailimage\n // ? this.ssl_thumbnailimage\n // : this.ssl_mainimagedesktop,\n // ssl_pricingandavailabilityphone: this.ssl_pricingandavailabilityphone,\n // ssl_residentsandfamilyphone: this.ssl_residentsandfamilyphone,\n // ssl_contextlanguage: this.ssl_contextlanguage,\n // ssl_communityid: this.ssl_communityid,\n // ssl_communitylink: this.communityUrl\n // };\n // }\n\n // // Recently viewed communities\n // if (Cookies.get('recent_communities')) {\n // this.recentlyViewedCommunities = JSON.parse(\n // Cookies.get('recent_communities')\n // );\n // }\n\n // if (this.location) {\n // this.userLocation = JSON.parse(this.location);\n // }\n\n //this.recentCommunitiesHandler();\n\n this.id = 'schedule-a-tour';\n this.expandedClass = 'schedule-a-tour-trigger--expanded';\n // this.configureEndpoint();\n // this.addCoveoEventHandlers();\n this.addListeners();\n //this.getCommunity();\n this.initiateFocusTrap();\n\n // if (!this.location) {\n // const changeCommunityLink = document.querySelector(\n // '.schedule-a-tour-current-community__cta'\n // );\n // changeCommunityLink.href =\n // this.dom.$panel.dataset.changeCommunityLinkNoLocation;\n // }\n this.timeHandler();\n }\n\n addListeners() {\n this.dom.$trigger._on('keydown', this.handleTriggerKeyDown.bind(this));\n this.dom.$trigger._on('click', this.handleTriggerClick.bind(this));\n document._on('click', this.outterClickHandler.bind(this));\n\n this.dom.$datePicker.addEventListener('duetChange', event => {\n this.currentDate = event.detail.valueAsDate;\n this.timeHandler();\n });\n\n this.dom.$datePicker.addEventListener('duetBlur', event => {\n const $input = this.dom.$datePicker.querySelector('input');\n const splited = this.dom.$datePicker.value.split('-');\n $input.value = `${this.checkZero(splited[1])}/${this.checkZero(\n splited[2]\n )}/${splited[0]}`;\n });\n }\n\n checkZero(value) {\n if (value.split('')[0] === '0') return value.split('')[1];\n\n return value;\n }\n\n // addCoveoEventHandlers() {\n // Coveo.$$(this.dom.$panel).on(\n // 'buildingQuery',\n // this.handleCoveoBuildingQuery.bind(this)\n // );\n // Coveo.$$(this.dom.$panel).on(\n // 'preprocessResults',\n // this.handleCoveoPreprocessResults.bind(this)\n // );\n // }\n\n timeHandler() {\n this.dom.$timeSelect.innerHTML = '';\n\n const todayFormated = new Date()\n .toLocaleString('sv', {\n timeZone: 'America/New_York',\n year: 'numeric',\n month: '2-digit',\n day: '2-digit'\n })\n .split(' ')[0]\n .split('/')\n .reverse()\n .join('-');\n const isToday = this.dom.$datePicker.value === todayFormated;\n const today = new Date().toLocaleString('en-US', {\n timeZone: 'America/New_York'\n });\n\n const { parsedOptions, minDatePicker } = getTimesConfig(\n this.dom.$datePicker,\n isToday,\n today\n );\n this.dom.$datePicker.min = minDatePicker;\n\n if (parsedOptions.length === 1) {\n const $dateInput =\n this.dom.$datePicker.querySelector('.duet-date__input');\n const errorMessage = this.dom.$datePicker.dataset.pristineNoTimes;\n setTimeout(() => {\n $dateInput.pristine.errors = [];\n $dateInput.pristine.self.addError($dateInput, errorMessage);\n });\n }\n\n if (!this.wasValidated) {\n this.dom.$datePicker.value = minDatePicker;\n this.wasValidated = true;\n this.timeHandler();\n return;\n }\n\n const optionsHtml = buildOptionsHtml(parsedOptions);\n\n this.dom.$timeSelect.innerHTML = optionsHtml;\n }\n\n // configureEndpoint() {\n // if (this.dom.$panel.dataset.organizationId.length > 0) {\n // this.organizationId = this.dom.$panel.dataset.organizationId;\n // Coveo.SearchEndpoint.configureCloudV2Endpoint(\n // this.organizationId,\n // this.apiKey\n // );\n // } else Coveo.SearchEndpoint.configureSampleEndpointV2();\n // }\n\n // locationInit() {\n // fetch(`${this.dom.$panel.dataset.geoEndpoint}`)\n // .then(data => data.json())\n // .then(res => {\n // this.lat = res.Latitude;\n // this.long = res.Longitude;\n // Coveo.init(this.dom.$panel);\n\n // Coveo.logSearchEvent(\n // this.dom.$panel,\n // {\n // name: 'scheduleATour',\n // type: ''\n // },\n // {\n // latitude: this.lat,\n // longitude: this.long\n // }\n // );\n\n // Coveo.executeQuery(this.dom.$panel);\n // })\n // .catch(e => {\n // this.lat = null;\n // this.long = null;\n // });\n // }\n\n // getGeoQuery(lat, long) {\n // return `$qf(function:'dist(@ssl_latitude_d,@ssl_longitude_d,${lat},${long})', fieldName: 'distance')`;\n // }\n\n // async handleCoveoBuildingQuery(e, args) {\n // if (this.userLocation) {\n // this.lat = this.userLocation.lat;\n // this.long = this.userLocation.lng;\n // }\n\n // const expression = this.getGeoQuery(this.lat, this.long);\n\n // args.queryBuilder.advancedExpression.add(expression);\n // args.queryBuilder.advancedExpression.add(\n // \"@ssl_pagetype=='community_pagetype'\"\n // );\n // args.queryBuilder.sortCriteria = '@distance Ascending';\n\n // //eslint-disable-next-line no-undef\n // await new Promise(resolve => {\n // requestAnimationFrame(() => resolve());\n // });\n // }\n\n // handleCoveoPreprocessResults(e, args) {\n // const results = args.results.results;\n // if (results.length) {\n // const {\n // distance,\n // ssl_latitude_d,\n // ssl_longitude_d,\n // ssl_communityname,\n // ssl_thumbnailimage,\n // ssl_pricingandavailabilityphone,\n // ssl_residentsandfamilyphone,\n // ssl_communityid,\n // uri,\n // ssl_mainimagedesktop\n // } = results[0].raw;\n // const formatDistance = (distance * this.unit).toFixed(2);\n // this.currentCommunity = {\n // ssl_latitude: ssl_latitude_d,\n // ssl_longitude: ssl_longitude_d,\n // ssl_communityname,\n // ssl_thumbnailimage: ssl_thumbnailimage\n // ? ssl_thumbnailimage\n // : ssl_mainimagedesktop,\n // ssl_pricingandavailabilityphone,\n // ssl_residentsandfamilyphone,\n // ssl_communityid,\n // ssl_communitylink: uri,\n // ssl_distance: formatDistance\n // };\n // this.getCommunity();\n // const currentCommunityString = JSON.stringify(this.currentCommunity);\n // Cookies.set('current_community', currentCommunityString);\n // }\n // }\n\n // getCommunity() {\n // if (this.currentCommunity) {\n // const {\n // ssl_communityname,\n // ssl_thumbnailimage,\n // ssl_pricingandavailabilityphone,\n // ssl_residentsandfamilyphone,\n // ssl_distance,\n // ssl_communitylink\n // } = this.currentCommunity;\n // const communityHeader = document.querySelector(\n // '.schedule-a-tour-current-community__card-name'\n // );\n // const communityImage = document.querySelector(\n // '.schedule-a-tour-current-community__image'\n // );\n // const availabilityPhone = document.querySelector(\n // '.schedule-a-tour__availability-contact'\n // );\n // const residentsPhone = document.querySelector(\n // '.schedule-a-tour__residents-contact'\n // );\n // const communityLink = document.querySelector(\n // '.schedule-a-tour-current-community__card'\n // );\n // const title = document.querySelector(\n // '.schedule-a-tour-current-community__contacts-title'\n // );\n\n // if (ssl_communityname && ssl_communitylink) {\n // communityLink.href = ssl_communitylink;\n // communityHeader.textContent = ssl_communityname;\n // communityImage.src = ssl_thumbnailimage;\n // communityLink.alt = ssl_communityname;\n // if (availabilityPhone) {\n // availabilityPhone.querySelector('.btn__label').textContent =\n // ssl_pricingandavailabilityphone;\n // availabilityPhone.href = `tel:${ssl_pricingandavailabilityphone}`;\n\n // if (ssl_pricingandavailabilityphone) {\n // availabilityPhone.style.display = 'flex';\n // } else {\n // availabilityPhone.style.display = 'none';\n // }\n // }\n // if (residentsPhone) {\n // residentsPhone.querySelector('.btn__label').textContent =\n // ssl_residentsandfamilyphone;\n // residentsPhone.href = `tel:${ssl_residentsandfamilyphone}`;\n\n // if (ssl_residentsandfamilyphone) {\n // residentsPhone.style.display = 'flex';\n // } else {\n // residentsPhone.style.display = 'none';\n // }\n // }\n\n // if (!availabilityPhone && !residentsPhone && title) {\n // title.style.display = 'none';\n // } else {\n // title.style.display = 'unset';\n // }\n // } else {\n // if (!availabilityPhone) availabilityPhone.style.display = 'none';\n // if (!residentsPhone) residentsPhone.style.display = 'none';\n // if (!availabilityPhone && !residentsPhone && title)\n // title.style.display = 'none';\n // }\n\n // if (ssl_distance) {\n // const communityDistance = document.querySelector(\n // '.schedule-a-tour-current-community__card-distance'\n // );\n // communityDistance.textContent = `${ssl_distance} ${this.dom.$panel.dataset.unitLabel}`;\n // }\n // }\n // //else {\n // // this.locationInit();\n // // }\n // }\n\n // recentCommunitiesHandler() {\n // const communityPage = document.querySelector(\n // '.community-landing-page-coveo'\n // );\n // if (!communityPage) {\n // if (\n // this.recentlyViewedCommunities &&\n // this.recentlyViewedCommunities.length > 2\n // ) {\n // const recentCommunitiesWrapper = document.querySelector(\n // '.primary-nav__recently-viewed-communities'\n // );\n // this.recentlyViewedCommunities.reverse();\n // this.recentlyViewedCommunities.map(el => {\n // if (el.ssl_communityid !== this.currentCommunity.ssl_communityid) {\n // const communityLink = document.createElement('a');\n // communityLink.href = el.ssl_communitylink;\n // communityLink.classList.add(\n // 'primary-nav__recently-viewed-communities-link'\n // );\n // const communityImage = document.createElement('img');\n // communityImage.src = `${el.ssl_thumbnailimage}`;\n // communityImage.classList.add(\n // 'primary-nav__recently-viewed-communities-image'\n // );\n // const communityInfo = document.createElement('div');\n // communityInfo.classList.add(\n // 'primary-nav__recently-viewed-communities-info'\n // );\n // const communityTitle = document.createElement('span');\n // communityTitle.classList.add(\n // 'primary-nav__recently-viewed-communities-title'\n // );\n // communityTitle.textContent = el.ssl_communityname;\n // const communityDistance = document.createElement('span');\n // communityDistance.classList.add(\n // 'primary-nav__recently-viewed-communities-distance'\n // );\n // communityDistance.textContent = el.ssl_distance\n // ? `${el.ssl_distance} ${this.dom.$panel.dataset.unitLabel}`\n // : '';\n\n // communityInfo.append(communityTitle);\n // communityInfo.append(communityDistance);\n // communityLink.append(communityImage);\n // communityLink.append(communityInfo);\n // recentCommunitiesWrapper.append(communityLink);\n // }\n // });\n // } else {\n // const communitiesColumn = document.querySelector(\n // '.schedule-a-tour__content'\n // ).nextElementSibling;\n // communitiesColumn.remove();\n // }\n // }\n // }\n\n handleTriggerKeyDown(e) {\n switch (e.keyCode) {\n case KEYS.ESC:\n this.handleClose();\n break;\n case KEYS.DOWN:\n case KEYS.ENTER:\n e.preventDefault();\n this.handleTriggerClick(e);\n this.panelFocusTrap.activate();\n break;\n }\n }\n\n outterClickHandler(e) {\n const headerPanel = document.querySelector('.header__panel');\n if (headerPanel && !headerPanel.contains(e.target)) {\n this.handleClose();\n }\n }\n\n handleTriggerClick() {\n if (this.dom.$trigger.classList.contains(this.expandedClass)) {\n this.handleClose();\n } else {\n this.openPrimaryNavChildMenu();\n this.dom.$trigger.classList.add(this.expandedClass);\n this.displayPrimaryNavPanel(this.id);\n this.focusOutPrimaryNav();\n }\n }\n\n handleClose() {\n this.focusOut();\n this.closePrimaryNavChildMenu();\n }\n\n initiateFocusTrap() {\n this.panelFocusTrap = focusTrap.createFocusTrap(this.dom.$childNavWrapper, {\n allowOutsideClick: false,\n onDeactivate: this.handleClose.bind(this),\n initialFocus: () => {\n return this.dom.$panel.getElementsByTagName('INPUT')[0];\n }\n });\n }\n\n focusOut() {\n this.dom.$trigger.classList.remove(this.expandedClass);\n }\n}\n\nexport default ScheduleATour;\n","import { Component } from '@verndale/core';\nimport Headroom from 'headroom.js';\nimport Cookies from 'js-cookie';\nimport MakeHeaderAccessible from './make-header-accessible';\nimport FindACommunityHeader from './find-a-community-header';\nimport ScheduleATour from './schedule-a-tour-headless';\nimport HamburgerMenu from './hamburger-menu';\n// import HeaderSearch from './header-search';\nimport { isEmpty, setLocalStorageData } from '../helpers';\nimport { BREAKPOINTS } from '../constants';\n\nclass Module extends Component {\n setupDefaults() {\n this.dom = {\n $header: this.el,\n $hamburger: this.el._$('.header__hamburger'),\n $hamburgerMenu: this.el._$('#hmenu'),\n $hamburgerMenuBanner: this.el._$('.hamburger-menu-banner'),\n $hamburgerMenuItemTitles: this.el._$$('.hamburger-menu__title-label'),\n $topLevelNavs: this.el._$('.header__top-level-navs'),\n $childNavWrapper: this.el._$('.header__child-nav-wrapper'),\n $closeHamburger: this.el._$('.header__close'),\n $findACommunityTrigger: this.el._$('.find-a-community-header-trigger'),\n $scheduleATourTrigger: this.el._$('.schedule-a-tour-trigger'),\n $closeChildNavTrigger: this.el._$('.header__back-to-top-level-trigger'),\n $primaryNavPanels: this.el._$$('.primary-nav__child-menu'),\n $menuItemHolder: this.el._$('.header__items-holder'),\n $utilityLanguage: this.el._$('.header__utility-language-item'),\n $dropDown: this.el._$('.header__utility-language-dropdown'),\n $utilityLanguageItems: this.el._$$(\n '.header__utility-language-dropdown-item'\n )\n };\n\n this.classes = {\n utilityOpen: 'header__utility-language-dropdown-open'\n };\n\n this.panelOpenedClass = 'header--panel-opened';\n this.childMenuPanelOpenedClass = 'header--child-menu-panel-opened';\n this.expandedPrimaryNavItemClass = 'primary-nav__item--expanded';\n this.openedPrimaryNavChildMenuClass = 'primary-nav__child-menu--opened';\n this.desktopMediaQuery = window.matchMedia('(min-width: 1200px)');\n this.isFullNav = this.desktopMediaQuery.matches;\n\n this.expanded = false;\n\n this.setup();\n\n if (!document.body.classList.contains(\"communityv2-landing-page\")) {\n this.stick();\n }\n\n this.initSubModules();\n\n if (isEmpty(this.dom.$hamburgerMenuBanner)) {\n this.el._$$('.hamburger-menu-banner').forEach(el => {\n el.hidden = true;\n });\n }\n\n // this.HeaderSearch = new HeaderSearch(\n // this.dom,\n // this.lockScroll,\n // this.unlockScroll\n // );\n\n const mainHeader = document.querySelector('header[data-module=\"header\"]');\n if (mainHeader) {\n document.querySelector('html').style.scrollPaddingBlockStart = '150px';\n document.querySelector('body').style.scrollPaddingBlockStart = '150px';\n }\n }\n\n addListeners() {\n if (this.dom.$utilityLanguage) {\n this.dom.$utilityLanguage._on(\n 'click',\n this.onToggleUtilityNavDropdown.bind(this)\n );\n }\n this.dom.$hamburger._on('click', this.handleHamburgerClick.bind(this));\n this.dom.$closeHamburger._on(\n 'click',\n this.handleCloseHamburgerClick.bind(this)\n );\n this.dom.$primaryNavTriggers._on(\n 'click',\n this.handlePrimaryNavTriggerClick.bind(this)\n );\n this.dom.$closeChildNavTrigger._on(\n 'click',\n this.handleCloseChildNavTriggerClick.bind(this)\n );\n this.desktopMediaQuery.addEventListener('change', e => {\n this.isFullNav = e.matches;\n });\n document.addEventListener(\n 'closeheader',\n this.closePrimaryNavChildMenu.bind(this)\n );\n }\n\n setup() {\n this.renderTopLevelHamburgerMenuItems();\n this.renderPrimaryNavTopLevelItems();\n this.renderHamburgerMenuInsideHamburgerNav();\n\n if (this.dom.$dropDown) {\n this.renderUtilityLanguageItems();\n this.changeSelectedLanguageLabel();\n this.addUtilityLanguageListener();\n }\n\n this.el.classList.add('header--loaded');\n }\n\n changeSelectedLanguageLabel() {\n if (!window.location.hostname.includes('.ca')) return;\n\n if (window.location.pathname.includes('/fr')) {\n this.dom.$utilityLanguage.textContent = this.dom.$utilityLanguageItems\n .find(item => item._$('a').getAttribute('href').includes('/fr'))\n ._$('.link__label').textContent;\n } else {\n this.dom.$utilityLanguage.textContent = this.dom.$utilityLanguageItems\n .find(item => item._$('a').getAttribute('href').includes('/en'))\n ._$('.link__label').textContent;\n }\n }\n\n handleHamburgerClick() {\n const insetHamburguer =\n parseFloat(getComputedStyle(this.dom.$menuItemHolder).marginRight, 10) *\n 2;\n this.expanded = !this.expanded;\n this.dom.$hamburger.setAttribute('aria-expanded', this.expanded);\n\n this.el.classList.add(this.panelOpenedClass);\n this.lockScroll();\n this.scrollToHeader();\n\n this.dom.$hamburgerMenu.style.right = `-${insetHamburguer > 200 ? 0 : 0}px`;\n\n this.dom.$hamburgerMenu.focus();\n\n document._on('mousedown', this.handleListenToOutsideHanburger.bind(this));\n document.querySelector('header').style.position = 'sticky';\n }\n\n handleCloseHamburgerClick() {\n this.expanded = !this.expanded;\n this.dom.$hamburger.setAttribute('aria-expanded', this.expanded);\n\n this.el.classList.remove(this.panelOpenedClass);\n this.unlockScroll();\n this.closePrimaryNavChildMenu();\n this.displayPrimaryNavPanel();\n }\n\n handlePrimaryNavTriggerClick(e) {\n const item = e.target.closest('.primary-nav__item');\n const id = e.target.dataset.panel;\n\n if (item.classList.contains(this.expandedPrimaryNavItemClass)) {\n return this.closePrimaryNavChildMenu();\n }\n\n this.focusOutPrimaryNav();\n this.communityOrTour.focusOut();\n item.classList.add(this.expandedPrimaryNavItemClass);\n this.openPrimaryNavChildMenu();\n\n return this.displayPrimaryNavPanel(id);\n }\n\n handleCloseChildNavTriggerClick() {\n this.closePrimaryNavChildMenu();\n }\n\n handleListenToOutsidePrimaryNavPanel(e) {\n const hasClickedOutSidePanel = !this.dom.$childNavWrapper.contains(\n e.target\n );\n const hasClickedPrimaryNavTrigger =\n this.dom.$primaryNavTriggers.find(el => el.contains(e.target)) || true;\n const hasClickedFindACommunityTrigger =\n this.dom.$findACommunityTrigger?.contains?.(e.target);\n\n if (\n hasClickedOutSidePanel &&\n !hasClickedPrimaryNavTrigger &&\n !hasClickedFindACommunityTrigger\n ) {\n this.closePrimaryNavChildMenu();\n }\n }\n\n handleListenToOutsideHanburger(e) {\n if (!this.isFullNav) return;\n\n const hasClickedOutsidePanel = !this.dom.$hamburgerMenu.contains(e.target);\n\n if (hasClickedOutsidePanel) {\n this.handleCloseHamburgerClick();\n }\n }\n\n scrollToHeader() {\n const topScrollPros = document.documentElement.scrollTop;\n const headerScrollPos =\n this.dom.$header.getBoundingClientRect().top + topScrollPros;\n if (topScrollPros < headerScrollPos) {\n window.scrollTo({\n top: headerScrollPos,\n behavior: 'smooth'\n });\n }\n }\n\n lockScroll() {\n if (\n window.matchMedia(`(max-width: ${BREAKPOINTS.TABLET_LANDSCAPE - 1}px)`)\n .matches\n ) {\n _$('html').style.overflow = 'hidden';\n _$('body').style.overflow = 'hidden';\n _$('html').style.position = 'relative';\n _$('body').style.position = 'relative';\n _$('html').style.height = '100%';\n _$('body').style.height = '100%';\n }\n }\n\n unlockScroll() {\n _$('html').style.overflow = 'visible';\n _$('body').style.overflow = 'visible';\n _$('html').style.height = 'auto';\n _$('body').style.height = 'auto';\n }\n\n stick() {\n new Headroom(this.el, {\n offset: {\n up: this.el.offsetTop,\n down: this.el.offsetTop + this.el.offsetHeight\n },\n classes: {\n initial: 'header',\n pinned: 'header--visible',\n unpinned: 'header--hidden',\n top: '-',\n notTop: '-',\n bottom: '-',\n notBottom: '-',\n frozen: '-'\n },\n onPin: () => {\n const sidePanel = document.querySelector('header');\n if (!sidePanel?.classList.contains('header--panel-opened')) {\n document.body.classList.add('header--visible');\n document.body.classList.remove('header--hidden');\n }\n },\n onNotTop: () => {\n document.body.classList.add('header--passed');\n },\n onTop: () => {\n document.body.classList.remove('header--passed');\n },\n onUnpin: () => {\n const sidePanel = document.querySelector('header');\n if (!sidePanel?.classList.contains('header--panel-opened')) {\n document.body.classList.add('header--hidden');\n document.body.classList.remove('header--visible');\n }\n }\n }).init();\n }\n\n openPrimaryNavChildMenu() {\n this.el.classList.add(this.childMenuPanelOpenedClass);\n\n if (this.isFullNav) {\n document._on(\n 'mousedown',\n this.handleListenToOutsidePrimaryNavPanel.bind(this)\n );\n }\n }\n\n closePrimaryNavChildMenu() {\n this.el.classList.remove(this.childMenuPanelOpenedClass);\n\n this.dom.$primaryNavItems\n .find(el => el.classList.contains(this.expandedPrimaryNavItemClass))\n ?.classList.remove(this.expandedPrimaryNavItemClass);\n this.communityOrTour.focusOut();\n document.removeEventListener(\n 'click',\n this.handleListenToOutsidePrimaryNavPanel.bind(this)\n );\n }\n\n displayPrimaryNavPanel(id) {\n const panel = this.dom.$primaryNavPanels.find(el => el.id === id);\n this.dom.$primaryNavPanels.forEach(el =>\n el.classList.remove(this.openedPrimaryNavChildMenuClass)\n );\n\n panel?.classList?.add?.(this.openedPrimaryNavChildMenuClass);\n\n return panel;\n }\n\n focusOutPrimaryNav() {\n this.dom.$primaryNavItems.forEach(el =>\n el.classList.remove(this.expandedPrimaryNavItemClass)\n );\n }\n\n initSubModules() {\n new MakeHeaderAccessible({\n dom: this.dom,\n handlePrimaryNavTriggerClick:\n this.handlePrimaryNavTriggerClick.bind(this),\n closePrimaryNavChildMenu: this.closePrimaryNavChildMenu.bind(this)\n });\n\n const commonConfig = {\n dom: this.dom,\n openPrimaryNavChildMenu: this.openPrimaryNavChildMenu.bind(this),\n closePrimaryNavChildMenu: this.closePrimaryNavChildMenu.bind(this),\n displayPrimaryNavPanel: this.displayPrimaryNavPanel.bind(this),\n focusOutPrimaryNav: this.focusOutPrimaryNav.bind(this)\n };\n\n this.hamburgerMenu = new HamburgerMenu(commonConfig);\n\n if (Cookies.get('current_community')) {\n this.communityOrTour = new ScheduleATour(commonConfig);\n } else {\n const isCommunity = document.querySelector('.community-landing-page-coveo') || document.body.classList.contains('communityv2-landing-page');\n\n this.communityOrTour = isCommunity ? new ScheduleATour(commonConfig) : new FindACommunityHeader(commonConfig);\n }\n }\n\n renderPrimaryNavTopLevelItems() {\n const isCommunity = document.querySelector('.community-landing-page-coveo') || document.body.classList.contains('communityv2-landing-page');\n\n const $communityOrTour = isCommunity ? this.dom.$scheduleATourTrigger : this.dom.$findACommunityTrigger;\n\n const list = document.createElement('ul');\n list.role = 'menubar';\n list.classList.add('primary-nav');\n\n const items = this.dom.$primaryNavPanels\n .map((panel, i) => {\n const link = panel._$('.primary-nav__child-menu-title')?.textContent;\n\n if (!link) return '';\n\n return `\n
  • \n \n ${link}\n \n \n \n
  • \n `;\n })\n .join('');\n\n list.innerHTML = items;\n this.dom.$topLevelNavs.prepend(list);\n if (Cookies.get('current_community')) {\n this.dom.$topLevelNavs.append(this.dom.$scheduleATourTrigger);\n } else {\n if ($communityOrTour) this.dom.$topLevelNavs.append($communityOrTour);\n }\n\n this.dom.$primaryNavItems = this.el._$$('.primary-nav__item');\n this.dom.$primaryNavTriggers = this.el._$$('.primary-nav__trigger');\n }\n\n renderUtilityLanguageItems() {\n const currentHost = window.location.host;\n\n const list = document.createElement('ul');\n list.role = 'menubar';\n list.classList.add('header__utility-language-dropdown');\n\n const items = this.dom.$utilityLanguageItems\n .map((item, i) => {\n const link = item._$('a');\n const text = link._$('.link__label')?.textContent;\n const href = link?.href;\n let target = `${href}`;\n\n if (!text || !href) return '';\n\n if (!href.includes(currentHost)) {\n target = `${href}`;\n }\n\n return `\n
  • \n \n ${text}\n \n
  • \n `;\n })\n .join('');\n\n list.innerHTML = items;\n this.dom.$dropDown.replaceWith(list);\n }\n\n addUtilityLanguageListener() {\n this.dom.$utilityLanguageItems.forEach(item => {\n const link = item._$('a');\n const href = link?.dataset.href;\n\n link.addEventListener('click', () => {\n console.log(href, '< href');\n\n if (href.includes('fr')) {\n setLocalStorageData({ langPref: 'fr' });\n } else {\n setLocalStorageData({ langPref: 'en' });\n }\n\n window.location.replace(href);\n });\n });\n }\n\n renderTopLevelHamburgerMenuItems() {\n const list = document.createElement('ul');\n list.classList.add('hamburger-menu-items');\n list.role = 'menubar';\n\n const items = this.dom.$hamburgerMenuItemTitles\n .map(\n title => `\n
  • \n \n
  • \n `\n )\n .join('');\n\n list.innerHTML = items;\n this.dom.$topLevelNavs.prepend(list);\n }\n\n renderHamburgerMenuInsideHamburgerNav() {\n if (!this.dom.$hamburgerMenuBanner) {\n this.el._$('.hamburger-menu').classList.add('hamburger-menu--no-banner');\n return;\n }\n\n const banner = document.createElement('div');\n banner.classList.add('hamburger-menu-banner');\n banner.innerHTML = this.dom.$hamburgerMenuBanner.innerHTML;\n this.dom.$hamburgerMenu.prepend(banner);\n }\n\n onToggleUtilityNavDropdown(e) {\n const dropdown = this.el._$('.header__utility-language-dropdown');\n\n e.preventDefault();\n if (dropdown.classList.contains(this.classes.utilityOpen)) {\n dropdown.classList.remove(this.classes.utilityOpen);\n return;\n }\n dropdown.classList.remove(this.classes.utilityOpen);\n dropdown.classList.add(this.classes.utilityOpen);\n }\n}\n\nexport default Module;\n","import * as focusTrap from 'focus-trap';\nimport { KEYS, KEYS_DIRECTION } from '../constants';\n\nclass MakeHeaderAccessible {\n constructor({ dom, handlePrimaryNavTriggerClick, closePrimaryNavChildMenu }) {\n this.dom = {\n ...dom\n }\n\n this.handlePrimaryNavTriggerClick = handlePrimaryNavTriggerClick;\n this.closePrimaryNavChildMenu = closePrimaryNavChildMenu;\n this.init();\n this.addListeners();\n this.initiateFocusTrap();\n }\n\n addListeners() {\n this.dom.$primaryNavTriggers._on('keydown', this.handlePrimaryNavKeyDown.bind(this));\n this.dom.$primaryNavTriggers._on('keyup', this.handlePrimaryNavKeyUp.bind(this));\n this.dom.$closeHamburger?._on('keydown', this.handleHamburguerCloseNavKeyDown.bind(this));\n this.dom.$hamburgerMenu?._on('keydown', this.handleHamburguerMenuNavKeyDown.bind(this));\n }\n\n init() {\n this.dom.$primaryNavTriggers.forEach((el, i) => el.dataset.index = i)\n }\n\n handleHamburguerCloseNavKeyDown(e) {\n\n if (e.keyCode === KEYS.TAB) {\n this.dom.$hamburgerMenu.focus();\n }\n if (e.keyCode === KEYS.ESC) {\n\n this.dom.$closeHamburger.click()\n this.dom.$hamburger.focus();\n }\n }\n\n handleHamburguerMenuNavKeyDown(e) {\n const innerLinks = this.dom.$hamburgerMenu.getElementsByTagName('a')\n const firstLink = innerLinks[0]\n\n if (e.shiftKey && e.keyCode === KEYS.TAB && (firstLink === e.target)) {\n this.dom.$closeHamburger.focus()\n }\n\n if (e.keyCode === KEYS.ESC) {\n this.dom.$closeHamburger.click()\n this.dom.$hamburger.focus();\n }\n }\n\n\n handlePrimaryNavKeyDown(e) {\n\n switch (e.keyCode) {\n case KEYS.END:\n this.focusPrimaryNavOnKeyPress(this.dom.$primaryNavTriggers[this.dom.$primaryNavTriggers.length - 1]);\n break;\n case KEYS.HOME:\n e.preventDefault();\n this.focusPrimaryNavOnKeyPress(this.don.$primaryNavTriggers[0]);\n break;\n case KEYS.DOWN:\n case KEYS.ENTER:\n e.preventDefault();\n this.handlePrimaryNavTriggerClick(e);\n this.panelFocusTrap.activate();\n break\n }\n }\n\n handlePrimaryNavKeyUp(e) {\n if (KEYS.RIGHT || KEYS.ENTER) {\n this.focusPrimaryNavOnKeyPress(e);\n }\n }\n\n focusPrimaryNavItem(item) {\n this.blurPrimaryNavItems();\n item.removeAttribute('tabindex');\n\n item.focus();\n }\n\n blurPrimaryNavItems() {\n this.dom.$primaryNavTriggers.forEach(link => {\n link.setAttribute('tabindex', '-1');\n });\n }\n\n focusPrimaryNavOnKeyPress(e) {\n if (!KEYS_DIRECTION[e.keyCode]) return;\n if (typeof e.target.dataset.index === 'undefined') return;\n const index = parseInt(e.target.dataset.index, 10);\n\n if (this.dom.$primaryNavTriggers[index + KEYS_DIRECTION[e.keyCode]]) {\n this.focusPrimaryNavItem(this.dom.$primaryNavTriggers[index + KEYS_DIRECTION[e.keyCode]]);\n return;\n }\n\n if (e.keyCode === KEYS.left) {\n this.focusPrimaryNavItem(this.dom.$primaryNavTriggers[this.dom.$primaryNavTriggers.length - 1]);\n } else if (e.keyCode === KEYS.right) {\n this.focusPrimaryNavItem(this.dom.$primaryNavTriggers[0]);\n }\n }\n\n initiateFocusTrap() {\n this.panelFocusTrap = focusTrap.createFocusTrap(this.dom.$childNavWrapper, {\n onDeactivate: this.closePrimaryNavChildMenu,\n allowOutsideClick: false,\n initialFocus: () => {\n return this.dom.$childNavWrapper._$('.primary-nav__child-menu--opened').getElementsByTagName('A')[0]\n }\n });\n }\n}\n\nexport default MakeHeaderAccessible;\n"],"sourceRoot":""}