{"version":3,"file":"site_corpo-BAgTVwmm.js","sources":["../../../app/frontend/shared/scroll_listener.js","../../../node_modules/image-map-resizer/js/imageMapResizer.min.js","../../../engines/site_corpo/app/frontend/carte_simple_el.js","../../../engines/site_corpo/app/frontend/filtre_recherche.js","../../../engines/site_corpo/app/frontend/tracking_events.js","../../../engines/site_corpo/app/frontend/homepage.js","../../../engines/site_corpo/app/frontend/navigation_mobile.js","../../../engines/site_corpo/app/frontend/navigation_desktop.js"],"sourcesContent":["/**\n * @param callback function to be called when a scroll happen\n */\nfunction scrollListener(callback) {\n // We throttle the events to avoid slowing down the browser\n // Code adapted from https://developer.mozilla.org/en-US/docs/Web/API/Document/scroll_event\n let ticking = false;\n\n document.addEventListener('scroll', () => {\n if (!ticking) {\n window.requestAnimationFrame(() => {\n callback();\n ticking = false;\n });\n ticking = true;\n }\n });\n}\n\nexport default scrollListener;\n","/*! Image Map Resizer (imageMapResizer.min.js ) - v1.0.10 - 2019-04-10\n * Desc: Resize HTML imageMap to scaled image.\n * Copyright: (c) 2019 David J. Bradshaw - dave@bradshaw.net\n * License: MIT\n */\n\n!function(){\"use strict\";function r(){function e(){var r={width:u.width/u.naturalWidth,height:u.height/u.naturalHeight},a={width:parseInt(window.getComputedStyle(u,null).getPropertyValue(\"padding-left\"),10),height:parseInt(window.getComputedStyle(u,null).getPropertyValue(\"padding-top\"),10)};i.forEach(function(e,t){var n=0;o[t].coords=e.split(\",\").map(function(e){var t=1==(n=1-n)?\"width\":\"height\";return a[t]+Math.floor(Number(e)*r[t])}).join(\",\")})}function t(e){return e.coords.replace(/ *, */g,\",\").replace(/ +/g,\",\")}function n(){clearTimeout(d),d=setTimeout(e,250)}function r(e){return document.querySelector('img[usemap=\"'+e+'\"]')}var a=this,o=null,i=null,u=null,d=null;\"function\"!=typeof a._resize?(o=a.getElementsByTagName(\"area\"),i=Array.prototype.map.call(o,t),u=r(\"#\"+a.name)||r(a.name),a._resize=e,u.addEventListener(\"load\",e,!1),window.addEventListener(\"focus\",e,!1),window.addEventListener(\"resize\",n,!1),window.addEventListener(\"readystatechange\",e,!1),document.addEventListener(\"fullscreenchange\",e,!1),u.width===u.naturalWidth&&u.height===u.naturalHeight||e()):a._resize()}function e(){function t(e){e&&(!function(e){if(!e.tagName)throw new TypeError(\"Object is not a valid DOM element\");if(\"MAP\"!==e.tagName.toUpperCase())throw new TypeError(\"Expected tag, found <\"+e.tagName+\">.\")}(e),r.call(e),n.push(e))}var n;return function(e){switch(n=[],typeof e){case\"undefined\":case\"string\":Array.prototype.forEach.call(document.querySelectorAll(e||\"map\"),t);break;case\"object\":t(e);break;default:throw new TypeError(\"Unexpected data type (\"+typeof e+\").\")}return n}}\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof module&&\"object\"==typeof module.exports?module.exports=e():window.imageMapResize=e(),\"jQuery\"in window&&(window.jQuery.fn.imageMapResize=function(){return this.filter(\"map\").each(r).end()})}();\n//# sourceMappingURL=imageMapResizer.map","import imageMapResize from 'image-map-resizer';\nimport onLoadAsync from '@/shared/on_load_async.js';\n\nonLoadAsync(() => {\n // Resize the image areas to adapt them to the image size\n document.querySelectorAll('map').forEach((mapElement) => {\n const imageWith = Number(mapElement.dataset.imageWidth);\n const originalImageWith = Number(mapElement.dataset.originalImageWidth);\n const imagesSizeRatio = imageWith / originalImageWith;\n mapElement.querySelectorAll('area').forEach((areaElement) => {\n const currentCoords = areaElement.getAttribute('coords');\n const scaledCoords = currentCoords.split(',')\n .map((value) => Number(value) * imagesSizeRatio).join(',');\n areaElement.setAttribute('coords', scaledCoords);\n });\n });\n\n imageMapResize();\n});\n","import onLoadAsync from '@/shared/on_load_async.js';\n\nonLoadAsync(() => {\n document.querySelectorAll('.filtre-recherche').forEach((filtreRechercheForm) => {\n const urlPrefix = filtreRechercheForm.elements['url-prefix'].value;\n const cooperativeSelect = filtreRechercheForm.querySelector('.cooperative_select');\n const thematiqueSelect = filtreRechercheForm.querySelector('.thematique_select');\n\n filtreRechercheForm.addEventListener('submit', (event) => {\n event.preventDefault();\n\n const cooperativeValue = cooperativeSelect.value || 'toutes';\n\n let targetUrl;\n if (thematiqueSelect && (thematiqueSelect.value !== '')) {\n targetUrl = `${urlPrefix}/${cooperativeValue}/${thematiqueSelect.value}/1`;\n } else {\n targetUrl = `${urlPrefix}/${cooperativeValue}`;\n }\n window.location.href = targetUrl;\n });\n });\n});\n","/* eslint-disable no-underscore-dangle */\nimport onLoadAsync from '@/shared/on_load_async.js';\n\nfunction trackers() {\n function hydrateTrackersWith(data) {\n if (window.Klaro?.getManager().consents.matomo) {\n window._mtm.push(data);\n }\n }\n\n // Clic CTA souscription header\n document.querySelectorAll('[data-gtm-event=btn-header-souscription]').forEach((cta) => {\n cta.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'ctaSouscriptionHeader',\n getCategory: 'Navigation',\n getAction: 'CTA Header',\n getLabel: 'Souscription',\n });\n });\n });\n\n // Clic CTA espace client header\n document.querySelectorAll('[data-gtm-event=btn-header-espace-client]').forEach((cta) => {\n cta.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'ctaEspaceClientHeader',\n getCategory: 'Navigation',\n getAction: 'CTA Header',\n getLabel: 'Espace Client',\n });\n });\n });\n\n // Clic CTA espace sociétaire client header\n document.querySelectorAll('[data-gtm-event=btn-header-societaire]').forEach((cta) => {\n cta.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'ctaEspaceSocietaireHeader',\n getCategory: 'Navigation',\n getAction: 'CTA Header',\n getLabel: 'Espace Sociétaire',\n });\n });\n });\n\n // Clic sur les boutons sociaux\n document.querySelectorAll('[data-gtm-event=social-network-page-links] a').forEach((link) => {\n link.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'clicSocialPage',\n getCategory: 'Navigation',\n getAction: 'Bouton Réseau Social',\n getLabel: link.dataset.networkName,\n });\n });\n });\n\n // Clic sur les CTA des blocs\n document.querySelectorAll('.bloc a[data-prismic-document-category]').forEach((link) => {\n const category = link.dataset.prismicDocumentCategory;\n if (!category) {\n return;\n }\n link.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'ctaBloc',\n getCategory: 'Navigation',\n getAction: 'CTA Bloc',\n getLabel: category,\n });\n });\n });\n\n // Clic CTA souscription home\n document.querySelector('[data-gtm-event=btn-bloc-page-accueil-souscription]')?.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'ctaSouscriptionHome',\n getCategory: 'Navigation',\n getAction: 'CTA Home',\n getLabel: 'Souscription',\n });\n });\n\n // Clic sur le partage via les réseaux sociaux\n document.querySelectorAll('[data-gtm-event=social-network-share-links] a').forEach((link) => {\n link.addEventListener('click', () => {\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'clicSocialShare',\n getCategory: 'Engagement',\n getAction: 'Partage Réseau Social',\n getLabel: link.dataset.networkName,\n });\n });\n });\n\n // Clic question sur la page de contact\n // Note: we are adding a listener on document because the question links can be added dynamically\n document.addEventListener('click', (event) => {\n const link = event.target.closest('a[data-gtm-event=contact-form-question]');\n if (link) {\n const questionText = link.textContent;\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'clicQuestionContact',\n getCategory: 'Navigation',\n getAction: 'Question Page Contact',\n getLabel: questionText,\n });\n }\n });\n\n // Envoi du formulaire de contact\n document.addEventListener('submit', (event) => {\n const contactForm = document.querySelector('form#contact_form');\n if (!contactForm || event.target !== contactForm) {\n return;\n }\n\n const selects = contactForm.querySelectorAll('select.step-select');\n const concatenatedStepLabels = Array.from(selects).map((select) => select.options[select.selectedIndex].innerHTML).join(' | ');\n\n hydrateTrackersWith({\n event: 'genericEvent',\n eventType: 'contactFormSent',\n getCategory: 'Engagement',\n getAction: 'Formulaire contact',\n getLabel: concatenatedStepLabels,\n });\n });\n}\n\nonLoadAsync(() => {\n if (window.initTrackers) window.initTrackers(trackers);\n});\n","/**\n * @returns {boolean}\n */\nfunction isHomepage() {\n const navBar = document.querySelector('.main-navbar');\n return navBar?.classList.contains('navbar-transparent');\n}\n\nexport default isHomepage;\n","import scrollListener from '@/shared/scroll_listener.js';\nimport onLoadAsync from '@/shared/on_load_async.js';\nimport isHomepage from './homepage.js';\n\nonLoadAsync(() => {\n // Show sub menu when clicking on a link\n document.querySelectorAll('nav.navigation-mobile .navigation-item-mobile.navigation-item-submenu').forEach((itemWithMenu) => {\n itemWithMenu.addEventListener('click', () => {\n const menuIndex = itemWithMenu.dataset.navigationMobileLinkIndex;\n const menuContent = document.querySelector(`.js_navigation_mobile_submenu_${menuIndex}`);\n menuContent.classList.add('active');\n });\n });\n\n // Listener for \"mon espace\"\n document.querySelectorAll('.js-btn-mon-espace').forEach((button) => {\n button.addEventListener('click', () => {\n const menuContent = document.querySelector('.js_navigation_mobile_submenu_mon_espace');\n menuContent.classList.add('active');\n });\n });\n\n // Hide menu when clicking on the \"back\" arrow\n document.querySelectorAll('nav .corpo-arrow_menu').forEach((closeMenuArrow) => {\n closeMenuArrow.addEventListener('click', (event) => {\n const menuIndex = closeMenuArrow.dataset.navigationMobileCloseMenuIndex;\n if (menuIndex != null) {\n // Only for submenu\n const menuContent = document.querySelector(`.js_navigation_mobile_submenu_${menuIndex}`);\n menuContent.classList.remove('active');\n event.stopPropagation();\n }\n });\n });\n\n if (isHomepage()) {\n // On homepage the navbar subscription button is only displayed if the subscription buttons\n // on the bloc couverture are not visible\n // (there are two possible buttons and one is used depending of the screen's width).\n // If at least one of couverture subscription buttons' bottom position is lower than the\n // navbar's bottom position the navbar button is hidden else the navbar's\n // button should be visible since it means there is no visible couverture subscription button.\n const blocCouvertureButtons = Array.from(document.querySelectorAll('.js-couverture-subscription-button'));\n const navbarSubscriptionButton = document.querySelector('.main-navbar .icons-mobile .js-btn-souscription-mobile');\n const navbar = document.querySelector('.main-navbar');\n\n let buttonDisplayed = true;\n const updateButton = () => {\n const navbarBottom = navbar.getBoundingClientRect().bottom;\n\n const highestBlocCouvertureButtonBottom = Math.max(\n ...blocCouvertureButtons.map((button) => button.getBoundingClientRect().bottom),\n );\n\n if (highestBlocCouvertureButtonBottom <= navbarBottom) {\n if (!buttonDisplayed) {\n navbarSubscriptionButton.classList.remove('masked');\n buttonDisplayed = true;\n }\n } else if (buttonDisplayed) {\n navbarSubscriptionButton.classList.add('masked');\n buttonDisplayed = false;\n }\n };\n\n scrollListener(updateButton);\n window.addEventListener('resize', updateButton);\n updateButton();\n }\n});\n","import scrollListener from '@/shared/scroll_listener.js';\nimport onLoadAsync from '@/shared/on_load_async.js';\nimport isHomepage from './homepage.js';\n\nconst MAIN_NAVBAR_CLASS_WHEN_PAGE_SCROLLED = 'scrolled';\nconst MAIN_NAVBAR_CLASS_WHEN_MENU_DISPLAYED = 'menu-displayed';\n\nfunction navBarBackgroundStayVisible(mainNavBar) {\n mainNavBar.classList.add(MAIN_NAVBAR_CLASS_WHEN_MENU_DISPLAYED);\n}\n\nfunction navBarBackgroundCanBeInvisible(mainNavBar) {\n mainNavBar.classList.remove(MAIN_NAVBAR_CLASS_WHEN_MENU_DISPLAYED);\n}\n\n/**\n * Return the index of the displayed menu or null if no menu is displayed\n */\nfunction displayedMenuIndex() {\n const currentlyDisplayedMenu = document.querySelector('.navigation-item-menu.active');\n return currentlyDisplayedMenu ? currentlyDisplayedMenu.dataset.navigationItemIndex : null;\n}\n\n/**\n * Hide the currently displayed menu\n */\nfunction hideCurrentMenu() {\n document.querySelectorAll('.navigation-item.active').forEach((navigationItem) => {\n navigationItem.classList.remove('active');\n });\n\n document.querySelectorAll('.navigation-item-menu.active').forEach((navigationItemMenu) => {\n navigationItemMenu.classList.remove('active');\n navigationItemMenu.style.setProperty('bottom', 0);\n });\n}\n\n/**\n * When a menu item is clicked\n */\nfunction selectedNavigationItem(navigationItem, mainNavBar) {\n const selectedMenuIndex = navigationItem.dataset.navigationItemIndex;\n\n if (displayedMenuIndex() === selectedMenuIndex) {\n // We're already displaying the right menu. Nothing to do here\n return;\n }\n\n hideCurrentMenu();\n\n navigationItem.classList.add('active');\n\n document.querySelectorAll(`.navigation-item-menu-${selectedMenuIndex}`).forEach((navigationItemMenu) => {\n navigationItemMenu.classList.add('active');\n navigationItemMenu.style.setProperty('bottom', `-${navigationItemMenu.clientHeight}px`);\n });\n\n // Be sure the navbar background stays visible\n navBarBackgroundStayVisible(mainNavBar);\n}\n\nonLoadAsync(() => {\n const mainNavBar = document.querySelector('.main-navbar');\n\n // Avoid error for blocs gallery\n if (!mainNavBar) {\n return;\n }\n\n // Do stuff when clicking on a link on the main bar\n mainNavBar.querySelectorAll('[data-navigation-item-index]').forEach((navigationItem) => {\n navigationItem.addEventListener('mouseover', () => {\n selectedNavigationItem(navigationItem, mainNavBar);\n });\n });\n\n document.querySelector('.nav-wrapper').addEventListener('mouseleave', () => {\n hideCurrentMenu();\n\n navBarBackgroundCanBeInvisible(mainNavBar);\n });\n\n // Manage the background color of the navigation bar on the homepage\n if (isHomepage()) {\n let navBarHighlighted = false;\n\n const alertBanner = document.querySelector('.alert-banner');\n const alertBannerClientHeight = alertBanner && alertBanner.clientHeight;\n\n scrollListener(() => {\n const scrollPosition = window.scrollY;\n if (scrollPosition === 0) {\n // We arrived at the top of the page\n if (navBarHighlighted) {\n navBarHighlighted = false;\n mainNavBar.classList.remove(MAIN_NAVBAR_CLASS_WHEN_PAGE_SCROLLED);\n }\n } else if (scrollPosition > 0) {\n // We left the top of the page\n // The > 0 if for Safari where you can temporary scroll above the top of the page\n if (!navBarHighlighted) {\n navBarHighlighted = true;\n mainNavBar.classList.add(MAIN_NAVBAR_CLASS_WHEN_PAGE_SCROLLED);\n }\n }\n\n if (alertBannerClientHeight) {\n if (alertBannerClientHeight > scrollPosition) {\n alertBanner.style.marginTop = `-${scrollPosition}px`;\n alertBanner.style.display = 'block';\n } else {\n alertBanner.style.display = 'none';\n }\n }\n });\n }\n});\n"],"names":["scrollListener","callback","ticking","r","e","u","a","i","t","n","o","d","module","onLoadAsync","mapElement","imageWith","originalImageWith","imagesSizeRatio","areaElement","scaledCoords","value","imageMapResize","filtreRechercheForm","urlPrefix","cooperativeSelect","thematiqueSelect","event","cooperativeValue","targetUrl","trackers","hydrateTrackersWith","data","cta","link","category","questionText","contactForm","selects","concatenatedStepLabels","select","isHomepage","itemWithMenu","menuIndex","button","closeMenuArrow","blocCouvertureButtons","navbarSubscriptionButton","navbar","buttonDisplayed","updateButton","navbarBottom","MAIN_NAVBAR_CLASS_WHEN_PAGE_SCROLLED","MAIN_NAVBAR_CLASS_WHEN_MENU_DISPLAYED","navBarBackgroundStayVisible","mainNavBar","navBarBackgroundCanBeInvisible","displayedMenuIndex","currentlyDisplayedMenu","hideCurrentMenu","navigationItem","navigationItemMenu","selectedNavigationItem","selectedMenuIndex","navBarHighlighted","alertBanner","alertBannerClientHeight","scrollPosition"],"mappings":"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","x_google_ignoreList":[1]}