{"version":3,"file":"static/chunks/app/[locale]/(pdp)/locations/[slug]/page-57f886fd7e25979b.js","mappings":"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","sources":["webpack://_N_E/?08f2","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/LocationEvents.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/MeetingRoom/MeetingRoomCardSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/MeetingRoom/MeetingRoomSearchFiltersSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NearbyLocationItem.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NearbyLocationsList.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationCtas.tsx","webpack://_N_E/./hooks/useLocationImageOrPlaceholderCollection.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationGallery.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/StaticHeader.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/StickyHeader.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationHeader.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/OfficeSearch/OfficeSearchFiltersSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/OfficeSearch/OfficeSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/OfficeSearch/OfficeSearchResultSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/ProductRadioGroup.tsx","webpack://_N_E/./utils/fullstory-utils.ts","webpack://_N_E/./components/FullStory.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/Coworking/CoworkingProductSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/Coworking/CoworkingProductsSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/MeetingRoom/MeetingRoomSearchSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/OfficeSearch/OfficeSearchSkeleton.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/ProductDetailsCard.tsx","webpack://_N_E/./app/[locale]/(pdp)/locations/[slug]/_components/ProductSearchFactory.tsx","webpack://_N_E/./components/Banner.tsx","webpack://_N_E/./components/LocationOpeningLabel.tsx","webpack://_N_E/./components/ReadMore.tsx","webpack://_N_E/./public/icons/ssosBannerIcon.svg","webpack://_N_E/./components/SsosBanner.tsx","webpack://_N_E/./components/gallery/GalleryButton.tsx","webpack://_N_E/./components/gallery/GallerySummaryImage.tsx","webpack://_N_E/./components/gallery/GallerySummaryImages.tsx","webpack://_N_E/./components/gallery/GallerySummary.tsx","webpack://_N_E/./components/search/search-type.enum.ts","webpack://_N_E/./components/search/useSearchPageParams.tsx","webpack://_N_E/./components/typography/PrimaryHeading.tsx","webpack://_N_E/./components/typography/TertiaryHeading.tsx","webpack://_N_E/./hooks/useAuthData.tsx","webpack://_N_E/./hooks/useDateUtils.tsx","webpack://_N_E/./hooks/useLocationImagePlaceholder.tsx","webpack://_N_E/./hooks/useRouter.tsx","webpack://_N_E/./hooks/useScreenSize.tsx","webpack://_N_E/./lib/locations/get-nearest-location.ts","webpack://_N_E/./lib/locations/get-nearest-locations.ts","webpack://_N_E/./lib/locations/pricing-api.tsx","webpack://_N_E/./lib/locations/index.ts","webpack://_N_E/./lib/locations/location-api.tsx","webpack://_N_E/./lib/users/users.ts","webpack://_N_E/./models/index.ts","webpack://_N_E/./models/solutions-pages-utils.ts","webpack://_N_E/./public/icons/checkmarkIconAlt.svg"],"sourcesContent":["import(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/LocationEvents.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/NearbyLocationsList.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationCtas.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationGallery.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/NewLocationPage/LocationHeader.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/ProductRadioGroup.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"ProductSearchFactory\"] */ \"/codebuild/output/src2606472900/src/website/app/[locale]/(pdp)/locations/[slug]/_components/ProductSearchFactory.tsx\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/components/ImageWithPlaceholder.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/components/InteractiveMap.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"Link\"] */ \"/codebuild/output/src2606472900/src/website/components/Link.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/components/ReadMore.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/codebuild/output/src2606472900/src/website/components/SsosBanner.tsx\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/@next/third-parties/dist/google/ga.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/@next/third-parties/dist/google/gtm.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/@next/third-parties/dist/ThirdPartyScriptEmbed.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/next/dist/client/image-component.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/next/dist/client/link.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/next/dist/client/script.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/node_modules/next/font/local/target.css?{\\\"path\\\":\\\"theme/tiemposFont.ts\\\",\\\"import\\\":\\\"\\\",\\\"arguments\\\":[{\\\"src\\\":[{\\\"path\\\":\\\"../public/fonts/TiemposHeadline-Regular.otf\\\",\\\"weight\\\":\\\"400\\\"},{\\\"path\\\":\\\"../public/fonts/TiemposHeadline-Medium.otf\\\",\\\"weight\\\":\\\"500\\\"}],\\\"variable\\\":\\\"--tiempos-headline-font\\\"}],\\\"variableName\\\":\\\"tiemposFont\\\"}\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/directionsIcon.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/ellipse.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-airport.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-bike.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-bus.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-car.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-other.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-parking.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-subway.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-train.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/icons/transit-transit_hub.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/images/brands/TGR.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2606472900/src/website/public/images/brands/welkin-and-meraki.svg\");\n","'use client';\n\nimport { sendGTMEvent } from '@next/third-parties/google';\nimport { useEffect } from 'react';\n\nimport { usePathname } from '@/i18n/navigation';\nimport { LocationDto } from '@/lib/locations';\n\ntype LocationEventsProps = {\n location: LocationDto;\n};\n\nexport default function LocationEvents({ location }: LocationEventsProps) {\n const pathname = usePathname();\n useEffect(() => {\n const gtmOptions = {\n location_name: location.name,\n location_city: location.city,\n location_metro: location.metroName,\n location_country: location.country,\n location_id: location.id,\n };\n\n sendGTMEvent({\n event: 'pageview',\n url: pathname,\n pageType: 'location',\n ...gtmOptions,\n });\n }, []);\n\n return null;\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nexport function MeetingRoomCardSkeleton() {\n return (\n
\n \n\n
\n \n \n \n
\n
\n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nexport default function MeetingRoomSearchFiltersSkeleton() {\n return (\n
\n \n
\n \n \n \n
\n
\n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\n\nimport { Amenity, AmenityCode } from '@/components/Amenity';\nimport { ImageWithPlaceholder } from '@/components/ImageWithPlaceholder';\nimport { Link } from '@/components/Link';\nimport LocationOpeningLabel from '@/components/LocationOpeningLabel';\nimport { useLocationImageOrPlaceholder } from '@/hooks/useLocationImagePlaceholder';\nimport { ScreenSize, useScreenSize } from '@/hooks/useScreenSize';\nimport { LocationPhases, SimpleLocationDto } from '@/lib/locations';\nimport { getFormattedAddressByCountry } from '@/models/location-utils';\n\ntype NearbyLocationItemProps = {\n location: SimpleLocationDto;\n};\n\nconst MAX_AMENITIES_DISPLAY = 4;\nconst MOBILE_MAX_AMENITIES_DISPLAY = 2;\n\nexport default function NearbyLocationItem({\n location,\n}: NearbyLocationItemProps) {\n const t = useTranslations('location.nearby-locations');\n const locationUrl = `/locations/${location.slug}`;\n const image = useLocationImageOrPlaceholder(location.image);\n const screenSize = useScreenSize();\n\n const showOpeningLabel = [\n LocationPhases.Signed,\n LocationPhases.Launch,\n ].includes(location.phase);\n\n const formattedAddress = getFormattedAddressByCountry({\n country: location.country,\n address: location.address,\n address2: location.address2,\n city: location.city,\n state: location.state,\n zipCode: location.zipCode,\n });\n\n const amenities = location.amenities?.unique;\n\n const isMobile = screenSize < ScreenSize.SM;\n\n const maxAmenitiesDisplay = isMobile\n ? MOBILE_MAX_AMENITIES_DISPLAY\n : MAX_AMENITIES_DISPLAY;\n\n return (\n \n
\n \n\n
\n {showOpeningLabel && location.firstDayOfBusinessISO && (\n \n )}\n\n
\n \n {location.name}\n \n
\n
\n

\n {formattedAddress.addressLine1} {formattedAddress.addressLine2}\n

\n {location.phone && (\n <>\n |\n

{location.phone}

\n \n )}\n
\n {amenities && amenities.length > 0 && (\n
\n {amenities.slice(0, maxAmenitiesDisplay).map((amenity, i) => (\n \n {i === maxAmenitiesDisplay - 1 &&\n amenities.length > maxAmenitiesDisplay && (\n \n {t('and-more-amenities', {\n count: amenities.length - maxAmenitiesDisplay,\n })}\n \n )}\n \n ))}\n
\n )}\n
\n
\n \n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\n\nimport { Link } from '@/components/Link';\nimport ChevronIcon from '@/components/icons/ChevronIcon';\nimport TertiaryHeading from '@/components/typography/TertiaryHeading';\nimport { SimpleLocationDto } from '@/lib/locations/dto';\nimport { tiemposFont } from '@/theme/tiemposFont';\nimport { MAP_SEARCH_MARKET_NEARBY_ZOOM } from '@/utils/constants';\n\nimport NearbyLocationItem from './NearbyLocationItem';\n\nimport clsx from 'clsx';\n\ntype NearbyLocationsListProps = {\n nearLocations: SimpleLocationDto[];\n market: string;\n};\n\nexport default function NearbyLocationsList({\n nearLocations,\n market,\n}: NearbyLocationsListProps) {\n const t = useTranslations('location.nearby-locations');\n\n if (nearLocations.length === 0) {\n return null;\n }\n\n const { geolocalization: firstLocationCoords } = nearLocations[0];\n const marketUrl = `/locations?query=${market}¢er=${[\n firstLocationCoords.lng,\n firstLocationCoords.lat,\n ]}&zoom=${MAP_SEARCH_MARKET_NEARBY_ZOOM}`;\n\n return (\n
\n {t('title')}\n\n \n\n \n {t('link-all-locations', { market })}\n \n \n
\n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\n\nimport { Button, ButtonAction } from '@/components/buttons/Button';\nimport { Link } from '@/i18n/navigation';\nimport { LocationDto } from '@/lib/locations/dto/location.dto';\nimport { getLocationPrimaryCtaType } from '@/models/location-utils';\n\ntype LocationCtasProps = {\n location: LocationDto;\n className?: string;\n};\n\nconst STICKY_HEADER_HEIGHT = 150;\n\nexport default function LocationCtas({\n location,\n className,\n}: LocationCtasProps) {\n const t = useTranslations('location');\n\n const locationType = getLocationPrimaryCtaType({\n phase: location.phase,\n isEarlyInPersonTourEnabled: location.isEarlyInPersonTourEnabled,\n calendlyLinks: location.calendlyLinks,\n });\n\n return (\n
\n {\n const productSection = document.getElementById('products-section');\n if (productSection) {\n window.scrollTo({\n top:\n productSection.getBoundingClientRect().top -\n STICKY_HEADER_HEIGHT,\n behavior: 'smooth',\n });\n }\n }}\n data-testid=\"location-contact-cta\"\n >\n {t('cta.see-available')}\n \n \n {location.isWaitlisting\n ? t('cta.join-waitlist')\n : t(`cta.${locationType}`)}\n \n
\n );\n}\n","import { useTranslations } from 'next-intl';\nimport { useEffect, useState } from 'react';\n\nimport { ImageDto } from '@/lib/image.dto';\n\nexport function useLocationImageOrPlaceholderCollection(\n images: ImageDto[],\n minSize = 3\n) {\n const t = useTranslations('general.image-placeholders');\n\n const getImagePlaceholder = (number: number): ImageDto => ({\n url: `/public-s3/images/location-placeholders/placeholder_${number}.webp`,\n altText: t(`${number}.alt`),\n caption: null,\n order: number,\n });\n\n const getCollectionCompleted = () => {\n const collection = [...images];\n\n while (collection.length < minSize) {\n collection.push(getImagePlaceholder(collection.length + 1));\n }\n\n return collection;\n };\n\n const [collection, setCollection] = useState(\n getCollectionCompleted()\n );\n\n useEffect(() => {\n setCollection(getCollectionCompleted());\n }, [images]);\n\n return collection;\n}\n","'use client';\n\nimport { GallerySummary } from '@/components/gallery/GallerySummary';\nimport { useLocationImageOrPlaceholderCollection } from '@/hooks/useLocationImageOrPlaceholderCollection';\nimport { ImageDto } from '@/lib/image.dto';\n\ntype LocationGalleryProps = {\n locationImages: ImageDto[];\n matterportUrl: string | null;\n};\n\nexport default function LocationGallery({\n locationImages,\n matterportUrl,\n}: LocationGalleryProps) {\n const images = useLocationImageOrPlaceholderCollection(locationImages);\n\n return (\n \n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\n\nimport { Link } from '@/components/Link';\nimport LocationOpeningLabel from '@/components/LocationOpeningLabel';\nimport PrimaryHeading from '@/components/typography/PrimaryHeading';\nimport { LocationDto } from '@/lib/locations/dto/location.dto';\nimport { Countries } from '@/models/Countries.enum';\nimport {\n getLocationHighlightName,\n shouldShowOpeningLabel,\n} from '@/utils/locations';\n\nimport LocationCtas from './LocationCtas';\n\ntype StaticHeaderProps = {\n location: LocationDto;\n directionUrl: string;\n className?: string;\n};\n\nexport default function StaticHeader({\n location,\n directionUrl,\n className,\n}: StaticHeaderProps) {\n const t = useTranslations('location');\n\n const showOpeningLabel = shouldShowOpeningLabel({\n hideOpeningDate: location.hideOpeningDate,\n firstDayOfBusinessISO: location.firstDayOfBusinessISO,\n phase: location.phase,\n });\n\n return (\n
\n
\n
\n {location.salesHighlightBanner && (\n \n {location.salesHighlightBanner}\n

\n )}\n\n
\n \n {location.address}\n \n {showOpeningLabel && (\n \n )}\n
\n\n
\n

\n \n {getLocationHighlightName({\n name: location.name,\n brandName: location.brandName,\n t,\n })}\n \n |\n {`${\n location.country === Countries.France\n ? `${location.zipCode} `\n : ''\n }${location.city}, ${location.state}`}\n

\n\n \n {t('link-directions')}\n \n
\n
\n\n \n
\n
\n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\n\nimport { Link } from '@/components/Link';\nimport LocationOpeningLabel from '@/components/LocationOpeningLabel';\nimport { LocationDto } from '@/lib/locations/dto/location.dto';\nimport { Countries } from '@/models/Countries.enum';\nimport {\n getLocationHighlightName,\n shouldShowOpeningLabel,\n} from '@/utils/locations';\n\nimport LocationCtas from './LocationCtas';\n\nimport clsx from 'clsx';\n\ntype StickyHeaderProps = {\n location: LocationDto;\n directionUrl: string;\n className?: string;\n};\n\nexport default function StickyHeader({\n location,\n directionUrl,\n className,\n}: StickyHeaderProps) {\n const t = useTranslations('location');\n\n const showOpeningLabel = shouldShowOpeningLabel({\n hideOpeningDate: location.hideOpeningDate,\n firstDayOfBusinessISO: location.firstDayOfBusinessISO,\n phase: location.phase,\n });\n\n return (\n \n
\n
\n {location.salesHighlightBanner && (\n \n {location.salesHighlightBanner}\n

\n )}\n
\n \n \n {getLocationHighlightName({\n name: location.name,\n brandName: location.brandName,\n t,\n })}\n \n \n \n {`${location.address}, ${\n location.country === Countries.France\n ? `${location.zipCode} `\n : ''\n }${location.city}, ${location.state}`}\n \n
\n {showOpeningLabel && (\n \n )}\n
\n\n \n
\n \n );\n}\n","'use client';\n\nimport debounce from 'lodash.debounce';\nimport { useEffect, useState } from 'react';\n\nimport { LocationDto } from '@/lib/locations';\nimport { getGoogleMapsDirectionUrl } from '@/models/location-utils';\n\nimport StaticHeader from './StaticHeader';\nimport StickyHeader from './StickyHeader';\n\nimport clsx from 'clsx';\n\ntype LocationHeaderProps = {\n location: LocationDto;\n};\n\nexport default function LocationHeader({ location }: LocationHeaderProps) {\n const [isSticky, setIsSticky] = useState(false);\n\n useEffect(() => {\n const handleScroll = debounce(() => {\n const scrollTop =\n document.body.scrollTop || document.documentElement.scrollTop;\n if (scrollTop > 60) {\n setIsSticky((prev) => (prev !== true ? true : prev));\n } else {\n setIsSticky((prev) => (prev !== false ? false : prev));\n }\n }, 50);\n\n window.addEventListener('scroll', handleScroll);\n return () => window.removeEventListener('scroll', handleScroll);\n }, []);\n\n const directionUrl = getGoogleMapsDirectionUrl({\n city: location.city,\n address: location.address,\n brandName: location.brandName,\n name: location.name,\n state: location.state,\n zipCode: location.zipCode,\n });\n\n return (\n
\n \n \n
\n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nexport default function OfficeSearchFiltersSkeleton() {\n return (\n
\n \n
\n \n \n
\n
\n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nexport function OfficeSkeleton() {\n return (\n
\n \n\n
\n \n \n \n
\n
\n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nimport { OfficeSkeleton } from './OfficeSkeleton';\n\nexport default function OfficeSearchResultSkeleton() {\n return (\n
\n \n
  • \n \n
  • \n
  • \n \n
  • \n \n\n \n
    \n );\n}\n","'use client';\n\nimport { Tag, TagVariant } from '@industriousoffice/react-components';\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group';\nimport { useLocale, useTranslations } from 'next-intl';\nimport { useSearchParams } from 'next/navigation';\n\nimport useSearchPageParams from '@/components/search/useSearchPageParams';\nimport { useDateUtils } from '@/hooks/useDateUtils';\nimport { GeolocalizationDto, LocationPhases } from '@/lib/locations';\nimport { Frequency } from '@/models/Frequency.enum';\nimport { Products } from '@/models/Products.enum';\nimport {\n getOpeningDate,\n getOpeningLabelTranslationKey,\n shouldShowOpeningLabel,\n} from '@/utils/locations';\n\nimport { OnDemandProduct, getProductFromSearchParams } from './utils';\n\ntype ProductRadioGroupProps = {\n currencyIsoCode: string;\n products: OnDemandProduct[];\n locationFirstDayOfBusiness: string | null;\n locationGeolocalization: GeolocalizationDto;\n hideOpeningDate: boolean;\n locationPhase: LocationPhases;\n};\n\nexport default function ProductRadioGroup({\n currencyIsoCode,\n products,\n locationFirstDayOfBusiness,\n locationGeolocalization,\n hideOpeningDate,\n locationPhase,\n}: ProductRadioGroupProps) {\n const searchParams = useSearchParams();\n const { updateQuery } = useSearchPageParams();\n\n const selection: Products = getProductFromSearchParams(\n searchParams,\n products\n );\n\n const updateSelectedProduct = (product: string) => {\n const params = new URLSearchParams(searchParams.toString());\n params.set('product', product);\n window.history.replaceState(null, '', `?${params.toString()}`);\n updateQuery({\n seats: undefined,\n amenities: undefined,\n day: undefined,\n startTime: undefined,\n endTime: undefined,\n });\n };\n\n return (\n \n {products.map((product) => (\n \n ))}\n \n );\n}\n\ntype ProductRadioButtonProps = {\n currencyIsoCode: string;\n title: string;\n prices: { price: number; frequency: Frequency }[];\n tag: string;\n value: Products.Office | Products.MeetingRoom | Products.Coworking;\n locationFirstDayOfBusiness: string | null;\n locationGeolocalization: GeolocalizationDto;\n hideOpeningDate: boolean;\n locationPhase: LocationPhases;\n};\n\nfunction ProductRadioButton({\n currencyIsoCode,\n title,\n prices,\n tag,\n value,\n locationFirstDayOfBusiness,\n locationGeolocalization,\n hideOpeningDate,\n locationPhase,\n}: ProductRadioButtonProps) {\n const t = useTranslations('general');\n const locale = useLocale();\n const { format, addDays } = useDateUtils();\n\n const tomorrowDate = format(addDays(new Date(), 1), 'P');\n\n const openingDate = locationFirstDayOfBusiness\n ? getOpeningDate(locationFirstDayOfBusiness)\n : null;\n\n const showOpeningLabel = shouldShowOpeningLabel({\n hideOpeningDate: hideOpeningDate,\n firstDayOfBusinessISO: locationFirstDayOfBusiness,\n phase: locationPhase,\n });\n\n const startingAtValue = prices\n .map(({ price, frequency }) =>\n t(getFrequencyTranslationKey(frequency), {\n price: Intl.NumberFormat(locale, {\n style: 'currency',\n currency: currencyIsoCode,\n maximumFractionDigits: 0,\n }).format(price),\n })\n )\n .join(' • ');\n\n return (\n \n
    \n
    \n \n \n \n
    \n \n {title}\n \n \n {prices.length > 0 && value !== Products.Office && (\n \n {`${t('available-from')} `}\n {startingAtValue}\n

    \n )}\n {value === Products.Office && (\n \n {showOpeningLabel && openingDate\n ? t(\n `opening-${getOpeningLabelTranslationKey({\n openingDate,\n latitude: locationGeolocalization.lat,\n })}`,\n {\n date: openingDate,\n year: openingDate.getFullYear(),\n }\n )\n : t('move-in-ready', { date: tomorrowDate })}\n

    \n )}\n
    \n \n );\n}\n\nfunction getFrequencyTranslationKey(frequency: Frequency) {\n switch (frequency) {\n case Frequency.Daily:\n return 'per-day';\n case Frequency.Hourly:\n return 'per-hour';\n case Frequency.Monthly:\n return 'per-month';\n }\n}\n","import { init } from '@fullstory/browser';\n\nconst ORG_ID = 'o-22Q8VT-na1';\n\nexport async function initFullStory() {\n await init({ orgId: ORG_ID, startCaptureManually: true });\n}\n","'use client';\n\nimport { FullStory as FS } from '@fullstory/browser';\nimport { useEffect } from 'react';\n\nimport { useAuthData } from '@/hooks/useAuthData';\nimport { getServerConfig } from '@/utils/config';\nimport { initFullStory } from '@/utils/fullstory-utils';\nimport { isUserIndustriousEmployee } from '@/utils/user-utils';\n\nexport function FullStory() {\n const { isLoading, email } = useAuthData();\n const { IS_PROD } = getServerConfig();\n\n useEffect(() => {\n if (!IS_PROD || isLoading) return;\n\n if (email) {\n const isIndEmployee = isUserIndustriousEmployee(email);\n\n if (isIndEmployee) {\n return;\n }\n }\n\n startFSRecording();\n }, [isLoading, email]);\n\n const startFSRecording = async () => {\n await initFullStory();\n FS('start');\n };\n\n return null;\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nexport default function CoworkingProductSkeleton() {\n return (\n
    \n \n
    \n \n\n \n\n
    \n \n \n \n
    \n\n
    \n \n
    \n
    \n
    \n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nimport CoworkingProductSkeleton from './CoworkingProductSkeleton';\n\nexport default function CoworkingProductsSkeleton() {\n return (\n
    \n \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nimport { MeetingRoomCardSkeleton } from './MeetingRoomCardSkeleton';\nimport MeetingRoomSearchFiltersSkeleton from './MeetingRoomSearchFiltersSkeleton';\n\nexport default function MeetingRoomSearchSkeleton() {\n return (\n
    \n \n \n \n
    \n \n
    \n );\n}\n","import { SkeletonLoader } from '@/components/SkeletonLoader';\n\nimport OfficeSearchFiltersSkeleton from './OfficeSearchFiltersSkeleton';\nimport OfficeSearchResultSkeleton from './OfficeSearchResultSkeleton';\n\nexport default function OfficeSearchSkeleton() {\n return (\n
    \n \n \n \n
    \n );\n}\n","import Image from 'next/image';\n\nimport { ImageWithPlaceholder } from '@/components/ImageWithPlaceholder';\nimport { LinkButtonThemes, SecondaryLinkButton } from '@/components/buttons';\nimport checkmarkIcon from '@/public/icons/checkmarkIconAlt.svg';\n\ntype ProductDetailsCardProps = {\n title: string;\n bulletPoints: string[];\n image: string;\n ctaUrl: string;\n ctaLabel: string;\n};\n\nexport default function ProductDetailsCard({\n bulletPoints,\n title,\n image,\n ctaLabel,\n ctaUrl,\n}: ProductDetailsCardProps) {\n return (\n
    \n

    {title}

    \n
    \n \n
    \n
      \n {bulletPoints.map((bullet, index) => (\n
    • \n \n

      {bullet}

      \n
    • \n ))}\n
    \n
    \n \n {ctaLabel}\n \n
    \n
    \n
    \n
    \n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\nimport dynamic from 'next/dynamic';\nimport { useParams, useSearchParams } from 'next/navigation';\nimport { useMemo } from 'react';\n\nimport { FullStory } from '@/components/FullStory';\nimport { Amenity } from '@/lib/amenities/dto/amenity.dto';\nimport { GeolocalizationDto } from '@/lib/locations';\nimport { LocationOpeningHoursDto } from '@/lib/locations/dto/location-opening-hours.dto';\nimport { BlackoutDateDto } from '@/lib/shared/dto/blackout-date.dto';\nimport { Countries } from '@/models/Countries.enum';\nimport { Products } from '@/models/Products.enum';\nimport { OFFICE_WINDOW_IMG } from '@/models/location-utils';\n\nimport CoworkingProductsSkeleton from './Coworking/CoworkingProductsSkeleton';\nimport MeetingRoomSearchSkeleton from './MeetingRoom/MeetingRoomSearchSkeleton';\nimport OfficeSearchSkeleton from './OfficeSearch/OfficeSearchSkeleton';\nimport ProductDetailsCard from './ProductDetailsCard';\nimport { OnDemandProduct, getProductFromSearchParams } from './utils';\n\nconst CoworkingProducts = dynamic(\n () => import('./Coworking/CoworkingProducts'),\n {\n loading: () => ,\n }\n);\nconst MeetingRoomSearch = dynamic(\n () => import('./MeetingRoom/MeetingRoomSearch'),\n {\n loading: () => ,\n }\n);\nconst OfficeSearch = dynamic(() => import('./OfficeSearch/OfficeSearch'), {\n loading: () => ,\n});\n\ntype ProductSearchFactoryProps = {\n currencyIsoCode: string;\n openingHours: LocationOpeningHoursDto;\n blackoutDates: BlackoutDateDto[];\n coworkingDailyPrice: number | undefined;\n coworkingMonthlyPrice: number | undefined;\n country: Countries;\n locationCity: string;\n locationName: string;\n locationState: string;\n hasMembership: boolean;\n locationId: string;\n hasDayPass: boolean;\n isMembershipSoldOut: boolean;\n isMembershipSellableOnline: boolean;\n nearByLocationsUrl: string;\n locationGeolocalization: GeolocalizationDto;\n allMeetingRoomAmenities: Amenity[];\n products: OnDemandProduct[];\n};\n\nexport function ProductSearchFactory({\n blackoutDates,\n openingHours,\n coworkingDailyPrice,\n coworkingMonthlyPrice,\n currencyIsoCode,\n country,\n hasMembership,\n hasDayPass,\n isMembershipSoldOut,\n isMembershipSellableOnline,\n nearByLocationsUrl,\n locationName,\n locationCity,\n locationState,\n locationGeolocalization,\n locationId,\n allMeetingRoomAmenities,\n products,\n}: ProductSearchFactoryProps) {\n const searchParams = useSearchParams();\n const params = useParams();\n const selection: Products = getProductFromSearchParams(\n searchParams,\n products\n );\n const t = useTranslations('location.on-demand');\n const officeProduct = products.find(({ value }) => value === Products.Office);\n\n const officeProductBulletPoints = useMemo(\n () => [\n t('office.details-card.bullet-1'),\n t('office.details-card.bullet-2'),\n t('office.details-card.bullet-3'),\n t('office.details-card.bullet-4'),\n t('office.details-card.bullet-5'),\n t('office.details-card.bullet-6'),\n ],\n [t]\n );\n\n switch (selection) {\n case Products.Office:\n return (\n <>\n {/* Start FullStory recording only for location with SSOS */}\n {officeProduct && }\n {officeProduct?.canBuyOnline ? (\n \n ) : (\n \n )}\n \n );\n case Products.MeetingRoom:\n return (\n \n );\n case Products.Coworking:\n return (\n \n );\n default:\n return null;\n }\n}\n","import { StaticImport } from 'next/dist/shared/lib/get-img-props';\nimport Image from 'next/image';\n\nimport closeIcon from '@/public/icons/closeIcon.svg';\n\nimport clsx from 'clsx';\n\ntype BannerProps = {\n testId: string;\n icon?: string | StaticImport;\n className?: string;\n description: string;\n title?: string;\n onClose?: () => void;\n};\n\nexport default function Banner({\n testId,\n icon,\n description,\n title,\n className,\n onClose,\n}: BannerProps) {\n return (\n \n {icon && (\n \n )}\n\n
    \n
    \n {title && (\n

    \n {title}\n

    \n )}\n {onClose && (\n \n \"close-icon\"\n \n )}\n
    \n\n

    {description}

    \n
    \n \n );\n}\n","import { useTranslations } from 'next-intl';\n\nimport { LatLng } from '@/models';\nimport {\n getOpeningDate,\n getOpeningLabelTranslationKey,\n} from '@/utils/locations';\n\nimport clsx from 'clsx';\n\ntype LocationOpeningLabelProps = {\n openingDateISO: string | null;\n locationGeolocalization: LatLng;\n className?: string;\n};\n\nexport default function LocationOpeningLabel(props: LocationOpeningLabelProps) {\n const { openingDateISO, locationGeolocalization, className } = props;\n const t = useTranslations('location');\n\n if (!openingDateISO) return null;\n const date = getOpeningDate(openingDateISO);\n\n const translationKey = getOpeningLabelTranslationKey({\n openingDate: date,\n latitude: locationGeolocalization.lat,\n });\n\n return (\n
    \n {t(`opening-${translationKey}`, { date, year: date.getFullYear() })}\n
    \n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\nimport { useState } from 'react';\n\ntype ReadMoreProps = {\n children: string;\n maxSize?: number;\n};\n\nexport default function ReadMore({\n children: text,\n maxSize = 300,\n}: ReadMoreProps) {\n const t = useTranslations('general');\n const [isReadMore, setIsReadMore] = useState(false);\n\n const truncatedText = text.length > maxSize ? text.slice(0, maxSize) : text;\n const hiddenText =\n text.length > maxSize ? text.slice(maxSize, text.length) : '';\n\n const handleReadMoreClicked = () => {\n setIsReadMore((prevValue) => !prevValue);\n };\n\n return (\n <>\n

    {text}

    \n

    \n {truncatedText}\n {hiddenText && !isReadMore && '...'}\n {hiddenText && isReadMore && hiddenText}\n

    \n {hiddenText && (\n \n {isReadMore ? t('read-less') : t('read-more')}\n \n )}\n \n );\n}\n","export default {\"src\":\"/_next/static/media/ssosBannerIcon.397cb6f2.svg\",\"height\":33,\"width\":32,\"blurWidth\":0,\"blurHeight\":0};","'use client';\n\nimport { useTranslations } from 'next-intl';\nimport { useState } from 'react';\n\nimport Banner from '@/components/Banner';\nimport icon from '@/public/icons/ssosBannerIcon.svg';\n\ntype SsosBannerProps = {\n className?: string;\n};\n\nexport default function SsosBanner({ className }: SsosBannerProps) {\n const t = useTranslations('ssos-banner');\n const [displayed, setDisplayed] = useState(true);\n\n if (!displayed) {\n return null;\n }\n\n return (\n setDisplayed(false)}\n />\n );\n}\n","import clsx from 'clsx';\n\nexport default function GalleryButton(\n props: React.ComponentPropsWithoutRef<'button'>\n) {\n const { className, children, ...btnProps } = props;\n\n return (\n \n {children}\n \n );\n}\n","import { ImageProps } from 'next/image';\n\nimport { ImageWithPlaceholder } from '@/components/ImageWithPlaceholder';\nimport { ImageDto } from '@/lib/image.dto';\n\ntype GallerySummaryImageProps = {\n image: ImageDto;\n className?: string;\n sizes: ImageProps['sizes'];\n priority?: ImageProps['priority'];\n placeholder?: ImageProps['placeholder'];\n blurDataURL?: ImageProps['blurDataURL'];\n loading?: ImageProps['loading'];\n};\n\nexport function GallerySummaryImage({\n image,\n sizes,\n priority,\n placeholder,\n blurDataURL,\n className,\n loading,\n}: GallerySummaryImageProps) {\n return (\n <>\n \n {image.isDefault && (\n

    \n {image.caption}\n

    \n )}\n \n );\n}\n","import { ImageDto } from '@/lib/image.dto';\n\nimport { GalleryMatterport } from './GalleryMatterport';\nimport { GallerySummaryImage } from './GallerySummaryImage';\n\nimport clsx from 'clsx';\n\ntype GallerySummaryProps = {\n images: ImageDto[];\n primaryImgSizes: string;\n otherImgSizes: string;\n numberImagesToDisplay?: number;\n matterportUrl?: string | null;\n showMatterportThumbnail?: boolean;\n};\n\nexport function GallerySummaryImages({\n images,\n numberImagesToDisplay = 3,\n primaryImgSizes,\n otherImgSizes,\n matterportUrl,\n showMatterportThumbnail,\n}: GallerySummaryProps) {\n const imagesToDisplay =\n showMatterportThumbnail && matterportUrl\n ? images.slice(1, numberImagesToDisplay - 1)\n : images.slice(1, numberImagesToDisplay);\n\n return (\n <>\n \n 3 ? 'grid-cols-2' : 'w-[388px]'\n )}\n >\n {imagesToDisplay.map((image) => (\n
    \n \n
    \n ))}\n {showMatterportThumbnail && matterportUrl && (\n
    \n \n
    \n )}\n \n \n );\n}\n","'use client';\n\nimport { useTranslations } from 'next-intl';\nimport dynamic from 'next/dynamic';\nimport { useState } from 'react';\n\nimport { ImageDto } from '@/lib/image.dto';\n\nimport GalleryButton from './GalleryButton';\nimport { GallerySummaryImages } from './GallerySummaryImages';\n\nimport clsx from 'clsx';\n\nconst GalleryModal = dynamic(\n () => import('./GalleryModal').then((mod) => mod.GalleryModal),\n { ssr: false }\n);\n\ntype GallerySummaryProps = {\n className: string;\n images: ImageDto[];\n primaryImgSizes: string;\n otherImgSizes: string;\n matterportUrl?: string | null;\n numberImagesToDisplay?: number;\n showMatterportThumbnail?: boolean;\n};\n\nexport function GallerySummary({\n className,\n images,\n primaryImgSizes,\n otherImgSizes,\n matterportUrl,\n numberImagesToDisplay = 3,\n showMatterportThumbnail,\n}: GallerySummaryProps) {\n const t = useTranslations('location');\n const [isOpened, setIsOpened] = useState(false);\n\n const handleGalleryModalDisplay = () => {\n setIsOpened((prevValue) => !prevValue);\n };\n\n return (\n <>\n \n \n {t('btn-gallery')}\n {matterportUrl && (\n <>\n |\n {t('btn-gallery-matterport')}\n \n )}\n \n\n \n \n {isOpened && (\n \n )}\n \n );\n}\n","// Warning: Enum values used as translation keys\nexport enum SearchType {\n Location = 'location',\n MeetingRoom = 'meeting-room',\n Coworking = 'coworking',\n}\n","import { useMemo } from 'react';\n\nimport useQueryParams from '@/hooks/useQueryParams';\nimport { usePathname } from '@/i18n/navigation';\n\nimport { SearchType } from './search-type.enum';\nimport { SearchViewMode } from './types';\n\nexport type SearchQueryParams = {\n view?: SearchViewMode;\n day?: string;\n startTime?: string;\n endTime?: string;\n isAllDay?: string;\n amenities?: string;\n seats?: string;\n query?: string;\n center?: string;\n bounds?: string;\n zoom?: string;\n startDay?: string;\n endDay?: string;\n};\n\nexport default function useSearchPageParams() {\n const pathname = usePathname();\n const { queryParams, updateQuery } = useQueryParams();\n\n const searchType = useMemo(() => {\n if (pathname.startsWith('/meeting-rooms')) {\n return SearchType.MeetingRoom;\n }\n if (pathname.startsWith('/locations')) {\n return SearchType.Location;\n }\n return SearchType.Coworking;\n }, [pathname]);\n\n return {\n searchType,\n queryParams,\n updateQuery,\n };\n}\n","import { tiemposFont } from '@/theme/tiemposFont';\n\nimport clsx from 'clsx';\n\nexport default function PrimaryHeading({\n children,\n className,\n ...divProps\n}: React.ComponentPropsWithoutRef<'h1'>) {\n return (\n \n {children}\n \n );\n}\n","import { tiemposFont } from '@/theme/tiemposFont';\n\nimport clsx from 'clsx';\n\nexport default function TertiaryHeading({\n children,\n className,\n ...divProps\n}: React.ComponentPropsWithoutRef<'h3'>) {\n return (\n \n {children}\n \n );\n}\n","'use client';\n\n/* eslint-disable @typescript-eslint/no-empty-function */\nimport React, {\n Dispatch,\n SetStateAction,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from 'react';\n\nimport { SignUpResponseDto } from '@/lib/authentication/dto/signup-response.dto';\nimport { Claims, Scopes } from '@/lib/users/claims';\nimport { UserDto } from '@/lib/users/dto/user.dto';\nimport { getUserById } from '@/lib/users/users';\n\nexport type LoggedUserInfo = {\n isAuthenticated?: boolean;\n token?: string;\n userId?: string;\n user?: UserDto;\n email?: string;\n checkAuth: () => Promise;\n isLoading: boolean;\n checkClaims: (scope: Scopes, claims: Claims[]) => boolean;\n};\n\nexport type AuthDataContextType = LoggedUserInfo & {\n signedUpUser?: SignUpResponseDto;\n setSignedUpUser: Dispatch>;\n};\n\nconst defaultLoggedUserInfo: LoggedUserInfo = {\n isAuthenticated: false,\n token: undefined,\n checkAuth: async () => {},\n isLoading: true,\n checkClaims: () => false,\n};\n\nconst defaultContextValue: AuthDataContextType = {\n ...defaultLoggedUserInfo,\n setSignedUpUser: () => null,\n};\n\nconst AuthDataContext =\n React.createContext(defaultContextValue);\n\nconst AuthProvider = ({\n children,\n}: {\n locale?: string;\n children: React.ReactNode;\n}) => {\n const [loggedUserInfo, setLoggedUserInfo] = useState(\n defaultLoggedUserInfo\n );\n const [signedUpUser, setSignedUpUser] = useState();\n\n const checkAuth = async () => {\n const { checkUserToken, getUserToken } = await import(\n '@/lib/authentication/helpers'\n );\n const check = await checkUserToken();\n\n if (!check.isValid) {\n setLoggedUserInfo({\n isAuthenticated: false,\n checkAuth,\n isLoading: false,\n checkClaims: () => false,\n });\n return;\n }\n\n const { token } = await getUserToken();\n const AwsAuth = (await import('aws-amplify')).Auth;\n const currentAuthenticatedUser = await AwsAuth.currentAuthenticatedUser();\n const userId = currentAuthenticatedUser.attributes['custom:user_id'];\n\n const user = await getUserById(userId);\n\n const checkClaims = (scope: Scopes, claims: Claims[]) => {\n const claimsJson = currentAuthenticatedUser.attributes[`custom:${scope}`];\n const claimsObj = claimsJson ? JSON.parse(claimsJson) : {};\n\n return claims.every((claim) => claimsObj[claim]);\n };\n\n setLoggedUserInfo({\n isAuthenticated: true,\n token,\n email: currentAuthenticatedUser.attributes.email,\n userId,\n user,\n checkAuth,\n isLoading: false,\n checkClaims,\n });\n };\n\n const value = useMemo(() => {\n return {\n ...loggedUserInfo,\n signedUpUser,\n setSignedUpUser,\n };\n }, [loggedUserInfo, signedUpUser]);\n\n useEffect(() => {\n const initAuthAsync = async () => {\n const { initAuth } = await import('@/lib/authentication/init');\n initAuth();\n await checkAuth();\n };\n initAuthAsync();\n }, []);\n\n return (\n \n {children}\n \n );\n};\n\nconst useAuthData = (): AuthDataContextType => {\n return useContext(AuthDataContext);\n};\n\nexport { useAuthData };\nexport default AuthProvider;\n","'use client';\n\nimport { useLocale } from 'next-intl';\nimport { useEffect } from 'react';\n\nimport * as dateUtils from '@/utils/date-utils';\n\nexport function useDateUtils() {\n const locale = useLocale();\n\n useEffect(() => {\n dateUtils.setLocale(locale);\n }, [locale]);\n\n return dateUtils;\n}\n","import { useTranslations } from 'next-intl';\n\nimport { ImageProps } from '@/components/modules/types';\nimport { SimpleLocationDto } from '@/lib/locations/dto';\n\nexport function useLocationImageOrPlaceholder<\n T extends SimpleLocationDto['image']\n>(image?: T): ImageProps {\n const t = useTranslations('general');\n\n if (image == null) {\n return {\n src: `/public-s3/images/location-placeholders/placeholder_1.webp`,\n alt: t('image-placeholders.1.alt'),\n };\n }\n\n return {\n src: image.url,\n alt: image.altText ?? t('alt-default-image'),\n caption: image.caption ?? undefined,\n };\n}\n","import { useSearchParams } from 'next/navigation';\n\n// eslint-disable-next-line no-restricted-imports\nimport { useRouter as useNextRouter } from '@/i18n/navigation';\nimport {\n getAllParamsFromSearchParams,\n stringifyUrl,\n} from '@/utils/stringify-url';\n\nexport function useRouter() {\n const searchParams = useSearchParams();\n const { push: routerPush, replace: routerReplace, refresh } = useNextRouter();\n const allParams = getAllParamsFromSearchParams(searchParams);\n\n const supplier = allParams.supplier ? allParams.supplier : null;\n\n const push: typeof routerPush = (href, options) => {\n return routerPush(\n stringifyUrl(href as string, {\n ...(supplier && {\n supplier,\n }),\n }),\n options\n );\n };\n\n const replace: typeof routerReplace = (href, options) => {\n return routerReplace(\n stringifyUrl(href as string, {\n ...(supplier && {\n supplier,\n }),\n }),\n options\n );\n };\n\n return {\n push,\n replace,\n refresh,\n };\n}\n","'use client';\n\nimport debounce from 'lodash.debounce';\nimport { useEffect, useState } from 'react';\n\nconst DEBOUNCE_TIME = 100;\n\nexport enum ScreenSize {\n XXS = 320,\n XS = 375,\n SM = 500,\n MD = 600,\n LG = 960,\n XL = 1440,\n}\n\nexport function useScreenSize(): number {\n const [widthWindow, setWidthWindow] = useState(0);\n\n useEffect(() => {\n const handleResize = debounce(() => {\n setWidthWindow(window.innerWidth);\n }, DEBOUNCE_TIME);\n\n setWidthWindow(window.innerWidth);\n window.addEventListener('resize', handleResize);\n\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n return widthWindow;\n}\n","import { getServerConfig } from '@/utils/config';\nimport { tryFetchToJson } from '@/utils/http-request';\n\nimport { LocationPhases, SimpleLocationDto } from './dto';\n\nexport async function getNearestLocation(props: {\n locale: string;\n longitude: number;\n latitude: number;\n withOnlineAccessCheckout?: boolean;\n phases?: LocationPhases[];\n slugs?: string[];\n}): Promise {\n const {\n locale,\n longitude,\n latitude,\n slugs,\n phases,\n withOnlineAccessCheckout,\n } = props;\n const { NEXT_PUBLIC_INVENTORY_API_URL } = getServerConfig();\n\n const url = `${NEXT_PUBLIC_INVENTORY_API_URL}/discovery/nearest-location`;\n const body = JSON.stringify({\n longitude,\n latitude,\n slugs,\n phases,\n withOnlineAccessCheckout,\n });\n\n return tryFetchToJson({\n fetchParams: {\n input: url,\n init: {\n headers: {\n 'Accept-Language': locale,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n body,\n },\n },\n skipFetchError: true,\n });\n}\n","import { getServerConfig } from '@/utils/config';\nimport { tryFetchToJson } from '@/utils/http-request';\n\nimport { LocationPhases, SimpleLocationDto } from './dto';\n\nexport async function getNearestLocations(props: {\n locale: string;\n longitude: number;\n latitude: number;\n phases?: LocationPhases[];\n slugs?: string[];\n limit: number;\n}): Promise {\n const { locale, longitude, latitude, slugs, phases, limit } = props;\n const { NEXT_PUBLIC_INVENTORY_API_URL } = getServerConfig();\n\n const url = `${NEXT_PUBLIC_INVENTORY_API_URL}/discovery/nearest-locations`;\n const body = JSON.stringify({\n longitude,\n latitude,\n slugs,\n phases,\n limit,\n });\n\n return tryFetchToJson({\n fetchParams: {\n input: url,\n init: {\n headers: {\n 'Accept-Language': locale,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n body,\n },\n },\n skipFetchError: true,\n });\n}\n","import { createEmptyLocationPrices } from '@/models';\nimport { tryFetchToJson } from '@/utils/http-request';\n\nimport { LocationPricesDto } from './dto';\n\nexport async function fetchLocationPricingById(\n id: string\n): Promise {\n const url = `${process.env.NEXT_PUBLIC_PRICING_API_URL}/discovery/locations/${id}/pricings`;\n\n const locationPricesDto = await tryFetchToJson({\n fetchParams: {\n input: url,\n },\n onFunctionalError: () => createEmptyLocationPrices(),\n onTechnicalError: () => createEmptyLocationPrices(),\n });\n\n return locationPricesDto as LocationPricesDto;\n}\n","export * from './dto';\nexport * from './location-api';\nexport * from './pricing-api';\nexport * from './get-nearest-location';\nexport * from './get-nearest-locations';\n","import { getServerConfig } from '@/utils/config';\nimport { tryFetchToJson } from '@/utils/http-request';\n\nimport {\n MicroLocationDto,\n SimpleIndustriousLocationSearchDto,\n SimpleLocationSearchDto,\n} from './dto';\nimport { LocationAndNearLocationsDto } from './dto/location-and-near-locations.dto';\nimport { LocationFilterDto } from './dto/location-filter.dto';\nimport { LocationHierarchies } from './dto/location-hierarchies.dto';\n\nexport enum GetAllLocationsResponseTypes {\n Full = 'full',\n Micro = 'micro',\n}\n\nexport async function fetchLocationBySlug(\n slug: string,\n locale: string\n): Promise {\n const url = `${\n getServerConfig().NEXT_PUBLIC_INVENTORY_API_URL\n }/discovery/locations/${slug}`;\n\n return tryFetchToJson({\n fetchParams: {\n input: url,\n init: {\n headers: { 'Accept-Language': locale },\n cache: 'no-cache',\n },\n },\n });\n}\n\nexport async function fetchLocationMeetingRoomCount(\n slug: string\n): Promise {\n const url = `${\n getServerConfig().NEXT_PUBLIC_INVENTORY_API_URL\n }/discovery/locations/${slug}/meeting-room-count?isOpenToAll=true`;\n\n const result = await tryFetchToJson<{ count: number }>({\n fetchParams: {\n input: url,\n },\n });\n\n return result?.count ?? undefined;\n}\n\nexport type FetchAllLocationsProps = {\n locale: string;\n responseType?: GetAllLocationsResponseTypes;\n withPrivateOffice?: boolean;\n withCoworkingDayPassOnly?: boolean;\n withOnlineMeetingRoomReservation?: boolean;\n onlyCrawlable?: boolean;\n} & LocationFilterDto;\n\nexport async function fetchIndustriousMicroLocations(\n locale: string\n): Promise {\n return fetchAllIndustriousLocations({\n locale,\n responseType: GetAllLocationsResponseTypes.Micro,\n }) as Promise;\n}\n\nexport async function fetchAllLocations(\n params: FetchAllLocationsProps\n): Promise {\n const { locale, responseType, ...filters } = params;\n\n const host = getServerConfig().NEXT_PUBLIC_INVENTORY_API_URL;\n\n const url = `${host}/discovery/locations/all?responseType=${\n responseType || GetAllLocationsResponseTypes.Full\n }`;\n\n const locations = await tryFetchToJson({\n fetchParams: {\n input: url,\n init: {\n headers: {\n 'Accept-Language': locale,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n body: JSON.stringify(filters),\n },\n },\n skipFetchError: true,\n });\n\n return locations ?? [];\n}\n\nexport async function fetchAllIndustriousLocations(\n props: FetchAllLocationsProps\n): Promise {\n return fetchAllLocations({\n ...props,\n onlyInternal: true,\n }) as Promise;\n}\n\nexport async function fetchLocationHierarchies(props: {\n locale: string;\n}): Promise {\n const { locale } = props;\n\n const url = `${\n getServerConfig().NEXT_PUBLIC_INVENTORY_API_URL\n }/discovery/locations/hierarchies`;\n\n return tryFetchToJson({\n fetchParams: {\n input: url,\n init: { headers: { 'Accept-Language': locale } },\n },\n });\n}\n","import { getServerConfig } from '@/utils/config';\nimport { HttpMethods, tryFetchToJson } from '@/utils/http-request';\n\nimport { UserDto } from './dto/user.dto';\n\nexport async function getUserById(id: string) {\n const url = `${getServerConfig().NEXT_PUBLIC_USER_API_URL}/users/${id}`;\n\n return tryFetchToJson({\n withAuthToken: true,\n fetchParams: {\n input: url,\n init: {\n headers: {\n 'Content-Type': 'application/json',\n },\n },\n },\n });\n}\n\nexport async function updateUser(params: { id: string; phone?: string }) {\n const { id, ...patch } = params;\n const url = `${getServerConfig().NEXT_PUBLIC_USER_API_URL}/users/${id}`;\n\n return tryFetchToJson({\n withAuthToken: true,\n fetchParams: {\n input: url,\n init: {\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(patch),\n method: HttpMethods.Patch,\n },\n },\n });\n}\n","export * from './location-utils';\nexport * from './LatLng';\nexport * from './solutions-pages-utils';\n","import { LocationProductName } from '@/lib/locations/dto';\n\nconst PRODUCT_PAGE_ACCESS_IMG = '/public-s3/images/solutions-pages/access.webp';\nconst PRODUCT_PAGE_OFFICE_IMG =\n '/public-s3/images/solutions-pages/dedicatedOffice.webp';\nconst PRODUCT_PAGE_MEETING_ROOM_IMG =\n '/public-s3/images/solutions-pages/meetingRoom.webp';\nconst PRODUCT_PAGE_SUITES_IMG = '/public-s3/images/solutions-pages/suites.webp';\nconst PRODUCT_PAGE_VIRTUAL_IMG =\n '/public-s3/images/solutions-pages/virtual.webp';\nconst PRODUCT_PAGE_COWORKING_DAY_PASS_IMG =\n '/public-s3/images/solutions-pages/coworkingDayPass.webp';\n\nexport enum SolutionPageSlugs {\n Suites = 'suites',\n Access = 'access',\n CoworkingMembership = 'coworking-membership',\n Virtual = 'virtual',\n Conference = 'conference-and-meeting-rooms',\n Offices = 'offices',\n CoworkingDayPass = 'coworking-day-pass',\n}\n\nexport function getProductNameFromSlug(\n slug: SolutionPageSlugs\n): LocationProductName | null {\n if (slug === SolutionPageSlugs.Conference) {\n return 'meetingRoom';\n }\n if (slug === SolutionPageSlugs.Offices) {\n return 'dedicatedOffice';\n }\n if (slug === SolutionPageSlugs.CoworkingDayPass) {\n return 'coworkingDayPass';\n }\n if (\n slug === SolutionPageSlugs.CoworkingMembership ||\n slug === SolutionPageSlugs.Access\n ) {\n return 'access';\n }\n if (['suites', 'virtual'].includes(slug)) {\n return slug;\n }\n\n return null;\n}\n\nexport function getProductPageImage(productName: LocationProductName) {\n switch (productName) {\n case 'access':\n return PRODUCT_PAGE_ACCESS_IMG;\n case 'dedicatedOffice':\n return PRODUCT_PAGE_OFFICE_IMG;\n case 'meetingRoom':\n return PRODUCT_PAGE_MEETING_ROOM_IMG;\n case 'suites':\n return PRODUCT_PAGE_SUITES_IMG;\n case 'coworkingDayPass':\n return PRODUCT_PAGE_COWORKING_DAY_PASS_IMG;\n default:\n return PRODUCT_PAGE_VIRTUAL_IMG;\n }\n}\n\nexport function getProductPerksTranslationsKey(\n productName: LocationProductName,\n isLocationProductPage?: boolean\n) {\n if (productName === 'access' && !isLocationProductPage) {\n return ['perk-1', 'perk-2', 'perk-3'];\n }\n return ['perk-1', 'perk-2'];\n}\n","export default {\"src\":\"/_next/static/media/checkmarkIconAlt.08c30f84.svg\",\"height\":12,\"width\":15,\"blurWidth\":0,\"blurHeight\":0};"],"names":["Promise","resolve","then","__webpack_require__","bind","t","LocationEvents","param","location","pathname","usePathname","useEffect","gtmOptions","location_name","name","location_city","city","location_metro","metroName","location_country","country","location_id","id","sendGTMEvent","event","url","pageType","MeetingRoomCardSkeleton","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsxs","div","className","jsx","SkeletonLoader","MeetingRoomSearchFiltersSkeleton","NearbyLocationItem","useTranslations","locationUrl","concat","slug","image","useLocationImageOrPlaceholder","screenSize","useScreenSize","showOpeningLabel","LocationPhases","Signed","Launch","includes","phase","formattedAddress","getFormattedAddressByCountry","address","address2","state","zipCode","amenities","unique","maxAmenitiesDisplay","isMobile","ScreenSize","SM","jsx_runtime","Link","href","ImageWithPlaceholder","width","height","src","alt","sizes","firstDayOfBusinessISO","LocationOpeningLabel","openingDateISO","locationGeolocalization","geolocalization","h4","data-testid","p","addressLine1","addressLine2","phone","Fragment","span","length","slice","map","amenity","i","Amenity","code","label","labelClassName","iconClassName","count","NearbyLocationsList","nearLocations","market","firstLocationCoords","marketUrl","MAP_SEARCH_MARKET_NEARBY_ZOOM","lng","lat","section","TertiaryHeading","ul","li","clsx","tiemposFont","ChevronIcon","isBold","aria-hidden","LocationCtas","locationType","getLocationPrimaryCtaType","isEarlyInPersonTourEnabled","calendlyLinks","Button","action","ButtonAction","SECONDARY","onClick","productSection","document","getElementById","window","scrollTo","top","getBoundingClientRect","behavior","as","isWaitlisting","LocationGallery","locationImages","matterportUrl","images","useLocationImageOrPlaceholderCollection","minSize","getImagePlaceholder","number","altText","caption","order","getCollectionCompleted","collection","push","setCollection","useState","GallerySummary","primaryImgSizes","otherImgSizes","showMatterportThumbnail","StaticHeader","directionUrl","shouldShowOpeningLabel","hideOpeningDate","salesHighlightBanner","PrimaryHeading","getLocationHighlightName","brandName","Countries","France","target","StickyHeader","h1","strong","LocationHeader","isSticky","setIsSticky","handleScroll","debounce","scrollTop","body","documentElement","prev","addEventListener","removeEventListener","getGoogleMapsDirectionUrl","header","OfficeSearchFiltersSkeleton","OfficeSkeleton","OfficeSearchResultSkeleton","ProductRadioGroup","currencyIsoCode","products","locationFirstDayOfBusiness","locationPhase","searchParams","useSearchParams","updateQuery","useSearchPageParams","selection","getProductFromSearchParams","RadioGroupPrimitive","value","onValueChange","params","URLSearchParams","toString","set","product","history","replaceState","seats","undefined","day","startTime","endTime","aria-label","ProductRadioButton","title","prices","tag","locale","useLocale","format","addDays","useDateUtils","tomorrowDate","Date","openingDate","getOpeningDate","startingAtValue","price","frequency","getFrequencyTranslationKey","Frequency","Daily","Hourly","Monthly","Intl","NumberFormat","style","currency","maximumFractionDigits","join","Tag","variant","TagVariant","None","text","testId","Products","Office","getOpeningLabelTranslationKey","latitude","date","year","getFullYear","initFullStory","init","orgId","startCaptureManually","FullStory","isLoading","email","useAuthData","IS_PROD","getServerConfig","isUserIndustriousEmployee","startFSRecording","FS","CoworkingProductSkeleton","CoworkingProductsSkeleton","MeetingRoomSearchSkeleton","hr","OfficeSearchSkeleton","ProductDetailsCard","bulletPoints","ctaLabel","ctaUrl","h2","bullet","index","Image","checkmarkIcon","SecondaryLinkButton","theme","LinkButtonThemes","NewMain","CoworkingProducts","dynamic","e","loading","MeetingRoomSearch","all","OfficeSearch","ProductSearchFactory","blackoutDates","openingHours","coworkingDailyPrice","coworkingMonthlyPrice","hasMembership","hasDayPass","isMembershipSoldOut","isMembershipSellableOnline","nearByLocationsUrl","locationName","locationCity","locationState","locationId","allMeetingRoomAmenities","useParams","officeProduct","find","officeProductBulletPoints","useMemo","canBuyOnline","OFFICE_WINDOW_IMG","MeetingRoom","allAmenities","Coworking","dailyPrice","monthlyPrice","Banner","icon","description","onClose","button","type","closeIcon","props","translationKey","ReadMore","children","maxSize","isReadMore","setIsReadMore","truncatedText","hiddenText","prevValue","ssosBannerIcon","SsosBanner","displayed","setDisplayed","GalleryButton","btnProps","GallerySummaryImage","priority","placeholder","blurDataURL","isDefault","GallerySummaryImages","numberImagesToDisplay","imagesToDisplay","GalleryMatterport","GalleryModal","mod","ssr","isOpened","setIsOpened","handleGalleryModalDisplay","SearchType","queryParams","useQueryParams","searchType","startsWith","Location","divProps","h3","defaultLoggedUserInfo","isAuthenticated","token","checkAuth","checkClaims","defaultContextValue","setSignedUpUser","AuthDataContext","React","useContext","__webpack_exports__","loggedUserInfo","setLoggedUserInfo","signedUpUser","checkUserToken","getUserToken","check","isValid","AwsAuth","Auth","currentAuthenticatedUser","userId","attributes","user","getUserById","scope","claims","claimsJson","claimsObj","JSON","parse","every","claim","initAuthAsync","initAuth","Provider","dateUtils","useRouter","routerPush","replace","routerReplace","refresh","useNextRouter","allParams","getAllParamsFromSearchParams","supplier","options","stringifyUrl","widthWindow","setWidthWindow","handleResize","innerWidth","getNearestLocation","longitude","slugs","phases","withOnlineAccessCheckout","NEXT_PUBLIC_INVENTORY_API_URL","stringify","tryFetchToJson","fetchParams","input","headers","method","skipFetchError","getNearestLocations","limit","GetAllLocationsResponseTypes","fetchIndustriousMicroLocations","fetchAllIndustriousLocations","responseType","fetchAllLocations","filters","host","locations","onlyInternal","NEXT_PUBLIC_USER_API_URL","withAuthToken","updateUser","patch","HttpMethods","Patch","SolutionPageSlugs","getProductPageImage","productName","getProductPerksTranslationsKey","isLocationProductPage"],"sourceRoot":""}