{"version":3,"file":"assets/js/chunks/ROUTE_RESTRICTION_DEPARTMENT.9bde26a2a4f9176e526b.js","mappings":"sXAmBO,MAAMA,EAAeC,IAA+C,IAA9C,OAAEC,EAAQC,OAAO,SAAEC,EAAQ,SAAEC,IAAYJ,EACpE,KAAKK,EAAAA,EAAAA,IAAmBD,KAAa,MAAM,IAAIE,EAAAA,EAAkB,qDAEjE,MAAM,eAAEC,EAAc,WAAEC,GAAeP,EACjCQ,EAAW,GAAGF,KAAkBC,IAMtC,OAAOE,EAAAA,EAAAA,IAAWD,EAAUE,EAAAA,GAAkBC,OAAOC,OAA9CH,CAAsDP,EAAUC,GACpEU,MAAK,KACJ,MAAMC,GAAeC,EAAAA,EAAAA,IAAmBZ,KAExC,GAAIW,EAAaR,iBAAmBA,IAAkBU,EAAAA,EAAAA,IAAQF,EAAaG,mBAAqBV,EAC9F,MAAM,IAAIW,EAAAA,GACRC,EAAAA,EAAAA,IAAkBC,EAAAA,GAA8B,CAC9Cd,eAAgBQ,EAAaR,eAC7BC,YAAYS,EAAAA,EAAAA,IAAQF,EAAaG,oBAIvC,OAAOI,QAAQC,IAAI,EACjBC,EAAAA,EAAAA,KAAAA,CAAgBrB,EAAUC,GAAUU,MAAK,KAAM,IAAAW,EAC7C,MAAMC,EAA+C,QAApCD,GAAGE,EAAAA,EAAAA,IAAsBvB,YAAW,IAAAqB,OAAA,EAAjCA,EAAoC,GACpDC,SAAAA,EAAaE,KAAKzB,GAAS0B,EAAAA,EAAAA,IAAWH,EAAYE,KAAK,IAE7DzB,GAAS2B,EAAAA,EAAAA,IAAW,CAAEC,MAAMC,EAAAA,EAAAA,IAAsBjB,EAAagB,SAC/D5B,GAAS8B,EAAAA,EAAAA,IAAexB,KACxB,IAEHyB,MAAMC,EAAAA,EAAsB,EAGjC,WAAeC,EAAAA,EAAAA,GAAmB,CAAErC,eAAcsC,WAAUA,EAAAA,G,uPCnCrD,MAAMA,EAAarC,IAAsB,IAArB,aAAEsC,GAActC,EACzC,MAAM,UAAEuC,EAAS,YAAEC,GAAgBC,EAAAA,GAC7B,aAAEC,IAAiBC,EAAAA,EAAAA,IAAWL,EAAapC,MAAME,YAEvD,OACEwC,EAAAA,cAACC,EAAAA,EAAI,CAACC,WAAY,CAACP,EAAWC,GAAcZ,IAAI,QAC9CgB,EAAAA,cAACG,EAAAA,EAAoB,CAACC,MAAOC,EAAAA,KAC7BL,EAAAA,cAACM,EAAAA,EAAG,CAACtB,IAAI,MAAMuB,UAAWT,EAAeE,EAAAA,cAACQ,EAAAA,EAAkB,MAAMR,EAAAA,cAACS,EAAAA,EAAc,QACjFT,EAAAA,cAACU,EAAAA,EAAM,CAAC1B,IAAI,SAAS2B,aAAW,GAC9BX,EAAAA,cAACY,EAAAA,EAAiB,CAAC5B,IAAI,oBAAoB2B,aAAW,KAExDX,EAAAA,cAACa,EAAAA,EAAY,CAAC7B,IAAI,eAAe8B,eAAgBd,EAAAA,cAACe,EAAAA,EAAqB,OACrEf,EAAAA,cAACgB,EAAAA,EAA0B,OAE7BhB,EAAAA,cAACiB,EAAAA,EAAqB,MACtBjB,EAAAA,cAACkB,EAAAA,EAAI,CAAClC,IAAI,OAAOmC,kBAAgB,GAC/BnB,EAAAA,cAACoB,EAAAA,EAAoB,CAAChB,MAAOC,EAAAA,MAE1B,C","sources":["webpack://web-pwa/./src/routes/zones/restrictionDepartment.route.js","webpack://web-pwa/./src/domain/seo/zones/restriction-zone.page.jsx"],"sourcesContent":["import { setMapMode, mapUpdated } from '../../store/map/mapSlice'\nimport PageNotFoundError from '../../domain/error/PageNotFoundError'\nimport PermanentRedirectError from '../../domain/error/PermanentRedirectError'\nimport { bboxArrayToBboxArrays } from '../../domain/map/conversion'\nimport { generateFullRoute } from '../../domain/router/routeUtils'\nimport { renderPage } from '../../domain/seo/zones/restriction-zone.page'\nimport { searchArea } from '../../store/address/address.actions'\nimport { selectFirstAddress } from '../../store/address/address.selectors'\nimport { loadMapEvents } from '../../store/map/map.actions'\nimport { selectActiveMapEvents } from '../../store/map/map.selectors'\nimport { selectIsFrenchSite } from '../../store/navigation/navigation.selectors'\nimport { setSearchTerms } from '../../store/search/searchSlice'\nimport { geocodeForwardCtx } from '../../store/search/search.service.constants'\nimport { redirectLayerDepartmentRouteIfTownUpperCased } from '../../store/seo/seo-zone.actions'\nimport { slugify } from '../../utils/string'\nimport { ROUTE_RESTRICTION_DEPARTMENT } from '../index'\nimport { technicalErrorCatcher } from '../routeErrors.utils'\nimport { handleRouteLoading } from '../routeService'\n\nexport const onRouteEnter = ({ params, store: { dispatch, getState } }) => {\n if (!selectIsFrenchSite(getState())) throw new PageNotFoundError('restriction department accessed from foreign site')\n\n const { departmentCode, department } = params\n const location = `${departmentCode}-${department}`\n\n if (__SERVER__) {\n redirectLayerDepartmentRouteIfTownUpperCased(departmentCode, department, ROUTE_RESTRICTION_DEPARTMENT)\n }\n\n return searchArea(location, geocodeForwardCtx.filter.county)(dispatch, getState)\n .then(() => {\n const firstAddress = selectFirstAddress(getState())\n\n if (firstAddress.departmentCode !== departmentCode || slugify(firstAddress.departmentLabel) !== department)\n throw new PermanentRedirectError(\n generateFullRoute(ROUTE_RESTRICTION_DEPARTMENT, {\n departmentCode: firstAddress.departmentCode,\n department: slugify(firstAddress.departmentLabel)\n })\n )\n\n return Promise.all([\n loadMapEvents()(dispatch, getState).then(() => {\n const activeEvent = selectActiveMapEvents(getState())?.[0]\n if (activeEvent?.key) dispatch(setMapMode(activeEvent.key))\n }),\n dispatch(mapUpdated({ bbox: bboxArrayToBboxArrays(firstAddress.bbox) })),\n dispatch(setSearchTerms(location))\n ])\n })\n .catch(technicalErrorCatcher)\n}\n\nexport default handleRouteLoading({ onRouteEnter, renderPage })\n","import React from 'react'\nimport AddressSearchDialogContent from '../../../routes/address/AddressSearchDialogContent'\nimport { PAGE_CLASSES } from '../../../routes/pageClasses.constants'\nimport { selectZone } from '../../../store/address/address.selectors'\nimport { MAP_EVENT_LAYER_NAME } from '../../../store/map/map.constants'\nimport AddressHeaderForm from '../../address/AddressHeaderForm'\nimport Page from '../../genericComponents/Page'\nimport Header from '../../header/Header'\nimport Main from '../../main/Main'\nimport Map from '../../map/Map'\nimport PushNotificationPopup from '../../PushNotification/PushNotificationPopup'\nimport SearchDialog from '../../search/SearchDialog'\nimport AddressSuggestContent from '../../suggest/AddressSuggestContent'\nimport DepartmentMapImage from './DepartmentMapImage'\nimport LayerZoneMainContent from './LayerZoneMainContent'\nimport LayerZoneMetaManager from './LayerZoneMetaManager'\nimport RegionMapImage from './RegionMapImage'\n\nexport const renderPage = ({ routeContext }) => {\n const { LayerPage, withToaster } = PAGE_CLASSES\n const { isDepartment } = selectZone(routeContext.store.getState())\n\n return (\n \n \n : } />\n
\n \n
\n }>\n \n \n \n
\n \n
\n
\n )\n}\n"],"names":["onRouteEnter","_ref","params","store","dispatch","getState","selectIsFrenchSite","PageNotFoundError","departmentCode","department","location","searchArea","geocodeForwardCtx","filter","county","then","firstAddress","selectFirstAddress","slugify","departmentLabel","PermanentRedirectError","generateFullRoute","ROUTE_RESTRICTION_DEPARTMENT","Promise","all","loadMapEvents","_selectActiveMapEvent","activeEvent","selectActiveMapEvents","key","setMapMode","mapUpdated","bbox","bboxArrayToBboxArrays","setSearchTerms","catch","technicalErrorCatcher","handleRouteLoading","renderPage","routeContext","LayerPage","withToaster","PAGE_CLASSES","isDepartment","selectZone","React","Page","cssClasses","LayerZoneMetaManager","layer","MAP_EVENT_LAYER_NAME","Map","staticMap","DepartmentMapImage","RegionMapImage","Header","transparent","AddressHeaderForm","SearchDialog","suggestContent","AddressSuggestContent","AddressSearchDialogContent","PushNotificationPopup","Main","withoutSubHeader","LayerZoneMainContent"],"sourceRoot":""}