{"version":3,"file":"static/components/673-9c459c589244aa2722bb.mjs?cv=7","mappings":"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","sources":["webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/BottomBar/BottomBar.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/BottomBar/index.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/apiHook.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/authentication/hooks.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/OpenGraphTags.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Redirect.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/CounterBadge.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/useTracking.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/ConnectivityWarning.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Footer/index.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Layout/MobileLayout.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/genericComponents/Announcement.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Announcements.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/FacebookLoginAd.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/SideBar/SecondaryMenu.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/SideBar/SideBar.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Navigation/SideBar/index.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Layout/DesktopLayout.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Layout/Layout.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Layout/index.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/ErrorBoundary.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/activity/components/BannerAnnouncements/useBannerAnnouncements.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/genericComponents/Spinner.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/activity/components/BannerAnnouncements/BannerAnnouncement.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Page.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/ModalMissingNewsletter.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/app/Router.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/activity/components/common/hooks.js"],"sourcesContent":["import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nimport CONFIG from \"@agir/front/app/Navigation/navigation.config\";\n\nimport CounterBadge from \"@agir/front/app/Navigation/CounterBadge\";\nimport Link from \"@agir/front/app/Link\";\nimport { RawFeatherIcon } from \"@agir/front/genericComponents/FeatherIcon\";\n\nconst Title = styled.span``;\nconst MenuLink = styled(Link)`\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: center;\n text-align: center;\n height: 70px;\n font-size: 11px;\n font-weight: 500;\n color: ${({ $active, theme }) => ($active ? theme.primary500 : \"inherit\")};\n border-top: 2px solid\n ${({ $active, theme }) => ($active ? theme.primary500 : \"transparent\")};\n\n &:hover,\n &:focus {\n color: ${({ $active, theme }) => ($active ? theme.primary500 : \"inherit\")};\n text-decoration: none;\n }\n\n ${RawFeatherIcon} {\n display: block;\n }\n\n ${Title} {\n font-size: 10px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n @media (max-width: 340px) {\n font-size: 8px;\n }\n }\n\n ${CounterBadge} {\n position: absolute;\n top: 7px;\n right: 14px;\n\n @media (max-width: 340px) {\n top: 9px;\n }\n }\n`;\n\nconst StyledBottomBar = styled.nav`\n background-color: ${(props) => props.theme.background0};\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n box-shadow: inset 0 1px 0 ${(props) => props.theme.text50};\n height: 72px;\n padding: 0 0.5rem;\n z-index: ${(props) => props.theme.zindexBottomBar};\n isolation: isolate;\n overflow: hidden;\n\n ul {\n padding: 0;\n max-width: 600px;\n margin: auto;\n display: flex;\n justify-content: space-around;\n list-style: none;\n\n li {\n flex: 1 1 auto;\n max-width: 70px;\n min-width: 1px;\n }\n }\n`;\n\nconst LINKS = CONFIG.menuLinks.filter(({ mobile }) => !!mobile);\n\nconst BottomBar = ({ active, unreadMessageCount, unreadActivityCount }) => (\n \n \n \n);\n\nBottomBar.propTypes = {\n active: PropTypes.string,\n unreadActivityCount: PropTypes.number,\n unreadMessageCount: PropTypes.number,\n};\nexport default BottomBar;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\n\nimport { useUnreadMessageCount } from \"@agir/msgs/common/hooks\";\nimport { useUnreadActivityCount } from \"@agir/activity/common/hooks\";\n\nimport BottomBar from \"./BottomBar\";\n\nconst ConnectedBottomBar = (props) => {\n const unreadActivityCount = useUnreadActivityCount();\n const unreadMessageCount = useUnreadMessageCount();\n\n return (\n \n );\n};\n\nexport default ConnectedBottomBar;\n","import React, { useState } from 'react'\n\nexport const useMutate = (funcApi, onSuccess) => {\n const [error, setError] = useState();\n const [data, setData] = useState()\n const [isLoading, setIsLoading] = useState(false);\n\n\n async function mutate(...args) {\n setIsLoading(true);\n\n try {\n const response = await funcApi(...args);\n setData(response.data);\n onSuccess?.()\n } catch (e) {\n setError(e.response && e.response.data) || e.message\n } finally {\n setIsLoading(false);\n }\n\n }\n\n return { mutate, error, data, isLoading }\n\n}","import { useEffect, useCallback, useState } from \"react\";\n\nimport { useSelector } from \"@agir/front/globalContext/GlobalContext\";\nimport * as selector from \"@agir/front/globalContext/reducers\";\n\nimport {\n getBookmarkedEmails,\n bookmarkEmails,\n bookmarkEmail,\n AUTHENTICATION,\n} from \"./common\";\n\nexport const useAuthentication = (route) => {\n const isSessionLoaded = useSelector(selector.getIsSessionLoaded);\n const authentication = useSelector(selector.getAuthentication);\n\n if (route.neededAuthentication === AUTHENTICATION.NONE) {\n return true;\n }\n\n if (!isSessionLoaded) {\n return null;\n }\n\n return authentication >= route.neededAuthentication;\n};\n\nexport const useBookmarkedEmails = () => {\n const isSessionLoaded = useSelector(selector.getIsSessionLoaded);\n const legacyBookmarkedEmails = useSelector(selector.getBookmarkedEmails);\n const [bookmarkedEmails, setBookmarkedEmails] = useState(\n getBookmarkedEmails(),\n );\n\n useEffect(() => {\n if (\n isSessionLoaded &&\n legacyBookmarkedEmails.length > 0 &&\n bookmarkedEmails.length === 0\n ) {\n setBookmarkedEmails(bookmarkEmails(legacyBookmarkedEmails));\n }\n }, [bookmarkedEmails.length, isSessionLoaded, legacyBookmarkedEmails]);\n\n const addBookmarkedEmail = useCallback((email) => {\n setBookmarkedEmails(bookmarkEmail(email));\n }, []);\n\n return [bookmarkedEmails, addBookmarkedEmail];\n};\n","import PropTypes from \"prop-types\";\nimport React, { useEffect } from \"react\";\nimport Helmet from \"react-helmet\";\n\nimport { useDispatch } from \"@agir/front/globalContext/GlobalContext\";\nimport { setPageTitle } from \"@agir/front/globalContext/actions\";\n\nconst DEFAULT_TYPE = \"website\";\nconst DEFAULT_TITLE = \"Action Populaire\";\nconst DEFAULT_DESCRIPTION =\n \"Action Populaire est le réseau social d'action de la France insoumise.\";\nconst DEFAULT_URL = \"https://actionpopulaire.fr/\";\nconst DEFAULT_IMAGE = \"/static/front/assets/og_image_NSP.jpg\";\n\nexport const usePageTitle = (title) => {\n const dispatch = useDispatch();\n\n useEffect(() => {\n title && dispatch(setPageTitle(title));\n }, [dispatch, title]);\n};\n\nconst OpenGraphTags = (props) => {\n const {\n title,\n description = DEFAULT_DESCRIPTION,\n type = DEFAULT_TYPE,\n url = DEFAULT_URL,\n image = DEFAULT_IMAGE,\n } = props;\n\n const pageTitle = title ? `${title} — ${DEFAULT_TITLE}` : DEFAULT_TITLE;\n\n return (\n \n \n \n \n \n\n \n \n \n\n \n \n \n\n \n\n \n\n \n \n \n \n );\n};\n\nOpenGraphTags.propTypes = {\n type: PropTypes.string,\n title: PropTypes.string,\n description: PropTypes.string,\n url: PropTypes.string,\n image: PropTypes.string,\n};\n\nexport default OpenGraphTags;\n","import PropTypes from \"prop-types\";\nimport React, { useMemo } from \"react\";\nimport { Redirect } from \"react-router-dom\";\nimport { useEffectOnce } from \"react-use\";\n\nimport { routeConfig } from \"@agir/front/app/routes.config\";\nimport { addQueryStringParams } from \"@agir/lib/utils/url\";\nimport { useRoute } from \"./hooks\";\nimport { useToast } from \"@agir/front/globalContext/hooks\";\n\nconst ExternalRedirect = (props) => {\n const { params } = props;\n const href = params ? addQueryStringParams(props.href, params) : props.href;\n\n window.location.replace(href);\n\n return null;\n};\nExternalRedirect.propTypes = {\n href: PropTypes.string.isRequired,\n params: PropTypes.object,\n};\n\nconst InternalRedirect = (props) => {\n const { to, params, state, backLink, toast, ...rest } = props;\n\n const sendToast = useToast();\n\n useEffectOnce(() => {\n if (!toast) {\n return;\n }\n if (typeof toast === \"string\") {\n return sendToast(toast, \"SUCCESS\");\n }\n if (Array.isArray(toast)) {\n return sendToast(...toast);\n }\n if (typeof toast === \"object\") {\n return sendToast(undefined, undefined, toast);\n }\n }, [sendToast, toast]);\n\n const next = useMemo(() => {\n const url = params\n ? addQueryStringParams(to?.pathname || to, params, true)\n : to?.pathname || to;\n\n let nextState = { ...state };\n\n if (backLink) {\n nextState = nextState || {};\n if (typeof backLink !== \"string\") {\n nextState.backLink = backLink;\n } else if (routeConfig[backLink]) {\n nextState.backLink = { route: backLink };\n } else {\n nextState.backLink = { href: backLink };\n }\n }\n\n return nextState\n ? {\n pathname: url.split(\"?\")[0],\n search: url.split(\"?\")[1] && \"?\" + url.split(\"?\")[1],\n state: nextState,\n }\n : url;\n }, [to, params, state, backLink]);\n\n return ;\n};\nInternalRedirect.propTypes = {\n to: PropTypes.string.isRequired,\n state: PropTypes.object,\n params: PropTypes.object,\n backLink: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n toast: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n PropTypes.object,\n ]),\n};\n\nconst RouteRedirect = (props) => {\n const { route, routeParams, ...rest } = props;\n const { url, isInternal } = useRoute(route, routeParams);\n\n return isInternal ? (\n \n ) : (\n \n );\n};\nRouteRedirect.propTypes = {\n route: PropTypes.string.isRequired,\n routeParams: PropTypes.object,\n};\n\nconst AppRedirect = (props) => {\n const { route, href, to } = props;\n\n if (route) {\n return ;\n }\n if (to) {\n return ;\n }\n if (href) {\n return ;\n }\n\n return null;\n};\nAppRedirect.propTypes = {\n route: PropTypes.string,\n href: PropTypes.string,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n};\nexport default AppRedirect;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nconst Counter = ({ value, ...rest }) =>\n !!value ? (\n \n \n 1 ? \"8px\" : \"10px\"}\n fontWeight=\"700\"\n fill=\"#FFFFFF\"\n >\n {!isNaN(value) && parseInt(value) > 20 ? \"+20\" : value}\n \n \n ) : null;\n\nCounter.propTypes = {\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n};\n\nconst CounterBadge = styled(Counter)`\n fill: ${(props) =>\n props.$background\n ? props.theme[props.$background] || props.$background\n : props.theme.error500};\n z-index: ${(props) => props.theme.zindexNavigationCounter};\n\n circle {\n stroke: ${(props) => props.$border || \"none\"};\n }\n\n text {\n fill: ${(props) =>\n props.$color\n ? props.theme[props.$color] || props.$color\n : props.theme.white};\n }\n`;\n\nexport default CounterBadge;\n","import { setUser as sentrySetUser } from \"@sentry/browser\";\nimport { useEffect, useRef } from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\nimport { useSelector } from \"@agir/front/globalContext/GlobalContext\";\nimport { getUser } from \"@agir/front/globalContext/reducers\";\n\nconst useTracking = () => {\n const location = useLocation();\n const { pathname } = location;\n const previous = useRef(null);\n const user = useSelector(getUser);\n const userId = user?.id || null;\n\n useEffect(() => {\n if (typeof window !== \"undefined\" && window._paq) {\n sentrySetUser({ id: userId, ip_address: \"{{auto}}\" });\n userId\n ? window._paq.push([\"setUserId\", userId])\n : window._paq.push([\"resetUserId\"]);\n }\n }, [userId]);\n\n useEffect(() => {\n if (typeof window !== \"undefined\" && window._paq) {\n if (previous.current) {\n window._paq.push([\"setReferrerUrl\", previous.current]);\n }\n previous.current = pathname;\n window._paq.push([\"setCustomUrl\", pathname]);\n window._paq.push([\"trackPageView\"]);\n window._paq.push([\"HeatmapSessionRecording::enable\"]);\n }\n\n return () => {\n if (typeof window !== \"undefined\" && window._paq) {\n window._paq.push([\"HeatmapSessionRecording::disable\"]);\n }\n };\n }, [pathname]);\n};\n\nexport default useTracking;\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { animated, useTransition } from \"@react-spring/web\";\nimport styled from \"styled-components\";\n\nimport { useIsOffline } from \"@agir/front/offline/hooks\";\nimport { useDownloadBanner } from \"@agir/front/app/hooks.js\";\nimport logger from \"@agir/lib/utils/logger\";\n\nconst log = logger(__filename);\n\nconst StyledWarning = styled(animated.div)`\n position: fixed;\n top: ${({ $hasTopBar }) => ($hasTopBar ? \"72px\" : \"0\")};\n width: 100%;\n z-index: ${(props) => props.theme.zindexTopBar};\n color: ${(props) => props.theme[props.color]};\n background: ${(props) => props.theme[props.backgroundCOlor]};\n\n @media (max-width: ${(props) => props.theme.collapse}px) {\n top: ${({ $hasTopBar, $hasDownloadBanner }) => {\n if ($hasTopBar && $hasDownloadBanner) {\n return \"136px\";\n }\n if ($hasTopBar) {\n return \"56px\";\n }\n return \"0\";\n }};\n }\n\n & > div {\n overflow: hidden;\n text-transform: uppercase;\n font-weight: 600;\n text-align: center;\n font-size: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n }\n`;\n\nconst ConnectivityWarning = ({ hasTopBar }) => {\n const [hasDownloadBanner] = useDownloadBanner();\n const offline = useIsOffline();\n log.debug(`Offline ${offline}`);\n const [display, setDisplay] = useState(offline);\n log.debug(`Display ${display}`);\n\n const [backgroundColor, color, warning] = useMemo(() => {\n switch (offline) {\n case false:\n return [\"success500\", \"success100\", \"Connexion rétablie\"];\n case true:\n return [\"error500\", \"error100\", \"Aucune connexion internet\"];\n default:\n return [\"primary500\", \"primary100\", \"Connexion en cours...\"];\n }\n }, [offline]);\n\n useEffect(() => {\n let timeout = setTimeout(() => setDisplay(!!offline), offline ? 0 : 5000);\n return () => clearTimeout(timeout);\n }, [offline]);\n\n const transitions = useTransition(display, {\n initial: null,\n enter: { height: 30 },\n leave: { height: 0 },\n });\n\n return transitions(\n (style, item) =>\n item && (\n \n
{warning}
\n \n ),\n );\n};\n\nexport default ConnectivityWarning;\n","import PropTypes from \"prop-types\";\nimport React, { Suspense, useMemo } from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\nimport { lazy } from \"@agir/front/app/utils\";\nimport {\n getIsSessionLoaded,\n getIsConnected,\n} from \"@agir/front/globalContext/reducers\";\nimport routes from \"@agir/front/app/routes.config\";\nimport { useMobileApp } from \"@agir/front/app/hooks\";\nimport { useSelector } from \"@agir/front/globalContext/GlobalContext\";\n\nconst Footer = lazy(() => import(\"./Footer\"));\n\nconst ConnectedFooter = () => {\n const { pathname } = useLocation();\n const isSessionLoaded = useSelector(getIsSessionLoaded);\n const isConnected = useSelector(getIsConnected);\n const { isMobileApp } = useMobileApp();\n\n const route = useMemo(\n () => routes.find((route) => route.match(pathname)),\n [pathname],\n );\n\n if (!isSessionLoaded) {\n return null;\n }\n if (!route || route.hideFooter) {\n return null;\n }\n if (isMobileApp && !route.displayFooterOnMobileApp) {\n return null;\n }\n\n return (\n }>\n \n \n );\n};\n\nexport default ConnectedFooter;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nimport BottomBar from \"@agir/front/app/Navigation/BottomBar\";\n\nconst StyledContainer = styled.div`\n padding-top: 24px;\n padding-bottom: 24px;\n background-color: ${(props) =>\n props.$smallBackgroundColor\n ? props.theme[props.$smallBackgroundColor] || props.$smallBackgroundColor\n : \"transparent\"};\n`;\n\nconst MobileLayout = (props) => {\n const { children } = props;\n\n return (\n \n
{children}
\n \n
\n );\n};\n\nexport default MobileLayout;\n\nMobileLayout.propTypes = {\n children: PropTypes.node,\n};\n","import PropTypes from \"prop-types\";\nimport React, { useCallback, useRef } from \"react\";\nimport styled from \"styled-components\";\n\nconst Image = styled.div`\n flex: 0 0 130px;\n width: 100%;\n background-repeat: no-repeat;\n background-size:\n 0 0,\n cover;\n background-position: center center;\n border-radius: ${(props) => props.theme.borderRadius};\n\n @media (max-width: ${(props) => props.theme.collapse}px) {\n flex: 0 0 80px;\n height: 80px;\n border-radius: 0;\n background-size:\n cover,\n 0 0;\n }\n`;\n\nconst Container = styled.article`\n display: flex;\n flex-flow: column nowrap;\n align-items: stretch;\n justify-content: flex-start;\n max-width: 255px;\n cursor: ${({ $isClickable }) => ($isClickable ? \"pointer\" : \"default\")};\n\n & + & {\n margin-top: 1.5rem;\n }\n\n div + div {\n margin-top: 1rem;\n }\n\n h3,\n p {\n line-height: 1.45;\n overflow: hidden;\n font-size: 0.875rem;\n }\n\n h3 {\n display: block;\n margin: 0;\n margin-bottom: 0.125rem;\n font-weight: 700;\n color: ${(props) => props.theme.primary500};\n\n a,\n span {\n color: inherit;\n }\n }\n\n @media (max-width: ${(props) => props.theme.collapse}px) {\n flex-flow: row nowrap;\n border: 1px solid ${(props) => props.theme.primary500};\n padding: 1rem;\n border-radius: 4px;\n max-width: 100%;\n height: 112px;\n box-shadow: 0px 3px 2px rgba(0, 35, 44, 0.05);\n\n & + & {\n margin-top: 0;\n }\n\n div {\n max-height: 72px;\n overflow: hidden;\n }\n\n div + div {\n margin-top: 0;\n margin-left: 1rem;\n }\n\n h3,\n a {\n color: ${(props) => props.theme.primary500};\n }\n\n p {\n font-size: 0.75rem;\n }\n }\n`;\n\nconst Announcement = (props) => {\n const { title, content, image, link } = props;\n const linkRef = useRef(null);\n const handleClick = useCallback(() => {\n linkRef.current && linkRef.current.click();\n }, []);\n return (\n \n {image && image.mobile && image.desktop ? (\n \n ) : null}\n
\n

\n {link ? (\n \n {title}\n \n ) : (\n {title}\n )}\n

\n

\n

\n
\n );\n};\n\nAnnouncement.propTypes = {\n title: PropTypes.string.isRequired,\n content: PropTypes.string.isRequired,\n image: PropTypes.shape({\n desktop: PropTypes.string,\n mobile: PropTypes.string,\n }),\n link: PropTypes.string,\n};\n\nexport default Announcement;\n","import React from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport useSWR from \"swr\";\n\nimport { routeConfig } from \"@agir/front/app/routes.config\";\n\nimport Announcement from \"@agir/front/genericComponents/Announcement\";\n\nconst Announcements = () => {\n const { pathname } = useLocation();\n\n const markAsDisplayed = routeConfig.activities.match(pathname) ? \"0\" : \"1\";\n\n const { data: announcements } = useSWR(\n \"/api/announcements/?mark_as_displayed=\" + markAsDisplayed,\n );\n\n if (!Array.isArray(announcements) || announcements.length === 0) return null;\n\n return announcements.map((announcement) => (\n \n ));\n};\n\nexport default Announcements;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport useSWR from \"swr\";\n\nimport Button from \"@agir/front/genericComponents/Button\";\n\nimport { useCustomAnnouncement } from \"@agir/activity/common/hooks\";\nimport { useMobileApp } from \"@agir/front/app/hooks\";\n\nimport facebookLogo from \"@agir/front/genericComponents/logos/facebook.svg\";\nimport facebookWhiteLogo from \"@agir/front/genericComponents/logos/facebook_white.svg\";\n\nconst FacebookLoginContainer = styled.div`\n background-color: ${(props) => props.theme.facebookLight};\n color: ${(props) => props.theme.black};\n max-width: 15.9375rem;\n border-radius: ${(props) => props.theme.borderRadius};\n padding: 1.5rem;\n font-size: 0.875rem;\n margin-bottom: 1rem;\n\n h6 {\n color: inherit;\n }\n`;\n\nconst DismissMessage = styled.a`\n color: ${(props) => props.theme.black};\n text-decoration: underline;\n margin-top: 1rem;\n\n &:hover {\n color: ${(props) => props.theme.black};\n }\n`;\n\nconst FacebookLoginAd = () => {\n const [announcement, dismissCallback] =\n useCustomAnnouncement(\"facebook-login-ad\");\n\n const { data: session } = useSWR(\"/api/session/\");\n const { isIOS } = useMobileApp();\n\n return session && !session.facebookLogin && !isIOS && announcement ? (\n \n \n
Facilitez vos prochaines connexions
\n

\n Connectez votre compte à Facebook maintenant pour ne pas avoir à taper\n de code la prochaine fois.\n

\n \n \n Connecter le compte\n \n \n Ne plus afficher ce message\n \n
\n ) : null;\n};\n\nexport default FacebookLoginAd;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nimport Link from \"@agir/front/app/Link\";\n\nconst StyledLink = styled(Link)``;\n\nconst StyledMenu = styled.ul`\n width: 100%;\n margin-top: 0;\n margin-bottom: 1rem;\n list-style-type: none;\n font-weight: 400;\n color: ${(props) => props.theme.text500};\n\n h6 {\n font-size: 12px;\n line-height: 15px;\n color: ${(props) => props.theme.text500};\n margin-bottom: 0.5rem;\n font-weight: bold;\n overflow-wrap: break-word;\n }\n\n li {\n display: block;\n line-height: 1.2;\n margin: 0 0 0.5rem;\n white-space: nowrap;\n overflow: hidden;\n max-width: 100%;\n text-overflow: ellipsis;\n\n ${StyledLink} {\n &,\n &:hover,\n &:focus,\n &:active {\n color: ${(props) => props.theme.text700};\n font-weight: 400;\n font-size: 13px;\n line-height: inherit;\n }\n }\n }\n`;\n\nconst SecondaryMenu = ({ title, links, ...rest }) =>\n Array.isArray(links) && links.length > 0 ? (\n \n {title ?
{title}
: null}\n {links.map((link) => (\n
  • \n \n {link.title || link.label}\n \n
  • \n ))}\n
    \n ) : null;\n\nSecondaryMenu.propTypes = {\n title: PropTypes.string,\n links: PropTypes.arrayOf(\n PropTypes.shape({\n href: PropTypes.string,\n route: PropTypes.string,\n to: PropTypes.string,\n title: PropTypes.string,\n label: PropTypes.string,\n }),\n ),\n};\n\nexport default SecondaryMenu;\n","import PropTypes from \"prop-types\";\nimport React, { useMemo } from \"react\";\nimport styled from \"styled-components\";\n\nimport CONFIG from \"@agir/front/app/Navigation/navigation.config\";\n\nimport CounterBadge from \"@agir/front/app/Navigation/CounterBadge\";\nimport Link from \"@agir/front/app/Link\";\nimport { RawFeatherIcon } from \"@agir/front/genericComponents/FeatherIcon\";\nimport SecondaryMenu from \"./SecondaryMenu\";\n\nconst MenuLink = styled(Link)`\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n height: 1.5rem;\n\n font-size: 1rem;\n line-height: 1.5;\n font-weight: 600;\n color: ${({ $active, theme }) => ($active ? theme.primary500 : \"inherit\")};\n\n &:hover,\n &:focus {\n color: ${({ $active, theme }) => ($active ? theme.primary500 : \"inherit\")};\n text-decoration: none;\n }\n\n ${CounterBadge} {\n position: absolute;\n left: 14px;\n top: -5px;\n }\n\n ${RawFeatherIcon} {\n display: inline-block;\n line-height: 0;\n color: ${({ $active, theme }) =>\n $active ? theme.primary500 : theme.text500};\n margin-right: 1rem;\n }\n\n ${RawFeatherIcon}:last-child {\n align-self: baseline;\n margin-right: 0;\n margin-left: 0.5rem;\n }\n`;\n\nconst LINKS = CONFIG.menuLinks.filter(({ desktop }) => !!desktop);\n\nconst NavigationLink = ({\n link,\n active,\n routes,\n unreadMessageCount = 0,\n unreadActivityCount = 0,\n}) => {\n const secondaryLinks = useMemo(() => {\n if (!routes) {\n return null;\n }\n if (Array.isArray(link.secondaryLinks)) {\n return link.secondaryLinks;\n }\n\n return routes[link.secondaryLinks];\n }, [routes, link.secondaryLinks]);\n\n return (\n
  • \n \n {link.unreadMessageBadge && }\n {link.unreadActivityBadge && (\n \n )}\n \n {link.title}\n {link.external && (\n \n )}\n \n \n
  • \n );\n};\n\nconst Navigation = (props) => {\n return (\n
      \n {LINKS.map((link) => (\n \n ))}\n
    \n );\n};\n\nNavigation.propTypes = {\n active: PropTypes.string,\n unreadActivityCount: PropTypes.number,\n unreadMessageCount: PropTypes.number,\n routes: PropTypes.object,\n};\nexport default Navigation;\n","import PropTypes from \"prop-types\";\nimport React, { useMemo } from \"react\";\n\nimport CONFIG from \"@agir/front/app/Navigation/navigation.config\";\n\nimport { useSelector } from \"@agir/front/globalContext/GlobalContext\";\nimport { getRoutes, getUser } from \"@agir/front/globalContext/reducers\";\nimport { useUnreadMessageCount } from \"@agir/msgs/common/hooks\";\nimport { useUnreadActivityCount } from \"@agir/activity/common/hooks\";\n\nimport SideBar from \"./SideBar\";\nimport SecondaryMenu from \"./SecondaryMenu\";\n\nexport const SecondarySideBar = () => (\n \n);\n\nconst ConnectedSideBar = (props) => {\n const unreadActivityCount = useUnreadActivityCount();\n const unreadMessageCount = useUnreadMessageCount();\n const routes = useSelector(getRoutes);\n const user = useSelector(getUser);\n\n const userRoutes = useMemo(\n () =>\n user && user?.groups.length > 0\n ? {\n ...routes,\n userGroups: user.groups.map((group) => ({\n id: group.id,\n label: group.name,\n to: group.link,\n })),\n }\n : routes,\n [user, routes],\n );\n\n return (\n \n );\n};\n\nexport default ConnectedSideBar;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport useSWR from \"swr\";\n\nimport ActionButtons from \"@agir/front/app/ActionButtons/ActionButtons\";\nimport Announcements from \"@agir/front/app/Announcements\";\nimport FacebookLoginAd from \"@agir/front/app/FacebookLoginAd\";\nimport { LayoutTitle, LayoutSubtitle } from \"./StyledComponents\";\nimport SideBar, { SecondarySideBar } from \"@agir/front/app/Navigation/SideBar\";\nimport Spacer from \"@agir/front/genericComponents/Spacer\";\nimport UpcomingEvents from \"@agir/events/common/UpcomingEvents\";\n\nconst LeftColumn = styled.aside`\n position: sticky;\n top: 3rem;\n z-index: ${(props) => props.theme.zindexMainContent};\n`;\nconst MainColumn = styled.div``;\nconst RightColumn = styled.aside``;\n\nconst MainContainer = styled.div`\n width: 100%;\n max-width: 1442px;\n margin: 0 auto;\n padding: 0 50px 3rem;\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n\n ${LeftColumn} {\n padding: 3rem 2rem 0 0;\n flex: 0 0 255px;\n min-width: 1px;\n\n @media (max-width: ${(props) => props.theme.collapseTablet}px) {\n display: none;\n }\n }\n\n ${RightColumn} {\n padding: 3rem 0 0 2rem;\n flex: 0 0 255px;\n\n h4 {\n margin: 0 0 0.5rem;\n line-height: 1.5;\n }\n }\n\n ${MainColumn} {\n padding: 3rem 0 0;\n flex: 0 1 725px;\n margin: 0 auto;\n\n @media (max-width: ${(props) => props.theme.collapseTablet}px) {\n flex-grow: 1;\n }\n }\n`;\n\nconst Layout = (props) => {\n const { title, subtitle, children } = props;\n\n const { data: events } = useSWR(\"/api/evenements/rsvped/\");\n\n return (\n \n \n \n \n \n
    \n {props.title ? (\n
    \n {title}\n {subtitle}\n
    \n ) : null}\n {children}\n
    \n
    \n \n
    \n

    Moyens d'action

    \n \n
    \n \n {Array.isArray(events) && events.length > 0 ? (\n <>\n
    \n

    Mes événements prévus

    \n \n
    \n \n \n ) : null}\n \n \n \n
    \n
    \n );\n};\n\nexport default Layout;\n\nLayout.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n children: PropTypes.node,\n};\n","import React from \"react\";\n\nimport { useResponsiveMemo } from \"@agir/front/genericComponents/grid\";\n\nimport MobileLayout from \"./MobileLayout\";\nimport DesktopLayout from \"./DesktopLayout\";\n\nconst Layout = (props) => {\n const Component = useResponsiveMemo(MobileLayout, DesktopLayout);\n return ;\n};\n\nexport default Layout;\n","import Layout from \"./Layout\";\n\nexport default Layout;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport { ErrorBoundary as SentryErrorBoundary } from \"@sentry/react\";\n\nimport ErrorPage from \"@agir/front/errorPage/ErrorPage\";\n\nimport generateLogger from \"@agir/lib/utils/logger\";\n\nconst logger = generateLogger(__filename);\n\nclass DevErrorBoundary extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n errorMessage: \"\",\n };\n }\n\n static getDerivedStateFromError(error) {\n return {\n errorMessage: error !== undefined ? error.toString() : `Une erreur s'est produite`,\n };\n }\n\n componentDidCatch(error, info) {\n logger.debug(error, info);\n }\n\n render() {\n const { children, Fallback: CustomFallback } = this.props;\n const { errorMessage } = this.state;\n\n if (!errorMessage) {\n return children;\n }\n\n if (CustomFallback) {\n return ;\n }\n\n return ;\n }\n}\n\nconst ProdErrorBoundary = (props) => {\n const { children, Fallback: CustomFallback } = props;\n\n const fallback = ({ error }) =>\n CustomFallback ? (\n \n ) : (\n \n );\n\n return (\n {children}\n );\n};\n\nDevErrorBoundary.propTypes = ProdErrorBoundary.propTypes = {\n children: PropTypes.node,\n Fallback: PropTypes.oneOfType([PropTypes.func, PropTypes.element]),\n};\n\nconst ErrorBoundary =\n process.env.NODE_ENV === \"production\" ? ProdErrorBoundary : DevErrorBoundary;\n\nexport default ErrorBoundary;\n","import useSWR from \"swr\";\nimport axios from \"@agir/lib/utils/axios\";\n\n\nexport const useActiveBannerAnnouncement = () =>\n useSWR(\"/api/activite/bannerannouncements/\")\n\nexport const answerToBannerAnnouncement = (announcementId, answerId) =>\n axios.put(`/api/activite/bannerannouncements/${announcementId}/answer/${answerId}`)\n\nexport const closeBannerAnnouncement = (announcementId) => axios.get(`/api/activite/bannerannouncements/${announcementId}/close`)","import React from \"react\"\nimport styled, {keyframes} from \"styled-components\";\n\nconst SpinnerAnimation = keyframes`\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n`\nconst Loader = styled.i`\n font-size: 1.6em;\n animation-name: ${SpinnerAnimation};\n animation-duration: 2s;\n animation-timing-function: ease;\n animation-iteration-count: infinite;\n`\n\nexport default function Spinner() {\n return \n}","import styled, {keyframes} from \"styled-components\";\nimport {\n answerToBannerAnnouncement, closeBannerAnnouncement,\n useActiveBannerAnnouncement\n} from \"@agir/activity/BannerAnnouncements/useBannerAnnouncements\";\nimport React, {useEffect, useState} from \"react\"\nimport Button from \"@agir/front/genericComponents/Button\";\nimport {useMutate} from \"@agir/front/app/apiHook\";\nimport Spinner from \"@agir/front/genericComponents/Spinner\";\nimport {useTransition, animated} from \"@react-spring/web\";\n\nconst BackgroundAnimation = keyframes`\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n`\n\nconst Banner = styled.div`\n position: relative;\n width: 100vw;\n min-height: 150px;\n background-color: ${(props) => props.theme.primary500};\n color: ${(props) => props.theme.text25};\n flex-direction: column;\n align-items: center;\n align-content: center;\n text-align: center;\n \n animation-name: ${BackgroundAnimation};\n animation-duration: 1.4s;\n animation-timing-function: ease;\n animation-fill-mode: forwards;\n \n h3 {\n font-weight: bold;\n }\n h2, h3, h4 {\n text-align: center;\n color: ${(props) => props.theme.text25};\n margin-bottom: 0.7em;\n font-size: 1.2em;\n margin-top: 0;\n padding-top: 0.7em; \n }\n span {\n max-width: 800px;\n a {\n color: ${(props) => props.theme.text25};\n text-decoration: underline;\n }\n }\n\n @media (max-width: 700px) {\n p {\n text-align: center;\n padding-top: 2px;\n padding-right: 12px;\n padding-left: 12px;\n }\n h2, h3, h4 {\n margin-bottom: 0.2em;\n\n }\n }\n`\nconst Answers = styled.div`\n display: flex;\n align-items: center;\n gap: 10px;\n margin-bottom: 0.5em;\n height: 2.8em;\n padding-top: 0.1em;\n padding-bottom: 0.5em;\n justify-content: center;\n\n @media (max-width: 600px) {\n flex-direction: column;\n margin-bottom: 0.7em;\n height: auto;\n }\n`\nconst BannerAnnouncementDone = styled.div`\n width: 100vw;\n min-height: 150px;\n background-color: #17a460;\n \n animation-name: ${BackgroundAnimation};\n animation-duration: 1.4s;\n animation-timing-function: ease;\n animation-fill-mode: forwards;\n`\n\nconst Close = styled.div`\n position: absolute;\n top: 8px;\n right: 15px;\n \n cursor: pointer;\n \n font-size: 1.5em;\n`\n\nexport default function BannerAnnouncement() {\n const [currentAnnouncement, setCurrentAnnouncement] = useState()\n const [done, setDone] = useState(false);\n const [selectedAnswer, setSelectedAnswer] = useState()\n\n const [announcementsHandled, setAnnouncementsHandled] = useState([])\n\n const {data: announcements, mutate: refresh} = useActiveBannerAnnouncement()\n const {mutate: mutateAnswer, isLoading, error} = useMutate(answerToBannerAnnouncement, () => {\n setDone(true)\n })\n\n const transitions = useTransition(announcements?.length > 0 || !!currentAnnouncement, {\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n config: {duration: 1300}\n });\n\n useEffect(() => {\n const announcement = announcements?.[0]\n if (announcement && !announcementsHandled.includes(announcement?.id) && !done) {\n setCurrentAnnouncement(announcement)\n }\n }, [announcementsHandled, announcements, done]);\n\n async function userAnswer(answer) {\n setSelectedAnswer(answer)\n await mutateAnswer(currentAnnouncement.id, answer.id)\n await refresh()\n }\n\n function AnnouncementDone() {\n return \n

    {currentAnnouncement.question} {selectedAnswer.name}

    \n

    \n\n \n \n }\n\n async function nextAnnouncement() {\n await refresh()\n setAnnouncementsHandled((prev) => {\n return [...prev, currentAnnouncement.id];\n })\n setCurrentAnnouncement(undefined)\n setDone(false)\n }\n\n async function closeAnnouncement() {\n const result = await closeBannerAnnouncement(currentAnnouncement.id);\n if (result.status === 204) {\n await nextAnnouncement()\n }\n }\n\n const hasAnswers = !!currentAnnouncement?.answers?.length\n return <>\n {transitions((style, item) => {\n return item && (\n \n \n {!currentAnnouncement ? : done ? : <>\n

    {currentAnnouncement.title}

    \n {isLoading ? : hasAnswers && \n {currentAnnouncement.question &&

    {currentAnnouncement.question}

    }\n {\n currentAnnouncement.answers?.map((answer) => {\n return \n })\n }\n
    }\n {!isLoading &&\n }\n }\n {!hasAnswers && }\n \n \n );\n }\n )}\n \n}\n","import PropTypes from \"prop-types\";\nimport React, { Suspense, useEffect, useMemo } from \"react\";\nimport { useHistory, useLocation, useParams } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nimport {\n setAdminLink,\n setBackLink,\n setPageTitle,\n setTopBarRightLink,\n} from \"@agir/front/globalContext/actions\";\nimport {\n useDispatch,\n useSelector,\n} from \"@agir/front/globalContext/GlobalContext\";\nimport { getIsSessionLoaded } from \"@agir/front/globalContext/reducers\";\n\nimport FeedbackButton from \"@agir/front/allPages/FeedbackButton\";\nimport Layout from \"@agir/front/app/Layout\";\n\nimport logger from \"@agir/lib/utils/logger\";\nimport ErrorBoundary from \"./ErrorBoundary\";\n\nimport Redirect from \"./Redirect\";\nimport BannerAnnouncement from \"@agir/activity/BannerAnnouncements/BannerAnnouncement\";\n\nconst log = logger(__filename);\n\nconst StyledPage = styled.div`\n isolation: isolate;\n padding-top: ${({ $hasTopBar }) => ($hasTopBar ? \"72px\" : \"0\")};\n\n @media (max-width: ${(props) => props.theme.collapse}px) {\n padding-top: ${({ $hasTopBar }) => ($hasTopBar ? \"56px\" : \"0\")};\n }\n`;\n\nconst Page = (props) => {\n const { Component, routeConfig, hasTopBar, ...rest } = props;\n\n const dispatch = useDispatch();\n const isSessionLoaded = useSelector(getIsSessionLoaded);\n\n const history = useHistory();\n const routeParams = useParams();\n const { pathname } = useLocation();\n\n useMemo(() => {\n if (!routeConfig.isPartial) {\n dispatch(setBackLink(null));\n dispatch(setTopBarRightLink(null));\n dispatch(setAdminLink(null));\n dispatch(setPageTitle(routeConfig?.label || null));\n }\n //eslint-disable-next-line\n }, [pathname, routeConfig]);\n\n useMemo(() => {\n if (!isSessionLoaded || !routeConfig.backLink) {\n return;\n }\n let link = routeConfig.backLink;\n if (typeof link === \"object\" && !Array.isArray(link)) {\n link.routeParams = {\n ...routeParams,\n ...(link.routeParams || {}),\n };\n }\n dispatch(setBackLink(link));\n\n //eslint-disable-next-line\n }, [pathname, isSessionLoaded, dispatch, routeConfig]);\n\n useMemo(() => {\n if (!isSessionLoaded || !routeConfig.topBarRightLink) {\n return;\n }\n let link = routeConfig.backLink;\n if (typeof link === \"object\" && !Array.isArray(link)) {\n link.routeParams = {\n ...routeParams,\n ...(link.routeParams || {}),\n };\n }\n dispatch(setTopBarRightLink(routeConfig.topBarRightLink));\n //eslint-disable-next-line\n }, [pathname, isSessionLoaded, dispatch, routeConfig]);\n\n useEffect(() => {\n let unlisten = history.listen((location, action) => {\n log.debug(\n `Navigate ${action} ${location.pathname}${location.search}${location.hash}`,\n JSON.stringify(history, null, 2),\n );\n });\n\n return () => unlisten();\n }, [history]);\n\n useMemo(() => {\n if (!routeConfig.keepScroll) {\n typeof window !== \"undefined\" &&\n !!window.scrollTo &&\n window.scrollTo(0, 0);\n }\n }, [routeConfig]);\n\n if (typeof routeConfig.redirectTo === \"function\") {\n const redirectProps = routeConfig.redirectTo(pathname, routeParams);\n return typeof redirectProps === \"string\" ? (\n \n ) : (\n \n );\n }\n\n if (routeConfig.isPartial) {\n return (\n \n }>\n \n \n \n );\n }\n\n if (!routeConfig.hasLayout) {\n return (\n \n \n }>\n \n {!routeConfig.hideFeedbackButton && (\n \n )}\n \n \n \n );\n }\n\n return (\n \n \n \n \n }>\n \n {!routeConfig.hideFeedbackButton && }\n \n \n \n \n );\n};\nPage.propTypes = {\n Component: PropTypes.elementType,\n routeConfig: PropTypes.object.isRequired,\n hasTopBar: PropTypes.bool,\n};\n\nexport default Page;\n","import ModalConfirmation from \"@agir/front/genericComponents/ModalConfirmation\";\nimport React, {useEffect, useMemo, useState} from \"react\";\nimport {useLocalStorage} from \"@agir/lib/utils/hooks\";\nimport styled from \"styled-components\";\nimport useSWR from \"swr\";\nimport {getNewsletterStatus} from \"@agir/notifications/common/notifications.config\";\nimport {updateProfile} from \"@agir/front/authentication/api\";\n\nconst StyledTitle = styled.div`\n color: ${(props) => props.theme.primary500};\n text-align: center;\n \n span {\n margin-bottom: 25px;\n }\n`\nconst StyledModalContent = styled.div`\n text-align: center;\n padding: 10px;\n`\n\n\nexport default function ModalMissingNewsletter() {\n const [alreadyShowNewsletterModal, setAlreadyShowNewsletterModal] = useLocalStorage(\"AP_show_newsletter_modal\", false)\n const {data: profile, mutate: mutateProfile, isLoading} = useSWR(\"/api/user/profile/\");\n const [isLoadingUpdateProfile, setIsLoadingUpdateProfile] = useState(false);\n const newsletterOptions = useMemo(() => getNewsletterStatus(profile?.newsletters), [profile]);\n\n function userRegisteredToReguliere() {\n return newsletterOptions?.[\"LFI_reguliere\"]?.email ?? false\n }\n\n async function inscription() {\n setIsLoadingUpdateProfile(true)\n const updatedProfile = await updateProfile({\"newsletters\": [\"LFI_reguliere\"]});\n await mutateProfile(() => updatedProfile?.data)\n\n setIsLoadingUpdateProfile(false);\n setAlreadyShowNewsletterModal(true)\n }\n\n function userOldEnough() {\n const dateLessOneMonth = new Date()\n dateLessOneMonth.setMonth(dateLessOneMonth.getMonth() - 1)\n return new Date(profile?.created) < dateLessOneMonth;\n }\n\n useEffect(() => {\n if (userRegisteredToReguliere() && !alreadyShowNewsletterModal) {\n setAlreadyShowNewsletterModal(true)\n }\n }, [newsletterOptions, alreadyShowNewsletterModal]);\n\n const show = !alreadyShowNewsletterModal && !isLoading && !userRegisteredToReguliere() && userOldEnough()\n\n return \n
    \n NE MANQUEZ PAS NOS ACTUALITÉS !\n }\n dismissLabel=\"Non merci\"\n confirmationLabel=\"Je m'inscris\"\n onConfirm={inscription}\n onClose={() => setAlreadyShowNewsletterModal(true)}\n shouldDismissOnClick={false}\n isConfirming={isLoadingUpdateProfile}\n >\n \n\n

    Cela fait un moment que vous utilisez Action populaire, mais vous n'êtes toujours pas inscrit⸱e à la\n lettre d'information de la France Insoumise.

    \n

    Inscrivez-vous dès maintenant pour suivre de près par e-mail toutes les actualités du mouvement !

    \n
    \n \n}","import PropTypes from \"prop-types\";\nimport React, { useEffect } from \"react\";\nimport {\n BrowserRouter,\n Redirect,\n Route,\n Switch,\n useLocation,\n} from \"react-router-dom\";\nimport ScrollMemory from \"react-router-scroll-memory\";\n\nimport { useAppLoader, useMobileApp } from \"@agir/front/app/hooks\";\nimport { useAuthentication } from \"@agir/front/authentication/hooks\";\nimport routes, { BASE_PATH, routeConfig } from \"./routes.config\";\nimport useTracking from \"./useTracking\";\n\nimport ConnectivityWarning from \"@agir/front/app/ConnectivityWarning\";\nimport Footer from \"@agir/front/app/Footer\";\nimport TopBar from \"@agir/front/app/Navigation/TopBar\";\nimport OpenGraphTags from \"@agir/front/app/OpenGraphTags\";\nimport NotFoundPage from \"@agir/front/notFoundPage/NotFoundPage\";\nimport Page from \"./Page\";\n\nimport logger from \"@agir/lib/utils/logger\";\nimport ModalMissingNewsletter from \"@agir/front/app/ModalMissingNewsletter\";\n\nconst log = logger(__filename);\n\nexport const ProtectedComponent = (props) => {\n const { route, ...rest } = props;\n const { Component, AnonymousComponent = null } = route;\n\n const location = useLocation();\n const isAuthorized = useAuthentication(route);\n\n useAppLoader(isAuthorized !== null);\n useEffect(() => {\n if (isAuthorized === null) {\n return;\n }\n const PreloadedComponent = isAuthorized ? Component : AnonymousComponent;\n if (\n PreloadedComponent &&\n typeof PreloadedComponent.preload === \"function\"\n ) {\n log.debug(\"Preloading\", PreloadedComponent);\n PreloadedComponent.preload();\n }\n }, [isAuthorized, AnonymousComponent, Component]);\n\n if (isAuthorized === null) {\n return null;\n }\n\n if (isAuthorized === true) {\n return ;\n }\n\n if (AnonymousComponent) {\n const routeConfig = route.anonymousConfig\n ? {\n ...route,\n ...route.anonymousConfig,\n }\n : route;\n return (\n \n );\n }\n\n return (\n \n );\n};\nProtectedComponent.propTypes = {\n route: PropTypes.object.isRequired,\n};\n\nconst TrackingComponent = () => {\n useTracking();\n return null;\n};\nconst Router = ({ children }) => {\n const { isMobileApp } = useMobileApp();\n return (\n \n \n \n \n \n \n {routes.map((route) => {\n const hasTopBar =\n !route.hideTopBar && (!route.appOnlyTopBar || isMobileApp);\n return (\n \n \n {!route.hideConnectivityWarning && (\n \n )}\n \n \n );\n })}\n \n \n \n \n {children}\n