{"version":3,"sources":["webpack:///./src/helpers/media.ts","webpack:///./src/stories/Components/SectionWrapper/SectionWrapper.styles.ts","webpack:///./src/stories/Components/SectionWrapper/SectionWrapper.tsx","webpack:///./node_modules/query-string/index.js","webpack:///./src/helpers/utils.ts","webpack:///./src/stories/Components/Global/SiteWide/SiteWide.tsx","webpack:///./src/hoc/withMotion.tsx","webpack:///./src/helpers/cssVar.ts","webpack:///./src/stories/Components/Global/SiteWide/SiteWide.styles.ts","webpack:///./src/stories/Widgets/Banners/ApartmentLandingBanner/ApartmentLandingBanner.styles.ts","webpack:///./src/stories/Widgets/Banners/ApartmentLandingBanner/ApartmentLandingBanner.tsx","webpack:///./node_modules/strict-uri-encode/index.js","webpack:///./node_modules/decode-uri-component/index.js","webpack:///./node_modules/split-on-first/index.js","webpack:///./node_modules/filter-obj/index.js","webpack:///./src/helpers/brand.ts","webpack:///./src/helpers/grey.ts","webpack:///./src/helpers/image.ts"],"names":["Device","from","size","until","Container","styled","section","cssVar","setCssVar","TabletLarge","flush","css","themeOption","themes","SiteWide","SectionWrapper","React","children","className","fullWidth","id","innerWidth","otherProps","ref","S","width","displayName","strictUriEncode","decodeComponent","splitOnFirst","filterObject","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","value","length","TypeError","encode","options","strict","encodeURIComponent","decode","removeHash","input","hashStart","indexOf","slice","extract","queryStart","parseValue","parseNumbers","Number","isNaN","trim","parseBooleans","toLowerCase","parse","query","Object","assign","sort","arrayFormat","arrayFormatSeparator","formatter","result","key","accumulator","exec","replace","undefined","concat","isArray","includes","isEncodedArray","newValue","split","map","item","test","arrayValue","parserForArrayFormat","ret","create","param","keys","k","reduce","Boolean","Array","keysSorter","a","b","exports","stringify","object","shouldFilter","skipNull","skipEmptyString","index","join","keyValueSep","encoderForArrayFormat","objectCopy","filter","x","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryFromUrl","parsedQueryFromUrl","queryString","getHash","pick","exclude","exclusionFilter","sleep","ms","Promise","resolve","setTimeout","headerOverlap","Tablet","headerOverlapPadding","createElement","withMotion","WrappedComponent","name","ComponentWithMotion","props","LazyMotion","features","domAnimation","SitePadding","SiteWidth","div","DesktopLarge","Inner","m","ImageWrapper","Image","img","Overlay","rgba","brand","black","LogoWrapper","Logo","image","logo","transitionDelay","transitionDuration","initial","animate","alt","loading","role","src","imageUrl","heightratio","srcSet","getImageSrcSet","sizes","variants","default","scale","visible","transition","type","duration","ease","opacity","delay","y","module","str","charCodeAt","toString","toUpperCase","singleMatcher","RegExp","multiMatcher","decodeComponents","components","decodeURIComponent","err","left","right","prototype","call","tokens","match","i","encodedURI","replaceMap","entries","customDecodeURIComponent","string","separator","separatorIndex","obj","predicate","isArr","val","grey","previous","current","hsl","paleGreen","lightGreen","lightBeige","green","greenGrey","paleBurgundy","lightBurgundy","burgundy","white","validation","invalid","valid","beige","dark","light","beigeBurgundy","darkBurgundy","whiteBurgundy","imageParams","imageSource","params","rxy","focalPoint","top","rmode","quality","height"],"mappings":"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","file":"37-033d06b57cac171c7a71.js","sourcesContent":["export var Device;\r\n(function (Device) {\r\n Device[Device[\"MobileSmall\"] = 320] = \"MobileSmall\";\r\n Device[Device[\"Mobile\"] = 375] = \"Mobile\";\r\n Device[Device[\"MobileLarge\"] = 480] = \"MobileLarge\";\r\n Device[Device[\"Tablet\"] = 768] = \"Tablet\";\r\n Device[Device[\"TabletLarge\"] = 1024] = \"TabletLarge\";\r\n Device[Device[\"DesktopSmall\"] = 1280] = \"DesktopSmall\";\r\n Device[Device[\"Desktop\"] = 1366] = \"Desktop\";\r\n Device[Device[\"DesktopLarge\"] = 1600] = \"DesktopLarge\";\r\n Device[Device[\"ActualDesktop\"] = 1920] = \"ActualDesktop\";\r\n Device[Device[\"DesktopXL\"] = 2560] = \"DesktopXL\";\r\n})(Device || (Device = {}));\r\nexport function from(size) {\r\n return `(min-width: ${size}px)`;\r\n}\r\nexport function until(size) {\r\n return `(max-width: ${size - 1}px)`;\r\n}\r\n","import { themes } from '@helpers/brand';\r\nimport { cssVar, setCssVar } from '@helpers/cssVar';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nimport SiteWide from '../Global/SiteWide/SiteWide';\r\nconst Container = styled.section `\r\n color: ${cssVar('fgColor')};\r\n ${setCssVar('sectionMargin', '48px')};\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n ${setCssVar('sectionMargin', '96px')};\r\n }\r\n\r\n margin-top: ${cssVar('sectionMargin')};\r\n margin-bottom: ${cssVar('sectionMargin')};\r\n\r\n ${({ flush }) => flush === 'top' &&\r\n css `\r\n margin-top: 0;\r\n `}\r\n\r\n ${({ flush }) => flush === 'bottom' &&\r\n css `\r\n margin-bottom: 0;\r\n `}\r\n\r\n ${({ flush }) => flush === 'both' &&\r\n css `\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n `}\r\n\r\n ${({ flush, themeOption }) => themeOption &&\r\n css `\r\n ${themes[themeOption]}\r\n\r\n ${themeOption !== 'light' &&\r\n css `\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n padding-top: ${cssVar('sectionMargin')};\r\n padding-bottom: ${cssVar('sectionMargin')};\r\n\r\n ${() => flush === 'top' &&\r\n css `\r\n padding-top: 0;\r\n `}\r\n\r\n ${() => flush === 'bottom' &&\r\n css `\r\n padding-bottom: 0;\r\n `}\r\n\r\n ${() => flush === 'both' &&\r\n css `\r\n padding-top: 0;\r\n padding-bottom: 0;\r\n `}\r\n `}\r\n `}\r\n`;\r\nconst StyledSiteWide = styled(SiteWide) ``;\r\nexport default {\r\n Container,\r\n SiteWide: StyledSiteWide,\r\n};\r\n","import * as React from 'react';\r\nimport S from './SectionWrapper.styles';\r\nconst SectionWrapper = React.forwardRef(({ children, className, flush, fullWidth = false, id, innerWidth = 'default', themeOption = 'light', ...otherProps }, ref) => {\r\n return (React.createElement(S.Container, { ref: ref, id: id, className: className, flush: flush, themeOption: themeOption, ...otherProps }, fullWidth ? children : React.createElement(S.SiteWide, { width: innerWidth }, children)));\r\n});\r\nSectionWrapper.displayName = 'SectionWrapper';\r\nexport default SectionWrapper;\r\n","'use strict';\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\nconst filterObject = require('filter-obj');\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[', index, ']'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')\n\t\t\t\t];\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[]'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSep = options.arrayFormat === 'bracket-separator' ?\n\t\t\t\t'[]=' :\n\t\t\t\t'=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSep, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault:\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, encode(key, options)];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\n\t\tcase 'bracket-separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[\\])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null ?\n\t\t\t\t\t[] :\n\t\t\t\t\tvalue.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], arrayValue);\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nfunction parse(query, options) {\n\toptions = Object.assign({\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst ret = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn ret;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn ret;\n\t}\n\n\tfor (const param of query.split('&')) {\n\t\tif (param === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : ['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options);\n\t\tformatter(decode(key, options), value, ret);\n\t}\n\n\tfor (const key of Object.keys(ret)) {\n\t\tconst value = ret[key];\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const k of Object.keys(value)) {\n\t\t\t\tvalue[k] = parseValue(value[k], options);\n\t\t\t}\n\t\t} else {\n\t\t\tret[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn ret;\n\t}\n\n\treturn (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = ret[key];\n\t\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexports.extract = extract;\nexports.parse = parse;\n\nexports.stringify = (object, options) => {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ','\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key])) ||\n\t\t(options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const key of Object.keys(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = object[key];\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n};\n\nexports.parseUrl = (url, options) => {\n\toptions = Object.assign({\n\t\tdecode: true\n\t}, options);\n\n\tconst [url_, hash] = splitOnFirst(url, '#');\n\n\treturn Object.assign(\n\t\t{\n\t\t\turl: url_.split('?')[0] || '',\n\t\t\tquery: parse(extract(url), options)\n\t\t},\n\t\toptions && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}\n\t);\n};\n\nexports.stringifyUrl = (object, options) => {\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true\n\t}, options);\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = exports.extract(object.url);\n\tconst parsedQueryFromUrl = exports.parse(queryFromUrl, {sort: false});\n\n\tconst query = Object.assign(parsedQueryFromUrl, object.query);\n\tlet queryString = exports.stringify(query, options);\n\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\tlet hash = getHash(object.url);\n\tif (object.fragmentIdentifier) {\n\t\thash = `#${options[encodeFragmentIdentifier] ? encode(object.fragmentIdentifier, options) : object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n};\n\nexports.pick = (input, filter, options) => {\n\toptions = Object.assign({\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false\n\t}, options);\n\n\tconst {url, query, fragmentIdentifier} = exports.parseUrl(input, options);\n\treturn exports.stringifyUrl({\n\t\turl,\n\t\tquery: filterObject(query, filter),\n\t\tfragmentIdentifier\n\t}, options);\n};\n\nexports.exclude = (input, filter, options) => {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn exports.pick(input, exclusionFilter, options);\n};\n","import { css } from 'styled-components';\r\nimport { Device, from } from './media';\r\nexport function sleep(ms) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n}\r\nexport const headerOverlap = css `\r\n margin-top: -78px !important;\r\n\r\n @media ${from(Device.Tablet)} {\r\n margin-top: -150px !important;\r\n }\r\n`;\r\nexport const headerOverlapPadding = css `\r\n padding-top: 78px !important;\r\n\r\n @media ${from(Device.Tablet)} {\r\n padding-top: 150px !important;\r\n }\r\n`;\r\n","import React from 'react';\r\nimport S from './SiteWide.styles';\r\nconst SiteWide = ({ children, className, width = 'default' }) => {\r\n return (React.createElement(S.Container, { className: className, width: width }, children));\r\n};\r\nexport default SiteWide;\r\n","import { domAnimation, LazyMotion } from 'framer-motion';\r\nimport React from 'react';\r\nexport function withMotion(WrappedComponent) {\r\n const displayName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\r\n const ComponentWithMotion = (props) => {\r\n return (React.createElement(LazyMotion, { features: domAnimation, strict: true },\r\n React.createElement(WrappedComponent, { ...props })));\r\n };\r\n ComponentWithMotion.displayName = `withMotion(${displayName})`;\r\n return ComponentWithMotion;\r\n}\r\n","const variables = [\r\n 'fgColor',\r\n 'bgColor',\r\n 'bgColorAlt',\r\n 'accentColor',\r\n 'accentColorAlt',\r\n 'siteWidth',\r\n 'sitePadding',\r\n 'sectionMargin',\r\n];\r\nfunction cssVar(name) {\r\n return `var(--${name})`;\r\n}\r\nfunction setCssVar(name, value) {\r\n return `--${name}: ${value}`;\r\n}\r\nexport { cssVar, setCssVar };\r\n","import { cssVar, setCssVar } from '@helpers/cssVar';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nexport const SitePadding = 18;\r\nexport const SiteWidth = 1640;\r\nexport const SiteWidthNarrow = 1100;\r\nconst Container = styled.div `\r\n ${setCssVar('sitePadding', `${SitePadding}px`)};\r\n ${setCssVar('siteWidth', `${SiteWidth}px`)};\r\n\r\n margin-left: auto;\r\n margin-right: auto;\r\n max-width: calc(${cssVar('siteWidth')} + (${cssVar('sitePadding')} * 2));\r\n padding-left: ${cssVar('sitePadding')};\r\n padding-right: ${cssVar('sitePadding')};\r\n width: 100%;\r\n\r\n ${({ width }) => {\r\n switch (width) {\r\n case 'default':\r\n return css `\r\n @media ${from(Device.DesktopLarge)} {\r\n }\r\n `;\r\n case 'narrow':\r\n return css `\r\n @media ${from(Device.TabletLarge)} {\r\n ${setCssVar('siteWidth', `${SiteWidthNarrow}px`)};\r\n }\r\n `;\r\n }\r\n}}\r\n`;\r\nexport default {\r\n Container,\r\n};\r\n","import brand from '@helpers/brand';\r\nimport { Device, from } from '@helpers/media';\r\nimport { headerOverlap } from '@helpers/utils';\r\nimport SectionWrapper from '@stories/Components/SectionWrapper/SectionWrapper';\r\nimport { m } from 'framer-motion';\r\nimport { rgba } from 'polished';\r\nimport styled from 'styled-components';\r\nconst Container = styled(SectionWrapper) `\r\n position: relative;\r\n display: grid;\r\n height: 100vh;\r\n max-height: 496px;\r\n ${headerOverlap}\r\n\r\n @media ${from(Device.Tablet)} {\r\n max-height: 1080px;\r\n min-height: 800px;\r\n }\r\n`;\r\nconst Inner = styled(m.div) ``;\r\nconst ImageWrapper = styled.div `\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n height: 100%;\r\n object-fit: cover;\r\n object-position: center center;\r\n overflow: hidden;\r\n width: 100%;\r\n z-index: 1;\r\n`;\r\nconst Image = styled(m.img) `\r\n display: block;\r\n height: 100%;\r\n object-fit: cover;\r\n object-position: center center;\r\n width: 100%;\r\n`;\r\nconst Overlay = styled(m.div) `\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n background: ${rgba(brand.black, 0.5)};\r\n height: 100%;\r\n width: 100%;\r\n z-index: 2;\r\n`;\r\nconst LogoWrapper = styled.div `\r\n position: relative;\r\n display: flex;\r\n height: 100%;\r\n place-content: center;\r\n place-items: center;\r\n width: 100%;\r\n z-index: 3;\r\n`;\r\nconst Logo = styled(m.img) `\r\n display: block;\r\n height: auto;\r\n max-width: 80%;\r\n`;\r\nexport default {\r\n Container,\r\n Image,\r\n ImageWrapper,\r\n Inner,\r\n Logo,\r\n LogoWrapper,\r\n Overlay,\r\n};\r\n","import { imageUrl } from '@helpers/image';\r\nimport { withMotion } from '@hoc/withMotion';\r\nimport React from 'react';\r\nimport S from './ApartmentLandingBanner.styles';\r\nconst ApartmentLandingBanner = ({ image, logo, transitionDelay = 1000, transitionDuration = 1000, }) => {\r\n return (React.createElement(S.Container, { flush: \"both\", fullWidth: true },\r\n React.createElement(S.Inner, { initial: \"default\", animate: \"visible\" },\r\n image && (React.createElement(S.ImageWrapper, null,\r\n React.createElement(S.Image, { alt: \"\", loading: \"eager\", role: \"presentation\", src: imageUrl(image, { width: 480, heightratio: 1.5 }), srcSet: getImageSrcSet(image), sizes: \"100vw\", variants: {\r\n default: {\r\n scale: 1,\r\n },\r\n visible: {\r\n scale: 1.1,\r\n },\r\n }, transition: {\r\n type: 'tween',\r\n duration: (transitionDuration + transitionDelay) / 1000,\r\n ease: 'easeOut',\r\n } }))),\r\n React.createElement(S.Overlay, { variants: {\r\n default: {\r\n opacity: 0,\r\n },\r\n visible: {\r\n opacity: 1,\r\n },\r\n }, transition: {\r\n type: 'tween',\r\n duration: transitionDuration / 1000,\r\n ease: 'easeOut',\r\n delay: transitionDelay / 1000,\r\n } }),\r\n logo && (React.createElement(S.LogoWrapper, null,\r\n React.createElement(S.Logo, { alt: \"\", loading: \"eager\", role: \"presentation\", src: imageUrl(logo, {}), variants: {\r\n default: {\r\n opacity: 0,\r\n y: 20,\r\n },\r\n visible: {\r\n opacity: 1,\r\n y: 0,\r\n },\r\n }, transition: {\r\n type: 'tween',\r\n duration: 0.6,\r\n ease: 'easeOut',\r\n delay: transitionDelay / 1000 + 0.3,\r\n } }))))));\r\n};\r\nexport default withMotion(ApartmentLandingBanner);\r\nfunction getImageSrcSet(image) {\r\n return [\r\n // Mobile/tablet need to be taller to avoid scaling\r\n `${imageUrl(image, { width: 480, heightratio: 1.5 })} 480w`,\r\n `${imageUrl(image, { width: 960, heightratio: 1.5 })} 960w`,\r\n // Desktop needs to be wider to avoid scaling\r\n `${imageUrl(image, { width: 1440, heightratio: 0.5625 })} 1440w`,\r\n `${imageUrl(image, { width: 1920, heightratio: 0.5625 })} 1920w`,\r\n ].join(',');\r\n}\r\n","'use strict';\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n","'use strict';\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp(token, 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn decodeURIComponent(components.join(''));\n\t} catch (err) {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tvar left = components.slice(0, split);\n\tvar right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch (err) {\n\t\tvar tokens = input.match(singleMatcher);\n\n\t\tfor (var i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher);\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tvar replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD'\n\t};\n\n\tvar match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch (err) {\n\t\t\tvar result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tvar entries = Object.keys(replaceMap);\n\n\tfor (var i = 0; i < entries.length; i++) {\n\t\t// Replace all decoded components\n\t\tvar key = entries[i];\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nmodule.exports = function (encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\tencodedURI = encodedURI.replace(/\\+/g, ' ');\n\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch (err) {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n};\n","'use strict';\n\nmodule.exports = (string, separator) => {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (separator === '') {\n\t\treturn [string];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [string];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n};\n","'use strict';\nmodule.exports = function (obj, predicate) {\n\tvar ret = {};\n\tvar keys = Object.keys(obj);\n\tvar isArr = Array.isArray(predicate);\n\n\tfor (var i = 0; i < keys.length; i++) {\n\t\tvar key = keys[i];\n\t\tvar val = obj[key];\n\n\t\tif (isArr ? predicate.indexOf(key) !== -1 : predicate(key, val, obj)) {\n\t\t\tret[key] = val;\n\t\t}\n\t}\n\n\treturn ret;\n};\n","import { css } from 'styled-components';\r\nimport { setCssVar } from './cssVar';\r\nimport greyscale from './grey';\r\nconst brand = {\r\n black: '#000000',\r\n grey: greyscale,\r\n paleGreen: '#F4FCF3',\r\n lightGreen: '#EAFAE9',\r\n lightBeige: '#F0EEE6',\r\n green: '#3CD52F',\r\n greenGrey: '#75786D',\r\n paleBurgundy: '#E9D5D8',\r\n lightBurgundy: '#CF9EA4',\r\n burgundy: '#76232F',\r\n white: '#fff',\r\n validation: {\r\n invalid: '#da291c',\r\n valid: '#008c15',\r\n },\r\n};\r\nexport const beigeTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.lightBeige)};\r\n ${setCssVar('bgColorAlt', brand.lightBeige)};\r\n ${setCssVar('accentColor', brand.green)};\r\n ${setCssVar('accentColorAlt', brand.green)};\r\n`;\r\nexport const darkTheme = css `\r\n ${setCssVar('fgColor', brand.white)};\r\n ${setCssVar('bgColor', brand.black)};\r\n ${setCssVar('bgColorAlt', brand.black)};\r\n ${setCssVar('accentColor', brand.green)};\r\n ${setCssVar('accentColorAlt', brand.green)};\r\n`;\r\nexport const lightTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.white)};\r\n ${setCssVar('bgColorAlt', brand.white)};\r\n ${setCssVar('accentColor', brand.green)};\r\n ${setCssVar('accentColorAlt', brand.green)};\r\n`;\r\nexport const lightGreenTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.lightGreen)};\r\n ${setCssVar('bgColorAlt', brand.paleGreen)};\r\n ${setCssVar('accentColor', brand.green)};\r\n ${setCssVar('accentColorAlt', brand.green)};\r\n`;\r\nexport const beigeBurgundyTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.lightBeige)};\r\n ${setCssVar('bgColorAlt', brand.lightBeige)};\r\n ${setCssVar('accentColor', brand.burgundy)};\r\n ${setCssVar('accentColorAlt', brand.burgundy)};\r\n`;\r\nexport const darkBurgundyTheme = css `\r\n ${setCssVar('fgColor', brand.white)};\r\n ${setCssVar('bgColor', brand.black)};\r\n ${setCssVar('bgColorAlt', brand.black)};\r\n ${setCssVar('accentColor', brand.lightBurgundy)};\r\n ${setCssVar('accentColorAlt', brand.lightBurgundy)};\r\n`;\r\nexport const whiteBurgundyTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.white)};\r\n ${setCssVar('bgColorAlt', brand.white)};\r\n ${setCssVar('accentColor', brand.burgundy)};\r\n ${setCssVar('accentColorAlt', brand.burgundy)};\r\n`;\r\nexport const burgundyTheme = css `\r\n ${setCssVar('fgColor', brand.white)};\r\n ${setCssVar('bgColor', brand.burgundy)};\r\n ${setCssVar('bgColorAlt', brand.burgundy)};\r\n ${setCssVar('accentColor', brand.white)};\r\n ${setCssVar('accentColorAlt', brand.white)};\r\n`;\r\nexport const themes = {\r\n beige: beigeTheme,\r\n dark: darkTheme,\r\n light: lightTheme,\r\n lightGreen: lightGreenTheme,\r\n beigeBurgundy: beigeBurgundyTheme,\r\n darkBurgundy: darkBurgundyTheme,\r\n whiteBurgundy: whiteBurgundyTheme,\r\n burgundy: burgundyTheme,\r\n};\r\nexport default brand;\r\n","import { hsl } from 'polished';\r\nconst greyscaleValues = [44];\r\nconst greyscale = greyscaleValues.reduce((previous, current) => ({\r\n ...previous,\r\n [`grey${current}`]: grey(current),\r\n}), {});\r\nfunction grey(value) {\r\n return hsl(0, 0, value / 100);\r\n}\r\nexport { greyscale as default, grey };\r\n","import queryString from 'query-string';\r\n/**\r\n * Create an image URL for ImageSharp\r\n * @param image The image model\r\n * @param imageParams The image parameters\r\n * @returns The image URL\r\n */\r\nexport function imageUrl(image, imageParams) {\r\n if (!image || !image.src) {\r\n return '';\r\n }\r\n /**\r\n * Remove any query param string to ensure paramsString is applied correctly and\r\n * there are no double definitions (setting a param twice prevents any tranformations)\r\n */\r\n const imageSource = image.src.split('?')[0];\r\n const params = {\r\n rxy: image.focalPoint ? `${image.focalPoint.left},${image.focalPoint.top}` : undefined,\r\n rmode: 'crop',\r\n // Define default quality as 95 to ensure some reduction in size for all but the smallest images\r\n quality: imageParams.width && imageParams.width > 400 ? 95 : undefined,\r\n ...imageParams,\r\n };\r\n // Imagesharp doesn't support heightratio parameter. Convert to height parameter for compatibility.\r\n if (imageParams.heightratio !== undefined && imageParams.width !== undefined) {\r\n params.height = imageParams.width * imageParams.heightratio;\r\n }\r\n const paramsString = queryString.stringify(params);\r\n return `${imageSource}${paramsString ? `?${queryString.stringify(params)}` : ''}`;\r\n}\r\nexport function getSrcs(image, upper, lower, steps, ratio) {\r\n const sizes = getRange(upper, lower, steps);\r\n return sizes.map((size) => `${imageUrl(image, { width: size, heightratio: ratio })} ${size}w`);\r\n}\r\nexport function getRetinaSrcs(image, width, ratio) {\r\n const dprs = [1, 1.5, 2, 2.5, 3];\r\n return dprs.map((dpr) => `${imageUrl(image, { width: width * dpr, heightratio: ratio })} ${dpr}x`);\r\n}\r\nfunction getRange(upper, lower, steps) {\r\n const difference = upper - lower;\r\n const increment = difference / (steps - 1);\r\n return [\r\n lower,\r\n ...Array(steps - 2)\r\n .fill('')\r\n .map((_, index) => Math.ceil(lower + increment * (index + 1))),\r\n upper,\r\n ];\r\n}\r\n"],"sourceRoot":""}