{"version":3,"sources":["front/tools/_converter.js","front/tools/_debounce.js","front/tools/_vw-check.js","front/tools/_objectfit-polyfill.js","front/components/_navigation.js","front/components/_header.js","front/components/_slider.js","front/components/_form.js","front/components/_form-error.js","front/components/_wiper.js","front/components/_mozaic.js","front/components/_block.js"],"names":["css_time_to_milliseconds","time_string","milliseconds","num","parseFloat","unit","match","debounce","func","wait","immediate","timeout","context","this","args","arguments","callNow","clearTimeout","setTimeout","apply","getScrollbarWidth","window","innerWidth","document","documentElement","clientWidth","$","$body","Modernizr","objectfit","find","each","index","elem","$background","classes","data","replaceWith","style","setProperty","$document","$navigation","$togglers","collapse","$toggler","attr","toggler","toggle","$item","parents","tmp","on","event","touchevents","target","closest","length","is_inside","activeElement","is","$window","burger","$burger","state","update","init","css","$sliders","processing","slider","updateHeight","height","$skeleton","outerHeight","$items","item","$container","changeSlide","delta","current","$slider","prev","next","$prevSlide","eq","$nextSlide","$prevImage","$images","$nextImage","addClass","$dots","removeClass","removeAttr","timer","transition","time","Math","floor","Date","now","updateItem","count","$buttons","$motionControl","first","pause","$button","currentTarget","parseInt","$dot","hasClass","html","loop","requestAnimationFrame","currentTime","hide","show","$containers","$funnel","$funnel_select","$funnel_anppi","$funnel_anppi_select","$funnel_ampps_select","prop","container","$form","$submit","remove","value","val","$to_toggl","tagName","$input","toLowerCase","input_name","filter","$this","inArray","trigger","ready","$errors","firstErrorId","replace","$firstElementWithError","focus","$wipers","wiper","$wiper","duration","children","hideItem","showItem","$old","$new","hideItems","$details","$summary","mozaic","options","useEasing","useGrouping","separator","decimal","observer","IntersectionObserver","observables","observable","$observable","$text","search","number","split","intersectionRatio","CountUp","start","threshold","$number","text","observe","href","name","page","trim","pa","sendEvent","click","page_url","location"],"mappings":"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","file":"front.js","sourcesContent":["function css_time_to_milliseconds(time_string) {\n var num = parseFloat(time_string, 10),\n unit = time_string.match(/m?s/),\n milliseconds;\n\n if (unit) {\n unit = unit[0];\n }\n\n switch (unit) {\n case \"s\": // seconds\n milliseconds = num * 1000;\n break;\n case \"ms\": // milliseconds\n milliseconds = num;\n break;\n default:\n milliseconds = 0;\n break;\n }\n\n return milliseconds;\n}\n","// Returns a function, that, as long as it continues to be invoked, will not\n// be triggered. The function will be called after it stops being called for\n// N milliseconds. If `immediate` is passed, trigger the function on the\n// leading edge, instead of the trailing.\nfunction debounce(func, wait, immediate) {\n\tvar timeout;\n\treturn function() {\n\t\tvar context = this, args = arguments;\n\t\tvar later = function() {\n\t\t\ttimeout = null;\n\t\t\tif (!immediate) func.apply(context, args);\n\t\t};\n\t\tvar callNow = immediate && !timeout;\n\t\tclearTimeout(timeout);\n\t\ttimeout = setTimeout(later, wait);\n\t\tif (callNow) func.apply(context, args);\n\t};\n};\n","function getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n}\n\ndocument.documentElement.style.setProperty('--scrollbar-width', getScrollbarWidth() + \"px\");\n","$(function() {\n polyfill();\n\n function polyfill () {\n var $body = $('body');\n\n if(!Modernizr.objectfit) {\n\n $body.find('.js-object-fit').each(function(index, elem) {\n var $background = $(elem),\n classes = 'c-' + $background.data('component') + '__background';\n\n $background.replaceWith('
');\n });\n }\n }\n});\n","/**\n *\n * Navigation with subnav expansion\n *\n */\n\n(function() {\n 'use strict';\n\n var $document = $(document);\n var $navigation = $(\"#navigation\");\n var $togglers = $navigation.find('.js-navigation-toggler');\n\n var collapseAllTogglers = function () {\n $togglers.each(function(index, toggler) {\n collapse($(toggler));\n });\n };\n\n var collapse = function ($toggler) {\n $toggler.attr('aria-expanded', \"false\");\n }\n\n var expand = function ($toggler) {\n $toggler.attr('aria-expanded', \"true\");\n }\n\n $togglers.each(function(index, toggler) {\n var $toggler = $(toggler);\n var $item = $toggler.parents('.js-navigation-item');\n var $target = $('#' + $toggler.attr('aria-controls'));\n var tmp = false;\n\n var toggle = function () {\n var state = $toggler.attr('aria-expanded') == \"true\";\n\n if(state) {\n collapse($toggler);\n } else {\n collapseAllTogglers();\n expand($toggler);\n }\n };\n\n $toggler.on('click', function(event) {\n toggle();\n });\n\n if(Modernizr.touchevents) {\n $document.on('click', function (event) {\n var state = $toggler.attr('aria-expanded') == \"true\";\n if(state && $navigation.attr('aria-hidden') == \"false\") {\n var $target = $(event.target);\n var is_inside = $target.closest('.js-navigation-item').length > 0;\n\n if (!is_inside) {\n toggle();\n }\n }\n });\n } else {\n $item.on('mouseenter', function(event) {\n toggle();\n });\n\n $item.on('mouseleave', function(event) {\n toggle();\n });\n\n $document.on('keyup', function(event) {\n var is_inside = $(document.activeElement).closest('.js-navigation-item').is($item);\n\n if (!is_inside && tmp) {\n var state = $toggler.attr('aria-expanded') == \"true\";\n if(state) {\n toggle();\n }\n }\n\n tmp = is_inside;\n });\n }\n });\n\n})();\n","/**\n *\n * Header navigation comportment in small resolutions\n *\n */\n\n(function() {\n var $window = $(window);\n var $header = $('#header');\n\n $header.find('.js-header-burger').each(function(index, burger) {\n var $burger = $(burger);\n var $navigation = $('#' + $burger.attr('aria-controls'));\n var state = $burger.attr('aria-expanded');\n\n var toggle_navigation = function () {\n $burger.attr('aria-expanded', !state);\n $navigation.attr('aria-hidden', state);\n state = !state;\n };\n\n var show_navigation = function () {\n $burger.attr('aria-expanded', \"true\");\n $navigation.attr('aria-hidden', \"false\");\n state = true;\n };\n\n var hide_navigation = function () {\n $burger.attr('aria-expanded', \"false\");\n $navigation.attr('aria-hidden', \"true\");\n state = false;\n };\n\n var update = debounce(function() {\n init();\n }, 250);\n\n var init = function () {\n $burger.css(\"display\") == \"none\" ? show_navigation() : hide_navigation();\n };\n\n $burger.on('click', toggle_navigation);\n\n $window.on('resize', update);\n\n init();\n });\n})();\n","/* Need window.requestanimationframe/requestanimationframe.js */\n\n/**\n *\n * Slideshow with logo animation and navigation\n *\n */\n\n(function() {\n var $sliders = $('.js-slider');\n var processing = false;\n\n $sliders.each(function (index, slider) {\n var $slider = $(slider);\n var $container = $slider.find('.js-slider-items');\n var $skeleton = $slider.find('.js-slider-skeleton');\n var $items = $slider.find('.js-slider-item');\n var $buttons = $slider.find('.js-slider-navigation');\n var $dots = $slider.find('.js-slider-dot');\n var $motionControl = $slider.find('.c-slider__motion-control');\n var $images = $slider.find('.js-slider-image');\n var current = 0;\n var count = $items.length;\n var time = Math.floor(Date.now());\n var transition = css_time_to_milliseconds($items.first().css('transition-duration'));\n var duration = 6000;\n var height = 0;\n var pause = false;\n //var test;\n\n var updateItem = function (prev, next) {\n var $prevSlide = $items.eq(prev);\n var $nextSlide = $items.eq(next);\n var $prevImage = $images.eq(prev);\n var $nextImage = $images.eq(next);\n processing = true;\n $slider.addClass('is-transitioning');\n $prevSlide.attr('aria-hidden', \"true\");\n $prevImage.attr('aria-hidden', \"true\");\n $nextSlide.attr('aria-hidden', \"false\");\n $nextImage.attr('aria-hidden', \"false\");\n $dots.removeClass('is-active').eq(current).addClass('is-active');\n $dots.removeAttr( \"aria-current\").eq(current).attr( \"aria-current\", true );\n\n var timer = setTimeout(function() {\n $slider.removeClass('is-transitioning');\n processing = false;\n //updateHeight();\n clearTimeout(timer);\n }, transition);\n\n time = Math.floor(Date.now());\n };\n\n var updateHeight = function () {\n height = $skeleton.outerHeight();\n $items.each(function(index, item) {\n var $item = $(item);\n $item.css('height', 'auto');\n height = $item.outerHeight() > height ? $item.outerHeight() : height;\n });\n\n $container.css('height', height + 150);\n };\n\n var changeSlide = function (delta) {\n var tmp = current;\n\n if(delta < 0) {\n $slider.attr('data-reverse', true);\n } else {\n $slider.attr('data-reverse', false);\n }\n\n if(!processing) {\n current = current + delta;\n current = current < 0 ? count-1 : current;\n current = current > count-1 ? 0 : current;\n updateItem(tmp, current);\n }\n };\n\n var update = debounce(function() {\n updateHeight();\n }, 250);\n\n var init = function () {\n $dots.first().addClass('is-active');\n $dots.first().attr( \"aria-current\", true );\n updateHeight();\n\n (function loop() {\n if (pause) {\n } else {\n requestAnimationFrame(loop);\n\n var currentTime = Math.floor(Date.now());\n delta = currentTime - time;\n\n if(delta >= duration) {\n changeSlide(1);\n }\n }\n\n })();\n };\n\n $buttons.on('click', function (event) {\n var $button = $(event.currentTarget);\n var delta = parseInt($button.data('index'));\n\n changeSlide(delta);\n });\n\n $dots.on('click', function (event) {\n var $dot = $(event.currentTarget);\n if(!$dot.hasClass('is-active')) {\n var index = parseInt($dot.data('index'));\n var delta = index - current;\n\n changeSlide(delta);\n }\n });\n\n $motionControl.on('click', function (event) {\n if(pause) {\n pause = false;\n $motionControl.html('Pause');\n\n (function loop() {\n if (pause) {\n } else {\n requestAnimationFrame(loop);\n\n var currentTime = Math.floor(Date.now());\n delta = currentTime - time;\n\n if(delta >= duration) {\n changeSlide(1);\n }\n }\n\n })();\n }else {\n pause = true;\n $motionControl.html('Play')\n }\n });\n\n $(window).on('resize', update);\n\n init();\n });\n})();\n","/**\n *\n * Conditionnal forms display\n *\n */\n\n(function () {\n var $containers = $('.js-form');\n var $funnel = false;\n var $funnel_select = false;\n var $funnel_anppi = false;\n var $funnel_anppi_select = false;\n var $funnel_ampps = false;\n var $funnel_ampps_select = false;\n\n var hide = function ($container) {\n $container.attr('aria-hidden', \"true\");\n $container.hide();\n }\n\n var show = function ($container) {\n $container.attr('aria-hidden', \"false\");\n $container.show();\n }\n\n var hideAll = function () {\n $containers.each(function (index, container) {\n var $container = $(container);\n\n if(!$container.attr('data-form-funnel')) {\n hide($container);\n }\n });\n }\n\n var hideANPPI = function () {\n $containers.each(function (index, container) {\n var $container = $(container);\n\n if(!$container.attr('data-form-funnel') && !$container.attr('data-form-funnel-anppi')) {\n hide($container);\n }\n });\n }\n var hideAMPPS = function () {\n $containers.each(function (index, container) {\n var $container = $(container);\n\n if(!$container.attr('data-form-funnel') && !$container.attr('data-form-funnel-ampps')) {\n hide($container);\n }\n });\n }\n\n $containers.on('submit', function () {\n $(this).find('button[type=\"submit\"]').prop('disabled', true);\n });\n\n $containers.each(function (index, container) {\n var $container = $(container);\n var $form = $container.find('form');\n var $submit = $form.find('.js-form-submit');\n\n if($container.attr('data-form-funnel')) {\n $funnel = $container;\n $funnel_select = $form.find('select');\n $submit.remove();\n show($container);\n\n $form.on('change', function (event) {\n var value = $funnel_select.val();\n hideAll();\n show($('#form-' + value));\n });\n\n } else if($container.attr('data-form-funnel-anppi')) {\n $funnel_anppi = $container;\n $funnel_anppi_select = $form.find('select');\n $submit.remove();\n\n $form.on('change', function (event) {\n var value = $funnel_anppi_select.val();\n hideANPPI();\n show($('#form-' + value));\n });\n\n } else if($container.attr('data-form-funnel-ampps')) {\n $funnel_ampps = $container;\n $funnel_ampps_select = $form.find('select');\n $submit.remove();\n\n $form.on('change', function (event) {\n var value = $funnel_ampps_select.val();\n hideAMPPS();\n show($('#form-' + value));\n });\n\n } else {\n $container.find('.js-form-remove').remove();\n hide($container);\n }\n\n });\n\n $('.js-toggler').each(function() {\n var $toggler = $(this);\n var $to_toggl = $($toggler.data('toggl-element'));\n\n $toggler.on('change', function() {\n if (this.tagName == 'SELECT') {\n var $input = $(this);\n var value = $input.val();\n\n if (typeof(value) == 'string' && value.toLowerCase() == 'autre') {\n $to_toggl.show().find('input, select').prop('disabled', false);\n }\n else {\n $to_toggl.hide().find('input, select').prop('disabled', true);\n }\n }\n else {\n var input_name = $(this).attr('name');\n var $input = $('input[name=\"' + input_name + '\"]').filter(':checked');\n var value = $input.val();\n\n $to_toggl.each(function() {\n var $this = $(this);\n var invert = $this.hasClass('js-toggl-invert');\n if (invert) {\n if ($.inArray(value, ['1']) !== -1) {\n $this.hide().find('input, select').prop('disabled', true);\n }\n else {\n $this.show().find('input, select').prop('disabled', false);\n }\n }\n else {\n if ($.inArray(value, ['1', 'oui']) !== -1) {\n $this.show().find('input, select').prop('disabled', false);\n }\n else {\n $this.hide().find('input, select').prop('disabled', true);\n }\n }\n });\n }\n }).trigger('change');\n });\n\n if($funnel && $funnel.attr('data-form-active')) {\n\n if($funnel_anppi && $funnel_anppi.attr('data-form-anppi-active')) {\n\n $funnel_select.val($funnel_anppi.attr('data-form-active'));\n $funnel_anppi_select.val($funnel_anppi.attr('data-form-anppi-active'));\n $funnel_anppi_select.closest('form').trigger('change');\n\n } else {\n\n $funnel_select.val($funnel.attr('data-form-active'));\n $funnel_select.closest('form').trigger('change');\n\n }\n\n }\n\n})();\n","/**\n *\n * Conditionnal form error\n *\n */\n\n$(document).ready(function() {\n var $errors = $('.c-form__feedback--error');\n\n if ($errors.length > 0) {\n var firstErrorId = $errors.first().attr( \"id\").replace('-error','');\n var $firstElementWithError = $('#' + firstErrorId);\n\n if($firstElementWithError.prop(\"tagName\").toLowerCase() == \"fieldset\") {\n $firstElementWithError.find('input').focus();\n }else {\n $firstElementWithError.focus();\n }\n } else {\n }\n});\n","/**\n *\n * Slider with wiping animation\n *\n */\n\n (function() {\n var $wipers = $('.js-wiper');\n var processing = false;\n\n $wipers.each(function (index, wiper) {\n var $wiper = $(wiper);\n var $items = $wiper.find('.js-wiper-item');\n var $buttons = $wiper.find('.js-wiper-navigation');\n var current = 0;\n var count = $items.length;\n var duration = css_time_to_milliseconds($items.first().children().first().css('animation-duration')) - 20;\n\n var updateItem = function ($old, $new) {\n processing = true;\n $old.addClass('is-hiding');\n var timer = setTimeout(function() {\n hideItem($old);\n $old.removeClass('is-hiding');\n showItem($new);\n processing = false;\n clearTimeout(timer);\n }, duration);\n };\n\n var hideItem = function ($item) {\n $item.attr('aria-hidden', 'true');\n return $item;\n }\n\n var showItem = function ($item) {\n $item.attr('aria-hidden', 'false');\n }\n\n $buttons.on('click', function (event) {\n var tmp = current;\n var $button = $(event.currentTarget);\n var delta = parseInt($button.data('index'));\n\n if(delta < 0) {\n $wiper.attr('data-reverse', true);\n } else {\n $wiper.attr('data-reverse', false);\n }\n\n if(!processing) {\n current = current + delta;\n current = current < 0 ? count-1 : current;\n current = current > count-1 ? 0 : current;\n updateItem($items.eq(tmp), $items.eq(current));\n }\n });\n });\n})();\n","/**\n *\n * Mozaic toggle comportment\n *\n */\n\n(function() {\n\n var hideItem = function ($summary, $details) {\n $summary.attr('aria-expanded', \"false\");\n $details.attr('aria-hidden', \"true\");\n };\n\n var showItem = function ($summary, $details) {\n $summary.attr('aria-expanded', \"true\");\n $details.attr('aria-hidden', \"false\");\n };\n\n var hideItems = function ($items) {\n $items.each(function(index, item) {\n var $item = $(item);\n var $summary = $item.find('.js-mozaic-summary');\n var $details = $item.find('#' + $summary.attr('aria-controls'));\n hideItem($summary, $details);\n $item.removeClass('is-open');\n });\n };\n\n $('.js-mozaic').each(function(index, mozaic) {\n var $mozaic = $(mozaic);\n var $items = $mozaic.find('.js-mozaic-item');\n\n $items.each(function(index, item) {\n var $item = $(item);\n var $summary = $item.find('.js-mozaic-summary');\n var $details = $item.find('#' + $summary.attr('aria-controls'));\n\n $item.on('click', function(event) {\n hideItems($items);\n showItem($summary, $details);\n $item.addClass('is-open');\n });\n });\n });\n})();\n","/* Need intersection-observer/intersection-observer.js */\n/* Need countup.js/dist/countUp.js */\n\n\n/**\n *\n * Add animation to number of block component at first display in viewport\n *\n */\n\n(function() {\n\n var options = {\n useEasing: true,\n useGrouping: true,\n separator: ' ',\n decimal: ',',\n };\n\n var observer = new IntersectionObserver(function (observables) {\n var $observables = $(observables);\n\n $observables.each(function (index, observable) {\n\n var $observable = $(observable.target),\n $text = $observable.find('.js-block-number'),\n count = $observable.data('count'),\n decimal = 0;\n\n if(count.search(',') > -1) {\n var number = count.split(',');\n decimal = number[number.length-1].length;\n }\n\n count = parseFloat(count.replace(',', '.'));\n\n if(observable.intersectionRatio > 0.5 && !$observable.hasClass('is-showed')) {\n var countUp = new CountUp($text[0], 0, count, decimal, 3, options).start();\n $observable.addClass('is-showed');\n }\n\n })\n }, {\n threshold: [0.5]\n });\n\n $('.js-block').each(function(index, number) {\n var $number = $(number),\n $text = $number.find('.js-block-number');\n\n $number.data('count', $text.text());\n\n $text.html(0);\n\n observer.observe(number);\n });\n\n\n})();\n"]}