{"version":3,"sources":["webpack:///./src/templates/NeighborhoodGuide/NeighborhoodGuide.tsx","webpack:///./src/assets/images/next.png","webpack:///./src/assets/images/back.png"],"names":["Layout","loadable","Modal","NeighborhoodGuide","data","propertyData","propertyList","allProperty","nodes","useState","metaDesc","setMetaDesc","city","towers","locationLandmarks","locationBrief","area","region","locationDescription","locationDefault","isLocationDetailsShowing","setIsLocationDetailsShowing","projects","filter","proj","nearbyProjects","prop","propertyType","displayFeaturedImages","locationImages","map","image","url","displayLandmarkEstablishment","landmarksEstablishment","items","item","sliderRef","useRef","nextImage","useCallback","current","slickNext","prevImage","slickPrev","description","handlePropertyType","useEffect","html","text","window","document","replace","DOMParser","parseFromString","body","textContent","title","ogMetaData","className","dangerouslySetInnerHTML","__html","length","substring","type","onClick","swipeToSlide","arrows","dots","fade","easing","ref","key","establishmentName","src","imagesGallery","alt","back","next","side","noIcons","isShowing","onClose","project","id","overviewDetails","find","unit","featured","to","location","slug","name","module","exports"],"mappings":"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","file":"component---src-templates-neighborhood-guide-neighborhood-guide-tsx-22646311941798972622.js","sourcesContent":["import React, {\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport { graphql, Link } from 'gatsby'\nimport Slider from 'react-slick'\n\nimport { LazyLoadImage } from 'react-lazy-load-image-component'\nimport loadable from '@loadable/component'\nimport Seo from '../../components/Seo/Seo'\nimport './NeighborhoodGuide.scss'\n\nimport next from '../../assets/images/next.png'\nimport back from '../../assets/images/back.png'\n\nimport { PropertyDataTypes } from '../Amenities/Amenities'\n\nconst Layout = loadable(() => import('../../components/Layout/Layout'))\nconst Modal = loadable(() => import('../../components/Modal/Modal'))\n\ntype LocationPropTypes = {\n data: {\n propertyData: PropertyDataTypes\n allProperty: { nodes: PropertyDataTypes[] }\n }\n}\n\nconst NeighborhoodGuide = ({\n data: {\n propertyData,\n allProperty: { nodes: propertyList },\n },\n}: LocationPropTypes): ReactElement => {\n const [metaDesc, setMetaDesc] = useState('')\n const [city] = useState(\n propertyData.towers[0]?.locationLandmarks?.locationBrief,\n )\n const [area] = useState(propertyData.towers[0]?.locationLandmarks?.region)\n const [locationDescription] = useState(\n propertyData?.towers[0]?.locationLandmarks?.locationDefault,\n )\n const [isLocationDetailsShowing, setIsLocationDetailsShowing] = useState<\n boolean\n >(false)\n\n const [projects] = useState(\n propertyList.filter(\n (proj) => proj.towers[0]?.locationLandmarks?.locationBrief,\n ),\n )\n const [nearbyProjects] = useState(\n projects.filter(\n (prop) =>\n prop.towers[0]?.locationLandmarks?.locationBrief === city &&\n prop.propertyType !== 'Estate',\n ),\n )\n\n const [displayFeaturedImages] = useState(\n propertyData.towers[0]?.locationLandmarks?.locationImages?.map(\n (image) => image.url,\n ) || [],\n )\n\n const displayLandmarkEstablishment = propertyData.towers[0]?.locationLandmarks\n ?.landmarksEstablishment?.items\n ? propertyData.towers[0]?.locationLandmarks?.landmarksEstablishment?.items?.map(\n (item) => item,\n )\n : null\n\n const sliderRef = useRef(null)\n\n const nextImage = useCallback(() => {\n if (sliderRef?.current?.slickNext) {\n sliderRef.current.slickNext()\n }\n }, [sliderRef])\n\n const prevImage = useCallback(() => {\n if (sliderRef?.current?.slickPrev) {\n sliderRef.current.slickPrev()\n }\n }, [sliderRef])\n\n const description = locationDescription || ''\n\n const handlePropertyType = useCallback((propertyType) => {\n if (propertyType === 'House and Lot') {\n return 'house-lot'\n }\n if (propertyType === 'Condominium') {\n return 'condominium'\n }\n return 'lots'\n }, [])\n\n const stripHtml = (html: string): string => {\n const text = html?.replace(/ /g, '')\n const doc = new DOMParser().parseFromString(text, 'text/html')\n return doc.body.textContent || ''\n }\n\n useEffect(() => {\n if (typeof window === 'undefined' || !window.document) {\n return\n }\n setMetaDesc(stripHtml(description))\n }, [description])\n\n return (\n \n \n\n
\n
\n
\n

{city} Neighborhood Guide

\n

{area}

\n = 570\n ? `${description?.substring(0, 570)}...`\n : description,\n }}\n />\n \n {description?.length >= 570 ? (\n setIsLocationDetailsShowing(true)}\n >\n Read More\n \n ) : null}\n
\n
\n \n {displayLandmarkEstablishment\n ? displayLandmarkEstablishment.map((item) => (\n
\n \n

{item.establishmentName}

\n
\n ))\n : ''}\n \n\n
\n prevImage()}\n >\n \"backIcon\"\n \n nextImage()}\n >\n \"nextIcon\"\n \n
\n
\n
\n\n setIsLocationDetailsShowing(false)}\n >\n
\n

{city} Neighborhood Guide

\n

{area}

\n \n \n
\n \n\n
\n

Projects in {city}

\n
\n {nearbyProjects.map((project) => {\n return (\n \n unit.featured,\n )?.url\n }\n alt=\"projectImg\"\n />\n \n \n \n
\n )\n })}\n
\n
\n \n
\n )\n}\n\nexport default NeighborhoodGuide\n\nexport const pageQuery = graphql`\n query NeighborhooodQuery($id: String!) {\n propertyData: property(id: { eq: $id }) {\n ...PropertyPageFields\n }\n allProperty {\n nodes {\n ...OurPropertyPagePropertyFields\n }\n }\n }\n`\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAMCAYAAACulacQAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABBSURBVHgBvYwxDQAgDAQLCpCAVKTgBAlIAJSUG5hIO8Inlya9z4uqFuiQ5A7PDONjIVgFToMZxc/yZusrcWQxBdmIRnixS8Z+kgAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAMCAYAAACulacQAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABCSURBVHgBtY4xDQAgDAQBBUhAOg6QQlAATsoNTLQd2+Tyw32Tz+k7EanEgKUETNjQIsSTtuCKWmXM7953QCF7BeJcTYB2RfV10uYAAAAASUVORK5CYII=\""],"sourceRoot":""}