{"version":3,"file":"assets/js/chunks/ROUTE_BICYCLE_CITY.905f3ba39c303ff1f877.js","mappings":"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","sources":["webpack://web-pwa/./src/domain/address/CityDescription.less?7988","webpack://web-pwa/./src/domain/seo/FAQ/Faq.jsx","webpack://web-pwa/./src/domain/error/PermanentRedirectError.js","webpack://web-pwa/./src/domain/seo/FAQ/LayerCityFaq.jsx","webpack://web-pwa/./src/store/seo/seo-faq.actions.js","webpack://web-pwa/./src/domain/seo/CityLayerLinks.jsx","webpack://web-pwa/./src/domain/seo/CityLayerLinks.less?0ccd","webpack://web-pwa/./src/domain/traffic/TrafficHomeMainContent.less?e57e","webpack://web-pwa/./src/domain/seo/LayerCityIntroduction.less?88e1","webpack://web-pwa/./src/domain/seo/FAQ/faq.helpers.jsx","webpack://web-pwa/./src/domain/autopromo/AutoPromoGE.less?8ba1","webpack://web-pwa/./src/domain/autopromo/AutoPromoGE.jsx","webpack://web-pwa/./src/domain/seo/useFirstAddressWithTownSeoPostcode.js","webpack://web-pwa/./src/domain/bicycle/BicycleCityIntroduction.jsx","webpack://web-pwa/./src/domain/bicycle/RubricCloud.jsx","webpack://web-pwa/./src/domain/bicycle/RubricCloud.less?c4c2","webpack://web-pwa/./src/domain/bicycle/BicycleCityMainContent.jsx","webpack://web-pwa/./src/domain/bicycle/seo/BicycleCityMetaManager.jsx","webpack://web-pwa/./src/routes/bicycle/bicycleCity.route.js","webpack://web-pwa/./src/domain/bicycle/bicycleCity.page.jsx","webpack://web-pwa/./src/domain/genericComponents/TextShortener.jsx","webpack://web-pwa/./src/domain/genericComponents/TextShortener.less?828c","webpack://web-pwa/./src/domain/ui/LinkCloud.jsx","webpack://web-pwa/./src/domain/ui/LinkCloud.less?9c6b","webpack://web-pwa/./src/domain/address/CityDescription.jsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"description\":\"oqui8\"};","import FaqContainer from './FaqContainer'\nimport s from './Faq.less'\nimport FaqItem from './FaqItem'\nimport React from 'react'\nimport { insertLinkInText } from './faq.helpers'\nimport { replaceKeysInString } from '../../../utils/string'\nimport { useSelector } from 'react-redux'\nimport { selectCurrentHistoryFullRoute } from '../../../store/history/history.selectors'\nimport { selectSeoFaqData } from '../../../store/seo/seo.selectors'\nimport useErrorBoundaryCallback from '../../utils/useErrorBoundaryCallback'\n\nconst Faq = ({ faqParams = {}, impressionDataTag, clickDataTag, noTitle = false }) => {\n const currentRouteURL = useSelector(selectCurrentHistoryFullRoute)\n const { title, text, qa } = useSelector(selectSeoFaqData)\n\n const insertFaqParams = useErrorBoundaryCallback(text => replaceKeysInString(text, faqParams), [faqParams])\n\n if (!qa) return <>\n\n return (\n \n {title && !noTitle &&

{insertFaqParams(title)}

}\n {text &&
{insertFaqParams(text)}
}\n {qa.map(({ question, answer }, index) => {\n const computedAnswer = insertLinkInText({\n txt: insertFaqParams(answer),\n currentRouteURL\n })\n\n return (\n \n )\n })}\n
\n )\n}\n\nexport default Faq\n","export const PermanentRedirectErrorCode = 301\n\nexport default class PermanentRedirectError extends Error {\n constructor(url = '/', host, e = 'Redirection permanente') {\n super(e)\n this.name = 'Moved Permamently'\n this.type = PermanentRedirectErrorCode\n this.url = url\n this.host = host\n }\n}\n","import React from 'react'\nimport Faq from './Faq'\nimport useFirstAddressWithTownSeoPostcode from '../useFirstAddressWithTownSeoPostcode'\n\nconst LayerCityFaq = () => {\n const { town, postcode } = useFirstAddressWithTownSeoPostcode()\n return \n}\n\nexport default LayerCityFaq\n","import {\n fetchCityActivityFaq,\n fetchItineraryHPFaq,\n fetchItineraryLandingPageFaq,\n fetchLayerFaq\n} from '../../dataSource/seo/seo.request'\nimport { setSeoFaqData } from './seoSlice'\n\nexport const loadSeoItineraryHPFaq = mode => dispatch =>\n fetchItineraryHPFaq({ mode }).then(response => dispatch(setSeoFaqData(response)))\n\nexport const loadSeoCityActivityFaq = rubricId => dispatch =>\n fetchCityActivityFaq({ rubricId }).then(response => dispatch(setSeoFaqData(response)))\n\nexport const loadSeoLayerFaq = pageKey => dispatch =>\n fetchLayerFaq({ pageKey }).then(response => dispatch(setSeoFaqData(response)))\n\nexport const loadSeoItineraryLandingPageFaq = mode => dispatch =>\n fetchItineraryLandingPageFaq({ mode }).then(response => dispatch(setSeoFaqData(response)))\n","import React from 'react'\nimport { useSelector } from 'react-redux'\nimport s from './CityLayerLinks.less'\nimport { getBicycleLinks, getRestrictionLinks, getTrafficLinks, getZfeLinks } from './footer/common/topSearchLayerPages'\nimport { ROUTE_BICYCLE_CITY, ROUTE_RESTRICTION_CITY, ROUTE_TRAFFIC_CITY, ROUTE_ZFE_CITY } from '../../routes'\nimport { selectCurrentHistoryRoute } from '../../store/history/history.selectors'\nimport useFirstAddressWithTownSeoPostcode from './useFirstAddressWithTownSeoPostcode'\n\nconst CityLayerLinks = () => {\n const { postcode } = useFirstAddressWithTownSeoPostcode()\n const currentRoute = useSelector(selectCurrentHistoryRoute)\n const trafficLink = currentRoute !== ROUTE_TRAFFIC_CITY && getTrafficLinks({ zip: postcode })?.[0]\n const bikeLink = currentRoute !== ROUTE_BICYCLE_CITY && getBicycleLinks({ zip: postcode })?.[0]\n const zfeLink = currentRoute !== ROUTE_ZFE_CITY && getZfeLinks({ zip: postcode })?.[0]\n const restrictionLink = currentRoute !== ROUTE_RESTRICTION_CITY && getRestrictionLinks({ zip: postcode })?.[0]\n\n if (!trafficLink?.url && !bikeLink?.url && !zfeLink?.url) return <>\n\n return (\n
\n Sur la carte vous pouvez aussi afficher : \n {trafficLink?.url && {trafficLink.label}}\n {bikeLink?.url && {bikeLink.label}}\n {zfeLink?.url && {zfeLink.label}}\n {restrictionLink?.url && {restrictionLink.label}}\n
\n )\n}\n\nexport default CityLayerLinks\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"Lvy87\"};","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"_0TZoF\",\"autopromo\":\"i16Yb\",\"geoentitiesAtAdressTitle\":\"TsvFj\",\"descriptionWrapper\":\"zh3PE\"};","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"vOn9c\",\"title\":\"tEtvX\",\"text\":\"ehAGp\"};","import React from 'react'\n\nexport const replaceCityActivityPlaceHoldersInFaq = ({ txt, city, zip }) => {\n return txt\n .split('[ville]')\n .join(city)\n .split('[code-postal]')\n .join(zip)\n}\nexport const replaceItineraryPlaceHoldersInFaq = ({ txt, cityA, cityB }) => {\n return txt\n .split('[villeA]')\n .join(cityA)\n .split('[villeB]')\n .join(cityB)\n}\n\nexport const replaceCityActivityPlaceHoldersAndLinksInFaq = ({ txt, city, zip, currentRouteURL }) => {\n return insertLinkInText({ txt: replaceCityActivityPlaceHoldersInFaq({ txt, city, zip }), currentRouteURL })\n}\n\nexport const replaceItineraryPlaceHoldersAndLinksInFaq = ({ txt, cityA, cityB, currentRouteURL }) => {\n return insertLinkInText({ txt: replaceItineraryPlaceHoldersInFaq({ txt, cityA, cityB }), currentRouteURL })\n}\n\nexport const insertLinkInText = ({ txt, currentRouteURL }) => {\n // we use the ##link to build the links\n return txt.split(/(.*?)<\\/a>/).map((part, index) => {\n return part.includes('##') ? (\n \n {part.substring(2)}\n \n ) : (\n part\n )\n })\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"aWOdN\",\"content\":\"fSwUY\",\"device\":\"zn0Lv\",\"title\":\"QraF5\",\"text\":\"DCTcM\"};","import classnames from 'classnames'\nimport React from 'react'\nimport analyticsConstants from '../analytics/analytics.constants'\nimport { SIZE_BIG } from '../genericComponents/buttons/RectangleActionButton'\nimport { withFrenchSite } from '../i18n/i18nSite'\nimport devicePng from './assets/device.png'\nimport deviceWebp from './assets/device.webp'\nimport s from './AutoPromoGE.less'\nimport AutoPromoOpenButton from './AutoPromoOpenButton'\nimport ImageWithFallback from '../ui/ImageWithFallback'\n\nconst AutoPromoGE = ({ className }) => {\n return (\n
\n
\n \n
\n
{'Tout Mappy dans votre poche'}
\n

{'Un GPS efficace et gratuit, trafic en temps réel et alertes de vitesse'}

\n
\n \n
\n
\n
\n
\n )\n}\n\nexport default withFrenchSite(AutoPromoGE)\n","import { useSelector } from 'react-redux'\nimport { selectFirstAddress } from '../../store/address/address.selectors'\nimport { searchServiceCtx } from '../../store/search/search.service.constants'\nimport { getPostCodeFromTown } from './seo'\n\nconst useFirstAddressWithTownSeoPostcode = () => {\n const address = useSelector(selectFirstAddress)\n if (address.geocode_level === searchServiceCtx.geocodeLevel.town) {\n const cityWithDistrictPostcode = getPostCodeFromTown(address.town)\n if (cityWithDistrictPostcode) return { ...address, postcode: cityWithDistrictPostcode }\n }\n return address\n}\n\nexport default useFirstAddressWithTownSeoPostcode\n","import React from 'react'\nimport s from '../seo/LayerCityIntroduction.less'\nimport useFirstAddressWithTownSeoPostcode from '../seo/useFirstAddressWithTownSeoPostcode'\n\nconst BicycleCityIntroduction = () => {\n const { town, postcode } = useFirstAddressWithTownSeoPostcode()\n\n return (\n
\n

\n Pistes cyclables {town}, {postcode}\n

\n

\n Affichez sur la carte les pistes cyclables pour la ville de {town} ({postcode}). Les différents aménagements\n cyclables, comme les voies vertes, les véloroutes et les voies partagées sont pris en compte sur les tracés de\n carte.\n

\n
\n )\n}\n\nexport default BicycleCityIntroduction\n","import React from 'react'\nimport { useSelector } from 'react-redux'\nimport { selectSeoRubricLinks } from '../../store/seo/seo.selectors'\nimport { RUBRIC_LINKS_NAMESPACES } from '../seo/seo.constants'\nimport LinkCloud from '../ui/LinkCloud'\nimport s from './RubricCloud.less'\nimport { selectFirstAddress } from '../../store/address/address.selectors'\n\nconst RubricCloud = () => {\n const rubrics = useSelector(selectSeoRubricLinks)?.[RUBRIC_LINKS_NAMESPACES.CLOUD]\n const city = useSelector(selectFirstAddress)\n\n if (!rubrics?.length) return <>\n\n return (\n
\n

Plus d’infos autour du vélo

\n
\n Retrouvez également sur Mappy, les services et les commerçants de {city?.town} pouvant vous aider à réaliser au\n mieux votre trajet à vélo\n
\n \n
\n )\n}\n\nexport default RubricCloud\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"yT55_\",\"intro\":\"ZkwEn\"};","import React from 'react'\nimport s from '../traffic/TrafficHomeMainContent.less'\nimport Footer from '../footer/Footer'\nimport BicycleCityIntroduction from './BicycleCityIntroduction'\nimport LayerCityFaq from '../seo/FAQ/LayerCityFaq'\nimport CityDescription from '../address/CityDescription'\nimport TrafficCityHPLayerLinks from '../seo/CityLayerLinks'\nimport AutoPromoGE from '../autopromo/AutoPromoGE'\nimport RubricCloud from './RubricCloud'\n\nconst BicycleCityMainContent = () => (\n <>\n
\n \n \n
\n \n
\n \n \n \n
\n