{"version":3,"file":"defaultVendors-packages_lead-capture_src_shared-components_image_tsx-packages_lead-capture_sr-b0955e.07daf47749d82a02.prod.js","mappings":"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","sources":["webpack://aurora-new-frontend/./packages/common/packages/core/src/location-map-pin/location-map-pin.svg","webpack://aurora-new-frontend/./packages/common/packages/core/src/location-map-pin/location-map-pin.tsx","webpack://aurora-new-frontend/./packages/common/packages/core/src/centering-guide/centering-guide.tsx","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/google-map/google-map.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/utils/image-matcher.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/shared-components/image.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/shared-components/map.tsx"],"sourcesContent":["export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MCA0NyIgZmlsbD0ibm9uZSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzEuNTcwMiAzNi4zMTU1QzM2LjY3MTYgMzIuNjkxMiA0MCAyNi43MzQzIDQwIDIwQzQwIDguOTU0MyAzMS4wNDU3IDAgMjAgMEM4Ljk1NDMgMCAwIDguOTU0MyAwIDIwQzAgMjYuNzMzOSAzLjMyNzk1IDMyLjY5MDUgOC40Mjg4NyAzNi4zMTQ4QzkuMzk3MTIgMzcuMTM1NiAxMC40NTgyIDM4LjAwMzIgMTEuNDc4MSAzOC44MzcxQzEyLjE4NjkgMzkuNDE2NyAxMi44NzU5IDM5Ljk4IDEzLjQ5OTkgNDAuNUMxNC42MjE2IDQxLjQzNDcgMTUuODEzMiA0My4xMzgzIDE2Ljg2NTYgNDQuOTA1MkMxOC4yMDQzIDQ3LjE1MjggMjEuNzk1NSA0Ny4xNTI4IDIzLjEzNDMgNDQuOTA1MkMyNC4xODY3IDQzLjEzODMgMjUuMzc4MiA0MS40MzQ3IDI2LjQ5OTkgNDAuNUMyNy4xMjQ0IDM5Ljk3OTYgMjcuODEzOSAzOS40MTU4IDI4LjUyMzMgMzguODM1OEMyOS41NDI0IDM4LjAwMjUgMzAuNjAyNiAzNy4xMzU3IDMxLjU3MDIgMzYuMzE1NVoiIGZpbGw9IiNERjQwOUQiLz4KPGNpcmNsZSByPSI1IiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAtMSAyMCAyMCkiIGZpbGw9IiM4RTFDNjAiLz4KPC9zdmc+\"","import styled from 'styled-components';\n\nimport LocationMapPinImage from './location-map-pin.svg';\n\nconst DropShadowImg = styled.img`\n filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));\n`;\nexport const LocationMapPin = ({ size = 32 }: { size?: number }) => {\n return ;\n};\n","import styled from 'styled-components';\n\nimport { Colors } from '../colors';\nimport { AuroraIcon, AuroraIconType } from '../icon';\nimport { LocationMapPin } from '../location-map-pin';\n\nconst OverlayWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n`;\n\nconst TextWrapper = styled.div>`\n filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));\n z-index: 11;\n text-align: center;\n color: ${Colors.WHITE};\n font-size: 16px;\n line-height: 20px;\n font-weight: 500;\n transform: ${({ maxSize, minSize }) =>\n `translate(0, calc(clamp(${minSize}, 18vmin, ${maxSize}) / 2 + clamp(5px, 2vmin, 15px)))`};\n`;\n\nconst CircleWrapper = styled.div>`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n top: 50%;\n left: 50%;\n width: ${({ maxSize, minSize }) => `clamp(${minSize}, 18vmin, ${maxSize})`};\n height: ${({ maxSize, minSize }) => `clamp(${minSize}, 18vmin, ${maxSize})`};\n transform: translate(-50%, -50%);\n`;\n\nconst TextCenterWrapper = styled.div`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n`;\n\nconst PinIconWrapper = styled.div`\n z-index: 11;\n pointer-events: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n`;\n\nexport enum CenteringGuideType {\n NoCircle,\n Default,\n Pin,\n}\n\ninterface ICircleProps {\n withBorder: boolean;\n diameter: number;\n translation?: number;\n background?: string;\n}\n\nconst Circle = styled.div`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n border-radius: 50%;\n border: ${({ withBorder }) => withBorder && '1px solid #c9c9c9'};\n width: ${({ diameter }) => diameter}%;\n height: ${({ diameter }) => diameter}%;\n background: ${({ background }) => background};\n transform: ${({ translation }) => translation && `translate(${translation}%, ${translation}%)`};\n`;\n\nconst OuterCircle = () => {\n return ;\n};\n\nconst InnerCircle = () => {\n return (\n \n );\n};\n\nconst CenteringIconBackground = () => {\n return ;\n};\n\nconst CenteringIcon = ({ icon = AuroraIconType.LOCATION_PIN }: { icon?: AuroraIconType }) => (\n \n \n \n);\n\nconst Text = ({\n maxSize,\n minSize,\n text,\n}: Pick) => (\n \n \n {text}\n \n \n);\n\nconst pinContent = (\n \n \n \n);\n\ninterface CircleDefaultContentProps {\n icon?: AuroraIconType;\n maxSize: string;\n minSize: string;\n}\n\nconst defaultContent = ({ maxSize, minSize, icon }: CircleDefaultContentProps) => {\n return (\n \n \n \n \n \n \n );\n};\n\nconst noCircleContent = ({ maxSize, minSize, icon }: CircleDefaultContentProps) => {\n return (\n \n \n \n \n );\n};\n\nexport interface ICenteringGuideProps {\n icon?: AuroraIconType;\n minSize?: string;\n maxSize?: string;\n centeringGuideType?: CenteringGuideType;\n text?: string;\n}\n\nexport const CenteringGuide = ({\n icon,\n minSize = '170px',\n maxSize = '170px',\n centeringGuideType = CenteringGuideType.Default,\n text,\n}: ICenteringGuideProps) => {\n const guideMap = {\n [CenteringGuideType.NoCircle]: noCircleContent({ icon, maxSize, minSize }),\n [CenteringGuideType.Default]: defaultContent({ icon, maxSize, minSize }),\n [CenteringGuideType.Pin]: pinContent,\n };\n\n return (\n \n {guideMap[centeringGuideType]}\n {text && }\n \n );\n};\n","import React, { FC, ReactElement, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { CenteringGuide, CenteringGuideType } from '@aurorasolar/common-core/src/centering-guide';\nimport { GoogleMaps, useAppModule } from '@aurorasolar/common-module-loader';\n\nimport { MarkerProps } from './marker';\n\nconst MapPositionWrapper = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n`;\n\nconst MapContainer = styled.div`\n min-height: 100px;\n width: 100%;\n height: 100%;\n`;\ninterface CustomMapOptions {\n showCenteringGuide?: boolean;\n centeringGuideType?: CenteringGuideType;\n centeringGuideText?: string;\n}\n\ninterface GoogleMapProps extends GoogleMapEvents {\n options: google.maps.MapOptions & CustomMapOptions;\n children?: ReactElement | false | (ReactElement | false)[];\n}\n\ninterface GoogleMapEvents {\n onDragEnd?: (center: google.maps.LatLng) => void;\n onCenterChanged?: (center: google.maps.LatLng) => void;\n}\n\nexport const GoogleMap: FC = ({\n options,\n children = [],\n onCenterChanged,\n onDragEnd,\n}) => {\n const filteredChildren = (Array.isArray(children) ? children : [children]).filter(\n (marker) => marker,\n ) as ReactElement[];\n const googleMap = useAppModule(GoogleMaps);\n const [map, setMap] = useState | undefined>(undefined);\n const mapContainerRef = useRef(null);\n\n const initialConfig = useRef(options);\n\n useEffect(() => {\n if (map != null || googleMap?.maps == null || mapContainerRef.current == null) {\n return;\n }\n\n const newMap = new googleMap.maps.Map(mapContainerRef.current, initialConfig.current);\n\n setMap(newMap);\n }, [map, googleMap, mapContainerRef]);\n\n useEffect(() => {\n if (options !== initialConfig.current) {\n map?.setOptions(options);\n }\n }, [map, options]);\n\n /** Listeners */\n\n useEffect(() => {\n if (onDragEnd == null) {\n return () => {};\n }\n\n // drag_end event fires\n const listener = map?.addListener('idle', () => {\n if (map) {\n onDragEnd(map.getCenter());\n }\n });\n\n return () => {\n if (listener) {\n googleMap?.maps.event.removeListener(listener);\n }\n };\n }, [map, googleMap, onDragEnd]);\n\n useEffect(() => {\n if (onCenterChanged == null) {\n return () => {};\n }\n const listener = map?.addListener('center_changed', () => {\n if (map) {\n onCenterChanged(map.getCenter());\n }\n });\n return () => {\n if (listener) {\n googleMap?.maps.event.removeListener(listener);\n }\n };\n }, [map, googleMap, onCenterChanged]);\n\n return (\n \n \n {filteredChildren.map((child, i) => React.cloneElement(child, { key: i, map }))}\n \n {options.showCenteringGuide && (\n \n )}\n \n );\n};\n","import { SourcePage } from './source-page';\n\nexport interface LCAIImage {\n alt: string;\n name: string;\n position?: string;\n}\n\nexport const IMAGES = {\n AddressImage: { alt: 'View of earth from space', name: 'location' },\n BillUploadImage: {\n alt: 'Bungalow with solar panels with lots of shrubs and two trees in the foreground',\n name: 'bill-upload',\n position: '0% 90%',\n },\n ComingSoonImage: {\n alt: 'Women in kitchen with wood shelves containing dishes',\n name: 'coming-soon',\n },\n DropOffImage: {\n alt: \"Bird's-eye view of a neighborhood at sunrise showing roofs with and without solar\",\n name: 'drop-off',\n },\n LandingImage: {\n alt: 'Patio scene with solar home in background',\n name: 'how-it-works',\n position: 'center 30%',\n },\n ProfileReviewImage: {\n alt: 'An older couple reviewing their solar needs with a solar expert',\n name: 'profile-review',\n position: '60% 10%',\n },\n QuoteImage: {\n alt: 'Yellow brick house with solar panels with greenery in foreground',\n name: 'get-in-touch',\n },\n ThankYouImage: {\n alt: 'Open french doors to balcony containing potted plants with trees in the distance',\n name: 'thank-you',\n },\n UtilityImage: {\n alt: 'String of electric lights hanging between trees',\n name: 'savings',\n position: 'center 75%',\n },\n};\n\nconst MAPPED_IMAGES = {\n [SourcePage.ADDRESS]: IMAGES.AddressImage,\n [SourcePage.ADDRESS_DROP]: IMAGES.DropOffImage,\n [SourcePage.BILL_UPLOAD]: IMAGES.BillUploadImage,\n [SourcePage.ERROR]: IMAGES.ComingSoonImage,\n [SourcePage.GENERIC_DROP]: IMAGES.DropOffImage,\n [SourcePage.LANDING]: IMAGES.LandingImage,\n [SourcePage.OWNERSHIP_DROP]: IMAGES.ComingSoonImage,\n [SourcePage.QUOTE]: IMAGES.QuoteImage,\n [SourcePage.THANK_YOU]: IMAGES.ThankYouImage,\n [SourcePage.UTILITY]: IMAGES.UtilityImage,\n};\n\nexport function ImageMatcher(sourcePage: SourcePage): LCAIImage {\n return MAPPED_IMAGES[sourcePage];\n}\n","import styled from 'styled-components';\n\nimport { CustomImageFragment } from '../lead-capture.generated';\nimport { S3_IMAGE_LOCATION } from '../utils/constants';\nimport { ImageMatcher } from '../utils/image-matcher';\nimport { SourcePage } from '../utils/source-page';\n\nconst DEFAULT_POSITION = 'center';\n\nexport interface ImageProps {\n customImage?: CustomImageFragment | null;\n alt?: string;\n children?: JSX.Element;\n name?: string;\n position?: string;\n sourcePage?: SourcePage;\n}\n\nexport const Image = ({\n alt,\n children,\n customImage,\n name,\n position = DEFAULT_POSITION,\n sourcePage,\n}: ImageProps) => {\n const matchedImage = sourcePage && ImageMatcher(sourcePage);\n\n const webpSrc = `${S3_IMAGE_LOCATION + (matchedImage?.name || name)}.webp`;\n const jpgSrc = `${S3_IMAGE_LOCATION + (matchedImage?.name || name)}.jpg`;\n\n const url = (customImage?.isActive && customImage?.url) || webpSrc;\n const fallbackUrl = (customImage?.isActive && customImage?.fallbackUrl) || jpgSrc;\n const altText = (customImage?.isActive && customImage?.altText) || matchedImage?.alt || alt;\n const positionAttr = (!customImage?.isActive && matchedImage?.position) || position;\n\n return (\n \n \n \n
\n \n {children}\n \n );\n};\n\nconst ImageContainer = styled.div`\n position: relative;\n height: 100%;\n`;\n\nconst Img = styled.img`\n object-fit: cover;\n object-position: ${(props: Pick) => `${props.position}`};\n height: 100%;\n width: 100%;\n`;\n","import { useMemo } from 'react';\nimport styled from 'styled-components';\n\nimport { CenteringGuide } from '@aurorasolar/common-core/src/centering-guide';\nimport { GoogleMap } from '@aurorasolar/common-google-map';\n\nimport { MAP_OPTIONS } from '../utils/constants';\n\nexport const MAP_TEST_ID = 'map-test-id';\n\nconst MapWrapper = styled.div`\n position: relative;\n height: 100%;\n`;\n\ninterface MapProps {\n lat: number;\n lng: number;\n onAddressChange?: (center: google.maps.LatLng) => void;\n tilt45?: boolean;\n viewOnly?: boolean;\n}\n\nexport const Map = ({ lat, lng, onAddressChange, tilt45 = false, viewOnly = false }: MapProps) => {\n const options = useMemo(\n () => ({\n ...MAP_OPTIONS,\n center: { lat, lng },\n draggable: !viewOnly,\n tilt: tilt45 ? 45 : 0,\n zoomControl: !tilt45,\n }),\n [lat, lng, tilt45, viewOnly],\n );\n\n return (\n \n onAddressChange?.(center)} options={options} />\n {!tilt45 && (\n \n )}\n \n );\n};\n"],"names":["DropShadowImg","img","OverlayWrapper","div","TextWrapper","WHITE","maxSize","minSize","CircleWrapper","TextCenterWrapper","PinIconWrapper","CenteringGuideType","Circle","withBorder","diameter","background","translation","OuterCircle","InnerCircle","CenteringIconBackground","GRAY_800","CenteringIcon","icon","LOCATION_PIN","fillColor","name","size","Text","text","pinContent","alt","src","width","defaultContent","noCircleContent","CenteringGuide","centeringGuideType","Default","guideMap","NoCircle","Pin","MapPositionWrapper","MapContainer","GoogleMap","options","children","onCenterChanged","onDragEnd","filteredChildren","Array","isArray","filter","marker","googleMap","map","setMap","useState","undefined","mapContainerRef","useRef","initialConfig","useEffect","maps","current","newMap","Map","setOptions","listener","addListener","getCenter","event","removeListener","ref","className","child","i","key","showCenteringGuide","centeringGuideText","IMAGES","AddressImage","BillUploadImage","position","ComingSoonImage","DropOffImage","LandingImage","ProfileReviewImage","QuoteImage","ThankYouImage","UtilityImage","MAPPED_IMAGES","ADDRESS","ADDRESS_DROP","BILL_UPLOAD","ERROR","GENERIC_DROP","LANDING","OWNERSHIP_DROP","QUOTE","THANK_YOU","UTILITY","Image","customImage","sourcePage","matchedImage","ImageMatcher","webpSrc","jpgSrc","url","isActive","fallbackUrl","altText","positionAttr","ImageContainer","srcSet","type","Img","props","MapWrapper","lat","lng","onAddressChange","tilt45","viewOnly","useMemo","center","draggable","tilt","zoomControl"],"sourceRoot":""}