{"version":3,"sources":["webpack:///./src/business-cases/kevel-transports/cdarma@2x.jpg","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/f35d5560a3ee22c336a7ec938f6447fa.js","webpack:///./node_modules/gatsby-link/index.js","webpack:///./src/business-cases/lys-transport/offers.en.png","webpack:///./src/business-cases/nestle-purina/etapes_livraison.png","webpack:///./node_modules/gatsby-react-router-scroll/session-storage.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/c4964074130151de75bed14606dcfb0a.js","webpack:///./src/business-cases/kevel-transports/offers.en.png","webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js","webpack:///./src/business-cases/lys-transport/fretlink-process.png","webpack:///./src/business-cases/transports-caudron/caveats-speed.png","webpack:///./.cache/normalize-page-path.js","webpack:///./.cache/find-path.js","webpack:///./node_modules/gatsby-plugin-google-gtag/gatsby-browser.js","webpack:///./node_modules/react-i18next/dist/es/utils.js","webpack:///(webpack)/buildin/harmony-module.js","webpack:///./node_modules/gatsby-plugin-react-i18next/dist/plugin/wrapPageElement.js","webpack:///./node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","webpack:///./node_modules/react-i18next/dist/es/Trans.js","webpack:///./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack:///./src/business-cases/nestle-purina/expeditions.png","webpack:///./src/business-cases/lys-transport/activity-zones.png","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack:///./.cache/emitter.js","webpack:///./node_modules/mitt/dist/mitt.es.js","webpack:///./src/business-cases/transports-caudron/offers.png","webpack:///./src/business-cases/nestle-purina/carte_france_zoom_idf.png","webpack:///./node_modules/gatsby-react-router-scroll/index.js","webpack:///./node_modules/@mdx-js/react/dist/esm.js","webpack:///./src/business-cases/transports-mds/activity-zones.png","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack:///./src/business-cases/lys-transport/offers.fr.png","webpack:///./.cache/react-lifecycles-compat.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/be9ccfc8fc8d2defe70a672913cdc355.js","webpack:///./node_modules/@reach/router/es/lib/history.js","webpack:///./node_modules/gatsby-plugin-manifest/get-manifest-pathname.js","webpack:///./node_modules/react-i18next/dist/es/useTranslation.js","webpack:///./node_modules/react-i18next/dist/es/withTranslation.js","webpack:///./node_modules/react-i18next/dist/es/Translation.js","webpack:///./node_modules/react-i18next/dist/es/I18nextProvider.js","webpack:///./node_modules/react-i18next/dist/es/useSSR.js","webpack:///./node_modules/react-i18next/dist/es/withSSR.js","webpack:///./node_modules/react-i18next/dist/es/index.js","webpack:///./src/business-cases/transports-mds/offers.fr.png","webpack:///./node_modules/outdent/lib-module/index.js","webpack:///./node_modules/gatsby-plugin-mdx/context.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/5b874dc5fe25a8bb571d5423211bba5c.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack:///./.cache/page-renderer.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./src/business-cases/lys-transport/mreis@2x.jpg","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@reach/router/es/lib/utils.js","webpack:///./.cache/api-runner-browser-plugins.js","webpack:///./src/business-cases/nestle-purina/claire.jpg","webpack:///./node_modules/@mikaelkristiansson/domready/ready.js","webpack:///./.cache/register-service-worker.js","webpack:///./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack:///./src/business-cases/transports-caudron/cdarma@1x.png","webpack:///./src/business-cases/nestle-purina/renaud.jpg","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/void-elements/index.js","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","webpack:///./node_modules/invariant/browser.js","webpack:///./node_modules/react-i18next/dist/es/unescape.js","webpack:///./node_modules/react-i18next/dist/es/context.js","webpack:///./src/business-cases/kevel-transports/offers.fr.png","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./.cache/route-announcer-props.js","webpack:///./.cache/navigation.js","webpack:///./node_modules/shallow-compare/es/index.js","webpack:///./.cache/ensure-resources.js","webpack:///./.cache/production-app.js","webpack:///./src/business-cases/lys-transport/fxlebot@2x.jpg","webpack:///./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/1b2dd3e1ad4fceef6888362c450519dc.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/dbe9ad7cf2535824267263f02ebfcb0f.js","webpack:///./src/business-cases/nestle-purina/usine.jpg","webpack:///./src/business-cases/kevel-transports/mreis@2x.jpg","webpack:///./node_modules/@babel/runtime/helpers/esm/objectSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///./node_modules/i18next/dist/esm/i18next.js","webpack:///./node_modules/gatsby/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js","webpack:///./src/business-cases/nestle-purina/entrepot.jpg","webpack:///./node_modules/@reach/router/es/index.js","webpack:///./src/business-cases/transports-mds/mgrenier@2x.jpg","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///./src/business-cases/transports-mds/fretlink-process.png","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js","webpack:///./.cache/strip-prefix.js","webpack:///./node_modules/gatsby-link/parse-path.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./src/business-cases/kevel-transports/activity-zones.png","webpack:///./.cache/prefetch.js","webpack:///./.cache/loader.js","webpack:///./node_modules/gatsby-plugin-react-i18next/dist/types.js","webpack:///./src/business-cases/transports-caudron/fleet-description.png","webpack:///./node_modules/gatsby-plugin-mdx/loaders/mdx-scopes.js","webpack:///./node_modules/gatsby-plugin-mdx/wrap-root-element.js","webpack:///./node_modules/gatsby-plugin-mdx/gatsby-browser.js","webpack:///./node_modules/gatsby-plugin-mdx/loaders/mdx-components.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/bc630d472957c0cea622bd23225ae6ee.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-container.js","webpack:///./src/business-cases/transports-caudron/caveats-planning.png","webpack:///./node_modules/gatsby-plugin-react-i18next/gatsby-browser.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/652fb965204eb7f3a8817ca4f1efceec.js","webpack:///./.cache/public-page-renderer.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/gatsby-plugin-manifest/gatsby-browser.js","webpack:///./.cache/create-react-context.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack:///./src/business-cases/transports-caudron/reporting.png","webpack:///./src/business-cases/transports-caudron/mreis@1x.png","webpack:///./node_modules/@babel/runtime/helpers/extends.js","webpack:///./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack:///./node_modules/gatsby-plugin-react-i18next/dist/i18nextContext.js","webpack:///./src/business-cases/transports-caudron/activity-zones.png","webpack:///./src/business-cases/nestle-purina/reporting.png","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/browser-lang/dist/index.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./.cache/api-runner-browser.js","webpack:///./src/business-cases/transports-caudron/caveats-profits.png","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/1c7ee8291bc94a13e44ebab0b885c412.js","webpack:///./src/business-cases/nestle-purina/priorisation_des_lignes.png","webpack:///./src/business-cases/transports-mds/offers.en.png"],"names":["module","exports","carteDeFrance","renaud","claire","expeditions","fluxDeTransport","factory","etapesLivraison","depot","reporting","React","_interopRequireDefault","__esModule","withPrefix","withAssetPrefix","path","getGlobalPathPrefix","navigateTo","replace","push","navigate","default","_objectWithoutPropertiesLoose2","_assertThisInitialized2","_inheritsLoose2","_extends2","_propTypes","_react","_router","_utils","_parsePath","parsePath","isAbsolutePath","startsWith","prefix","_ref","_prefix","getGlobalBasePrefix","isLocalLink","base","endsWith","slice","rewriteLinkPath","relativeTo","current","resolve","absolutify","NavLinkPropTypes","activeClassName","string","activeStyle","object","partiallyActive","bool","GatsbyLinkLocationWrapper","props","createElement","Location","_ref2","location","GatsbyLink","_location","_React$Component","_this","call","this","defaultGetProps","_ref3","isPartiallyCurrent","isCurrent","className","filter","Boolean","join","style","IOSupported","window","IntersectionObserver","state","handleRef","bind","_proto","prototype","_prefetch","currentPath","pathname","rewrittenPath","to","newPathName","___loader","enqueue","componentDidUpdate","prevProps","prevState","componentDidMount","componentWillUnmount","io","_this$io","instance","el","unobserve","disconnect","ref","cb","_this2","innerRef","hasOwnProperty","entries","forEach","entry","target","isIntersecting","intersectionRatio","observe","render","_this3","_this$props","_this$props$getProps","getProps","_onClick","onClick","_onMouseEnter","onMouseEnter","rest","prefixedTo","Link","e","hovering","button","defaultPrevented","metaKey","altKey","ctrlKey","shiftKey","preventDefault","shouldReplace","encodeURI","___navigate","href","Component","propTypes","func","isRequired","showDeprecationWarning","functionName","altFunctionName","version","console","warn","_default","forwardRef","options","___push","___replace","SessionStorage","read","key","stateKey","getStateKey","value","sessionStorage","getItem","JSON","parse","save","storedValue","stringify","setItem","stateKeyBase","mgrenier","fretlinkProcess","activityZones","offers","_typeof","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","desc","set","undefined","charAt","length","pathCache","Map","matchPaths","trimPathname","rawPathname","decodeURIComponent","stripPrefix","__BASE_PATH__","split","URL","setMatchPaths","findMatchPath","trimmedPathname","cleanPath","pickPaths","map","matchPath","originalPath","pick","normalizePagePath","route","grabMatchParams","params","findPath","foundPath","onRouteUpdate","gtag","excludeGtagPaths","some","rx","test","sendPageView","pagePath","search","hash","page_path","requestAnimationFrame","setTimeout","_console","_len","arguments","args","Array","_key","concat","apply","alreadyWarned","warnOnce","_len2","_key2","Date","loadNamespaces","i18n","ns","isInitialized","on","initialized","off","oldI18nextHasLoadedNamespace","lng","languages","fallbackLng","lastLng","toLowerCase","loadNotPending","l","n","loadState","services","backendConnector","bindI18n","indexOf","backend","isLanguageChangingTo","hasResourceBundle","resources","partialBundledLanguages","hasLoadedNamespace","isNewerI18next","ignoreJSONStructure","precheck","i18nInstance","getDisplayName","displayName","name","originalModule","webpackPolyfill","create","children","enumerable","i","require","wrapPageElement","_gatsby","_browserLang","_types","_i18next","_reactI18next","_i18nextContext","_data$localeJsonNodeN","element","_ref2$i18nextOptions","i18nextOptions","_ref2$redirect","redirect","_ref2$generateDefault","generateDefaultLanguagePage","siteUrl","_ref2$localeJsonNodeN","localeJsonNodeName","fallbackLanguage","pathPrefix","data","pageContext","_pageContext$i18n","routed","language","defaultLanguage","detected","localStorage","LANGUAGE_KEY","fallback","includes","queryParams","newUrl","localeNodes","edges","namespaces","node","defaultNS","find","fallbackNS","reduce","res","_ref4","parsedData","createInstance","init","react","useSuspense","changeLanguage","context","I18nextProvider","I18nextContext","Provider","withI18next","r","type","voidElement","attrs","match","s","comment","a","RegExp","c","exec","trim","o","lastIndex","substring","t","content","components","m","u","f","h","p","d","v","x","g","_excluded","_excluded2","ownKeys","enumerableOnly","keys","getOwnPropertySymbols","symbols","sym","_objectSpread","source","getOwnPropertyDescriptors","defineProperties","hasChildren","checkLength","getChildren","getAsArray","isArray","renderNodes","targetString","i18nOptions","combinedTOpts","shouldUnescape","keepArray","transKeepBasicHtmlNodesFor","emptyChildrenButNeedsHandling","getData","childs","child","assign","ast","opts","renderInner","rootReactNode","mappedChildren","mapAST","toString","every","hasValidReactChildren","pushTranslatedJSX","inner","mem","isVoid","dummy","reactNode","astNode","reactNodes","newTarget","translationContent","interpolator","interpolate","tmp","parseInt","isElement","isValidTranslationWithChildren","isEmptyTransWithHTML","isKnownComponent","_inner","Number","isNaN","parseFloat","transSupportBasicHtmlNodes","_inner3","_inner4","wrapTextNodes","transWrapTextNodes","_content","unescape","Trans","count","parent","i18nKey","_ref$tOptions","tOptions","values","defaults","i18nFromProps","tFromProps","additionalProps","i18nFromContext","defaultNSFromContext","k","reactI18nextOptions","defaultValue","nodesToString","stringNode","childrenArray","childIndex","childPropsCount","shouldKeepChild","childChildren","i18nIsDynamicList","format","clone","transEmptyNodeValue","hashTransKey","interpolationOverride","interpolation","suffix","useAsParent","defaultTransParent","useScrollRestoration","identifier","useLocation","useContext","_scrollHandler","ScrollContext","useRef","useLayoutEffect","position","scrollTo","onScroll","scrollTop","input","hint","prim","Symbol","toPrimitive","TypeError","String","emitter","all","handler","splice","emit","evt","mitt","ScrollContainer","ScrollHandler","_scrollContainer","_useScrollRestoration","_defineProperty","configurable","writable","_extends","_objectSpread2","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","MDXContext","createContext","withMDXComponents","allComponents","useMDXComponents","contextComponents","MDXProvider","DEFAULTS","inlineCode","wrapper","Fragment","MDXCreateElement","propComponents","mdxType","originalType","parentName","etc","argsLength","createElementArgArray","newProps","polyfill","cdarma","mreis","transportOffers","getLocation","_source$location","origin","protocol","host","hostname","port","canUseDOM","decodeURI","history","createHistory","listeners","transitioning","resolveTransition","_onTransitionComplete","listen","listener","popstateListener","action","addEventListener","removeEventListener","fn","_ref$replace","go","now","replaceState","pushState","transition","Promise","createMemorySource","initialPath","searchIndex","initialLocation","substr","index","stack","states","_","uri","_uri$split","_uri$split$","_uri$split2","_uri$split2$","newIndex","document","globalHistory","localizedManifests","localizedManifest","app","start_url","lang","ignore","useTranslation","reportNamespaces","notReadyT","retNotReady","ready","wait","keyPrefix","addUsedNamespaces","initializedStoreOnce","getT","getFixedT","nsMode","_useState","_useState2","setT","joinedNS","previousJoinedNS","isMounted","bindI18nStore","boundReset","store","isInitial","ret","withTranslation","WrappedComponent","I18nextWithTranslation","forwardedRef","_useTranslation","_useTranslation2","passDownProps","tReady","withRef","Translation","useSSR","initialI18nStore","initialLanguage","isClone","resourceStore","lngResources","initializedLanguageOnce","withSSR","I18nextWithSSR","getInitialProps","date","time","number","plural","selectOrdinal","noop","_i","createWeakMap","add","delete","hop","prop","extend","reLeadingNewline","reTrailingNewline","reStartsWithNewlineOrIsEmpty","reDetectIndentation","reOnlyWhitespaceWithAtLeastOneNewline","_outdentArray","strings","firstInterpolatedValueSetsIndentationLevel","indentationLevel","reMatchIndent","newline","trimLeadingNewline","trimTrailingNewline","normalizeNewlines","concatStringsAndValues","isTemplateStringsArray","defaultOutdent","arrayAutoIndentCache","arrayFirstInterpSetsIndentCache","outdent","stringsOrOptions","renderedArray","rendered","str","GatsbyMDXScopeContext","useMDXScope","scope","contextScope","MDXScopeProvider","__mdxScope","_interopRequireWildcard","_sessionStorage","_stateStorage","scrollListener","scrollY","windowScroll","shouldUpdateScroll","scrollToHash","getElementById","scrollIntoView","prevRouterProps","routerProps","scrollPosition","_this$props$location","_this$props$location2","PageRenderer","_inheritsLoose","pageResources","json","__params","pathContext","replacementElement","apiRunner","loader","publicLoader","pageElement","component","page","result","pop","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","arr","_arrayLikeToArray","len","arr2","_toConsumableArray","iter","iterator","from","minLen","constructor","routes","default_","uriPathname","uriSegments","segmentize","isRootUri","ranked","rankRoutes","missed","routeSegments","max","Math","routeSegment","uriSegment","isSplat","dynamicMatch","paramRe","reservedNames","_to$split","toPathname","toQuery","basePathname","toSegments","baseSegments","addQuery","allSegments","segments","segment","insertParams","_path$split","pathBase","_path$split$","query","constructedPath","_params$location","_params$location$sear","searchSplit","validateRedirect","isDynamic","sort","rankRoute","score","isRootSegment","SEGMENT_POINTS","b","q","shallowCompare","obj1","obj2","obj1Keys","plugin","ie10","navigator","appVersion","fns","doc","hack","documentElement","doScroll","loaded","readyState","shift","definition","error","serviceWorker","register","then","reg","installingWorker","installing","log","controller","___swUpdated","___failedResources","reload","catch","component---src-components-business-case-layout-js","component---src-pages-404-js","component---src-pages-about-us-js","component---src-pages-business-cases-js","component---src-pages-carriers-js","component---src-pages-contact-js","component---src-pages-green-roads-js","component---src-pages-index-js","component---src-pages-login-js","component---src-pages-lost-password-js","component---src-pages-shippers-js","component---src-pages-sign-up-carrier-js","component---src-pages-sign-up-index-js","component---src-pages-sign-up-shipper-js","component---src-pages-terms-js","component---src-pages-transport-operating-system-js","self","ReferenceError","objectWithoutPropertiesLoose","condition","Error","argIndex","framesToPop","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","defaultOptions","text","I18nContext","setDefaults","getDefaults","ReportNamespaces","usedNamespaces","setI18n","getI18n","initReactI18next","composeInitialProps","ForComponent","ctx","i18nInitialProps","componentsInitialProps","getUsedNamespaces","getResourceBundle","_setPrototypeOf","setPrototypeOf","__proto__","RouteAnnouncerProps","id","top","width","height","padding","overflow","clip","whiteSpace","border","redirectMap","redirectIgnoreCaseMap","maybeRedirect","toPath","redirects","ignoreCase","fromPath","onPreRouteUpdate","prevLocation","timeoutId","loadPage","status","PageResourceStatus","clearTimeout","webpackCompilationHash","___webpackCompilationHash","postMessage","gatsbyApi","reachNavigate","results","getSavedScrollPosition","oldPathname","RouteAnnouncer","announcementRef","createRef","nextProps","pageName","title","pageHeadings","querySelectorAll","textContent","newAnnouncement","innerText","compareLocationProps","nextLocation","_prevLocation$state","_nextLocation$state","RouteUpdates","_React$Component2","_proto2","shouldComponentUpdate","shallowDiffers","EnsureResources","loadPageSync","getDerivedStateFromProps","loadResources","rawPath","setState","nextState","ProdLoader","asyncRequires","setLoader","setApiRunner","___emitter","apiRunnerAsync","RouteHandler","BaseContext","baseuri","basepath","DataContext","GatsbyRoot","staticQueryResults","getStaticQueryResults","StaticQueryContext","LocationHandler","Consumer","Router","browserLoc","SiteRoot","App","renderer","ReactDOM","hydrate","domReady","subClass","superClass","toPropertyKey","_defineProperties","descriptor","Constructor","protoProps","staticProps","zoneActivites","prefetchPathname","StaticQueryDataRenderer","staticQueryData","finalData","StaticQuery","useStaticQuery","_context$query","graphql","caveatsSpeed","fleetDescription","caveatsPlanning","caveatsProfits","_classCallCheck","_createClass","_assertThisInitialized","_possibleConstructorReturn","_getPrototypeOf","getPrototypeOf","_inherits","consoleLogger","output","baseLogger","Logger","concreteLogger","logger","debug","forward","_len3","_key3","_len4","_key4","lvl","debugOnly","moduleName","EventEmitter","observers","events","event","cloned","observer","_cloned","defer","rej","promise","reject","makeString","getLastOfPath","Empty","cleanKey","canNotTraverseDeeper","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","defaultData","deepExtend","overwrite","regexEscape","_entityMap","isIE10","userAgent","_EventEmitter","ResourceStore","keySeparator","silent","addNamespaces","addResource","deep","pack","removeNamespaces","getResource","compatibilityAPI","postProcessor","processors","addPostProcessor","handle","translator","processor","process","checkedLoadedFor","Translator","resolved","nsSeparator","nestingRegexp","parts","lastKey","overloadTranslationOptionHandler","_this$extractFromKey","extractFromKey","namespace","appendNamespaceToCIMode","resUsedKey","usedKey","resExactUsedKey","exactUsedKey","resType","noObject","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","copy","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","isValidLookup","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","saveMissingTo","toResolveHierarchy","send","fallbackValue","missingKeyHandler","saveMissing","saveMissingPlurals","getSuffixes","appendNamespaceToMissingKey","parseMissingKeyHandler","usedLng","usedNS","skipInterpolation","nestBef","skipOnVariables","nb","defaultVariables","na","nest","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","_this4","extracted","needsContextHandling","codes","utils","code","pluralSuffix","possibleKey","finalKey","finalKeys","addLookupKeys","contextSeparator","returnNull","returnEmptyString","option","capitalize","toUpperCase","LanguageUtil","whitelist","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","part","cleanCode","deprecate","isSupportedCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","createRules","rules","numbers","plurals","PluralResolver","rule","getRule","idx","noAbs","abs","simplifyPluralSuffix","returnSuffix","prepend","compatibilityJSON","Interpolator","escapeValue","iOpts","escape","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","val","handleFormat","missingInterpolationHandler","regex","safeValue","todo","temp","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","formatters","doReduce","elem","Connector","queue","callback","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","errors","err","addResourceBundle","_getLastOfPath2","what","remove","done","fcName","tried","queueLoad","loadOne","prepareLoading","_this5","isUpdate","initImmediate","nonExplicitWhitelist","preload","pluralSeparator","tDescription","_format","transformOptions","i18next","I18n","modules","external","createClassOnDemand","ClassOrObject","lu","languageDetector","detection","storeApi","_this2$store","storeApiChained","_this2$store2","deferred","finish","usedCallback","append","setLng","getBestMatchFromCodes","cacheUserLanguage","async","detect","fixedT","_this$translator","_this$translator2","exists","_this6","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","membersToCopy","createNamedContext","Ctx","LocationContext","LocationProvider","_temp","getContext","refs","unlisten","_props$history","componentDidCatch","info","isRedirect","_navigate","unmounted","defaultProps","ServerLocation","url","baseContext","locationContext","RouterImpl","_React$PureComponent","_props","_navigate2","primary","_props$component","domProps","Children","toArray","array","createRoute","cloneElement","FocusWrapper","FocusHandler","wrapperProps","PureComponent","FocusContext","requestFocus","FocusHandlerImpl","initialRender","focusHandlerCount","_temp2","shouldFocus","focus","myURIChanged","navigatedUpToMe","contains","activeElement","_props2","_props2$component","Comp","outline","tabIndex","C","_ref5","_ref6","_props$getProps","anchorProps","encodedHref","shouldNavigate","_location$state","restState","RedirectRequest","redirectTo","RedirectImpl","_React$Component3","_props3","_props3$replace","noThrow","resolvedTo","_props4","Redirect","_ref7","Match","_ref8","_ref9","_ref10","resolvedPath","useNavigate","useParams","useMatch","stripSlashes","elementPath","arrayLikeToArray","raw","hashIndex","supportedPrefetchStrategy","feature","fakeLink","relList","supports","support","link","setAttribute","onload","onerror","getElementsByTagName","getElementsByName","parentNode","appendChild","req","XMLHttpRequest","open","preFetched","prefetch","Success","preferDefault","createPageDataUrl","doFetch","method","onreadystatechange","toPageResources","pageData","componentChunkName","staticQueryHashes","BaseLoader","loadComponent","inFlightNetworkRequests","pageDb","inFlightDb","staticQueryDb","pageDataDb","prefetchTriggered","Set","prefetchCompleted","memoizedGet","inFlightPromise","response","prefetchDisabled","fetchPageDataJson","loadObj","retries","responseText","jsonPayload","payload","notFound","loadPageDataJson","loadAppData","allData","finalResult","componentChunkPromise","createdAt","staticQueryBatchPromise","staticQueryHash","staticQueryResultsMap","shouldPrefetch","doesConnectionSupportPrefetch","connection","effectiveType","saveData","realPath","doPrefetch","pageDataUrl","prefetchHelper","crossOrigin","as","getResourceURLsForPathname","createComponentUrls","isPageNotFound","appData","___chunkMapping","chunk","__PATH_PREFIX__","_BaseLoader","chunkName","componentUrls","_loader","getResourcesForPathname","getResourcesForPathnameSync","scope_0","scope_1","scope_2","scope_3","scope_4","scope_5","scope_6","scope_7","scope_8","componentsAndGuards","componentFromGuards","guard","mdxPlugins","guards","componentName","acc","MDXConsumer","componentsFromContext","scopeContexts","wrapRootElement","plugins","fxlebot","_reactDom","scrollKey","ScrollContainerImplementation","findDOMNode","_s","_e","_x","_r","_arr","_n","_d","next","_toPropertyKey","arg","ProdPageRenderer","InternalPageRenderer","getBrowserLang","browserLanguage","userLanguage","systemLanguage","normalizeCode","api","defaultReturn","argTransform","previous"],"mappings":"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","file":"app-37d604f4809339915022.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/cdarma@2x-400dfd9e14af0f5f017a8d8d483d55fe.jpg\";","import carteDeFrance from \"../../../../src/business-cases/nestle-purina/carte_france_zoom_idf.png\";\nimport renaud from \"../../../../src/business-cases/nestle-purina/renaud.jpg\";\nimport claire from \"../../../../src/business-cases/nestle-purina/claire.jpg\";\nimport expeditions from \"../../../../src/business-cases/nestle-purina/expeditions.png\";\nimport fluxDeTransport from \"../../../../src/business-cases/nestle-purina/priorisation_des_lignes.png\";\nimport factory from \"../../../../src/business-cases/nestle-purina/usine.jpg\";\nimport etapesLivraison from \"../../../../src/business-cases/nestle-purina/etapes_livraison.png\";\nimport depot from \"../../../../src/business-cases/nestle-purina/entrepot.jpg\";\nimport reporting from \"../../../../src/business-cases/nestle-purina/reporting.png\";\nimport * as React from 'react';\nexport default {\n carteDeFrance,\n renaud,\n claire,\n expeditions,\n fluxDeTransport,\n factory,\n etapesLivraison,\n depot,\n reporting,\n React\n};","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.withPrefix = withPrefix;\nexports.withAssetPrefix = withAssetPrefix;\nexports.navigateTo = exports.replace = exports.push = exports.navigate = exports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router = require(\"@reach/router\");\n\nvar _utils = require(\"@reach/router/lib/utils\");\n\nvar _parsePath = require(\"./parse-path\");\n\nexports.parsePath = _parsePath.parsePath;\n\nvar isAbsolutePath = function isAbsolutePath(path) {\n return path === null || path === void 0 ? void 0 : path.startsWith(\"/\");\n};\n\nfunction withPrefix(path, prefix) {\n var _ref, _prefix;\n\n if (prefix === void 0) {\n prefix = getGlobalBasePrefix();\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n if (path.startsWith(\"./\") || path.startsWith(\"../\")) {\n return path;\n }\n\n var base = (_ref = (_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : getGlobalPathPrefix()) !== null && _ref !== void 0 ? _ref : \"/\";\n return \"\" + ((base === null || base === void 0 ? void 0 : base.endsWith(\"/\")) ? base.slice(0, -1) : base) + (path.startsWith(\"/\") ? path : \"/\" + path);\n} // These global values are wrapped in typeof clauses to ensure the values exist.\n// This is especially problematic in unit testing of this component.\n\n\nvar getGlobalPathPrefix = function getGlobalPathPrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __PATH_PREFIX__ !== \"undefined\" ? __PATH_PREFIX__ : undefined : __PATH_PREFIX__;\n};\n\nvar getGlobalBasePrefix = function getGlobalBasePrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __BASE_PATH__ !== \"undefined\" ? __BASE_PATH__ : undefined : __BASE_PATH__;\n};\n\nvar isLocalLink = function isLocalLink(path) {\n return path && !path.startsWith(\"http://\") && !path.startsWith(\"https://\") && !path.startsWith(\"//\");\n};\n\nfunction withAssetPrefix(path) {\n return withPrefix(path, getGlobalPathPrefix());\n}\n\nfunction absolutify(path, current) {\n // If it's already absolute, return as-is\n if (isAbsolutePath(path)) {\n return path;\n }\n\n return (0, _utils.resolve)(path, current);\n}\n\nvar rewriteLinkPath = function rewriteLinkPath(path, relativeTo) {\n if (typeof path === \"number\") {\n return path;\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n return isAbsolutePath(path) ? withPrefix(path) : absolutify(path, relativeTo);\n};\n\nvar NavLinkPropTypes = {\n activeClassName: _propTypes.default.string,\n activeStyle: _propTypes.default.object,\n partiallyActive: _propTypes.default.bool\n}; // Set up IntersectionObserver\n\nvar createIntersectionObserver = function createIntersectionObserver(el, cb) {\n var io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (el === entry.target) {\n // Check if element is within viewport, remove listener, destroy observer, and run link callback.\n // MSEdge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(el);\n io.disconnect();\n cb();\n }\n }\n });\n }); // Add element to the observer\n\n io.observe(el);\n return {\n instance: io,\n el: el\n };\n};\n\nfunction GatsbyLinkLocationWrapper(props) {\n return /*#__PURE__*/_react.default.createElement(_router.Location, null, function (_ref2) {\n var location = _ref2.location;\n return /*#__PURE__*/_react.default.createElement(GatsbyLink, (0, _extends2.default)({}, props, {\n _location: location\n }));\n });\n}\n\nvar GatsbyLink = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(GatsbyLink, _React$Component);\n\n function GatsbyLink(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // Default to no support for IntersectionObserver\n\n _this.defaultGetProps = function (_ref3) {\n var isPartiallyCurrent = _ref3.isPartiallyCurrent,\n isCurrent = _ref3.isCurrent;\n\n if (_this.props.partiallyActive ? isPartiallyCurrent : isCurrent) {\n return {\n className: [_this.props.className, _this.props.activeClassName].filter(Boolean).join(\" \"),\n style: (0, _extends2.default)({}, _this.props.style, _this.props.activeStyle)\n };\n }\n\n return null;\n };\n\n var IOSupported = false;\n\n if (typeof window !== \"undefined\" && window.IntersectionObserver) {\n IOSupported = true;\n }\n\n _this.state = {\n IOSupported: IOSupported\n };\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n var _proto = GatsbyLink.prototype;\n\n _proto._prefetch = function _prefetch() {\n var currentPath = window.location.pathname; // reach router should have the correct state\n\n if (this.props._location && this.props._location.pathname) {\n currentPath = this.props._location.pathname;\n }\n\n var rewrittenPath = rewriteLinkPath(this.props.to, currentPath);\n var newPathName = (0, _parsePath.parsePath)(rewrittenPath).pathname; // Prefech is used to speed up next navigations. When you use it on the current navigation,\n // there could be a race-condition where Chrome uses the stale data instead of waiting for the network to complete\n\n if (currentPath !== newPathName) {\n ___loader.enqueue(newPathName);\n }\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n // Preserve non IO functionality if no support\n if (this.props.to !== prevProps.to && !this.state.IOSupported) {\n this._prefetch();\n }\n };\n\n _proto.componentDidMount = function componentDidMount() {\n // Preserve non IO functionality if no support\n if (!this.state.IOSupported) {\n this._prefetch();\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (!this.io) {\n return;\n }\n\n var _this$io = this.io,\n instance = _this$io.instance,\n el = _this$io.el;\n instance.unobserve(el);\n instance.disconnect();\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.props.innerRef && this.props.innerRef.hasOwnProperty(\"current\")) {\n this.props.innerRef.current = ref;\n } else if (this.props.innerRef) {\n this.props.innerRef(ref);\n }\n\n if (this.state.IOSupported && ref) {\n // If IO supported and element reference found, setup Observer functionality\n this.io = createIntersectionObserver(ref, function () {\n _this2._prefetch();\n });\n }\n };\n\n _proto.render = function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n to = _this$props.to,\n _this$props$getProps = _this$props.getProps,\n getProps = _this$props$getProps === void 0 ? this.defaultGetProps : _this$props$getProps,\n _onClick = _this$props.onClick,\n _onMouseEnter = _this$props.onMouseEnter,\n $activeClassName = _this$props.activeClassName,\n $activeStyle = _this$props.activeStyle,\n $innerRef = _this$props.innerRef,\n partiallyActive = _this$props.partiallyActive,\n state = _this$props.state,\n replace = _this$props.replace,\n _location = _this$props._location,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, [\"to\", \"getProps\", \"onClick\", \"onMouseEnter\", \"activeClassName\", \"activeStyle\", \"innerRef\", \"partiallyActive\", \"state\", \"replace\", \"_location\"]);\n\n if (process.env.NODE_ENV !== \"production\" && !isLocalLink(to)) {\n console.warn(\"External link \" + to + \" was detected in a Link component. Use the Link component only for internal links. See: https://gatsby.dev/internal-links\");\n }\n\n var prefixedTo = rewriteLinkPath(to, _location.pathname);\n\n if (!isLocalLink(prefixedTo)) {\n return /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({\n href: prefixedTo\n }, rest));\n }\n\n return /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({\n to: prefixedTo,\n state: state,\n getProps: getProps,\n innerRef: this.handleRef,\n onMouseEnter: function onMouseEnter(e) {\n if (_onMouseEnter) {\n _onMouseEnter(e);\n }\n\n ___loader.hovering((0, _parsePath.parsePath)(prefixedTo).pathname);\n },\n onClick: function onClick(e) {\n if (_onClick) {\n _onClick(e);\n }\n\n if (e.button === 0 && // ignore right clicks\n !_this3.props.target && // let browser handle \"target=_blank\"\n !e.defaultPrevented && // onClick prevented default\n !e.metaKey && // ignore clicks with modifier keys...\n !e.altKey && !e.ctrlKey && !e.shiftKey) {\n e.preventDefault();\n var shouldReplace = replace;\n\n var isCurrent = encodeURI(prefixedTo) === _location.pathname;\n\n if (typeof replace !== \"boolean\" && isCurrent) {\n shouldReplace = true;\n } // Make sure the necessary scripts and data are\n // loaded before continuing.\n\n\n window.___navigate(prefixedTo, {\n state: state,\n replace: shouldReplace\n });\n }\n\n return true;\n }\n }, rest));\n };\n\n return GatsbyLink;\n}(_react.default.Component);\n\nGatsbyLink.propTypes = (0, _extends2.default)({}, NavLinkPropTypes, {\n onClick: _propTypes.default.func,\n to: _propTypes.default.string.isRequired,\n replace: _propTypes.default.bool,\n state: _propTypes.default.object\n});\n\nvar showDeprecationWarning = function showDeprecationWarning(functionName, altFunctionName, version) {\n return console.warn(\"The \\\"\" + functionName + \"\\\" method is now deprecated and will be removed in Gatsby v\" + version + \". Please use \\\"\" + altFunctionName + \"\\\" instead.\");\n};\n\nvar _default = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n return /*#__PURE__*/_react.default.createElement(GatsbyLinkLocationWrapper, (0, _extends2.default)({\n innerRef: ref\n }, props));\n});\n\nexports.default = _default;\n\nvar navigate = function navigate(to, options) {\n window.___navigate(rewriteLinkPath(to, window.location.pathname), options);\n};\n\nexports.navigate = navigate;\n\nvar push = function push(to) {\n showDeprecationWarning(\"push\", \"navigate\", 3);\n\n window.___push(rewriteLinkPath(to, window.location.pathname));\n};\n\nexports.push = push;\n\nvar replace = function replace(to) {\n showDeprecationWarning(\"replace\", \"navigate\", 3);\n\n window.___replace(rewriteLinkPath(to, window.location.pathname));\n}; // TODO: Remove navigateTo for Gatsby v3\n\n\nexports.replace = replace;\n\nvar navigateTo = function navigateTo(to) {\n showDeprecationWarning(\"navigateTo\", \"navigate\", 3);\n return push(to);\n};\n\nexports.navigateTo = navigateTo;","module.exports = __webpack_public_path__ + \"static/offers.en-37034de7ebd2b689b537c5f8f8e998c5.png\";","module.exports = __webpack_public_path__ + \"static/etapes_livraison-4a161d31c62fa49fa851dd62100fb1bb.png\";","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\n\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n\n var _proto = SessionStorage.prototype;\n\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n\n return 0;\n }\n };\n\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n\n return SessionStorage;\n}();\n\nexports.SessionStorage = SessionStorage;","import mgrenier from \"../../../../src/business-cases/transports-mds/mgrenier@2x.jpg\";\nimport fretlinkProcess from \"../../../../src/business-cases/transports-mds/fretlink-process.png\";\nimport activityZones from \"../../../../src/business-cases/transports-mds/activity-zones.png\";\nimport offers from \"../../../../src/business-cases/transports-mds/offers.fr.png\";\nimport * as React from 'react';\nexport default {\n mgrenier,\n fretlinkProcess,\n activityZones,\n offers,\n React\n};","module.exports = __webpack_public_path__ + \"static/offers.en-05fc8e453e3c21b28f32923d2480fa6b.png\";","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interopRequireWildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) {\n return obj;\n }\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n var cache = _getRequireWildcardCache(nodeInterop);\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n newObj[\"default\"] = obj;\n if (cache) {\n cache.set(obj, newObj);\n }\n return newObj;\n}\nmodule.exports = _interopRequireWildcard, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = __webpack_public_path__ + \"static/fretlink-process-342fd1fc83ee205a115ff6cebeae59e4.png\";","module.exports = __webpack_public_path__ + \"static/caveats-speed-73814654d08f5225ca01171950024021.png\";","export default path => {\n if (path === undefined) {\n return path\n }\n if (path === `/`) {\n return `/`\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1)\n }\n return path\n}\n","import { pick } from \"@reach/router/lib/utils\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n const pathname = decodeURIComponent(rawPathname)\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(pathname, __BASE_PATH__)\n // Remove any hashfragment\n .split(`#`)[0]\n // Remove search query\n .split(`?`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","\"use strict\";\n\nexports.onRouteUpdate = function (_ref) {\n var location = _ref.location;\n\n if (process.env.NODE_ENV !== \"production\" || typeof gtag !== \"function\") {\n return null;\n }\n\n var pathIsExcluded = location && typeof window.excludeGtagPaths !== \"undefined\" && window.excludeGtagPaths.some(function (rx) {\n return rx.test(location.pathname);\n });\n if (pathIsExcluded) return null; // wrap inside a timeout to make sure react-helmet is done with its changes (https://github.com/gatsbyjs/gatsby/issues/11592)\n\n var sendPageView = function sendPageView() {\n var pagePath = location ? location.pathname + location.search + location.hash : undefined;\n window.gtag(\"event\", \"page_view\", {\n page_path: pagePath\n });\n };\n\n if (\"requestAnimationFrame\" in window) {\n requestAnimationFrame(function () {\n requestAnimationFrame(sendPageView);\n });\n } else {\n // simulate 2 rAF calls\n setTimeout(sendPageView, 32);\n }\n\n return null;\n};","export function warn() {\n if (console && console.warn) {\n var _console;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n i18n.on('initialized', initialized);\n }\n });\n}\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n return i18n.hasLoadedNamespace(ns, {\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","module.exports = function(originalModule) {\n\tif (!originalModule.webpackPolyfill) {\n\t\tvar module = Object.create(originalModule);\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"exports\", {\n\t\t\tenumerable: true\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.wrapPageElement = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/taggedTemplateLiteralLoose\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _gatsby = require(\"gatsby\");\n\nvar _browserLang = _interopRequireDefault(require(\"browser-lang\"));\n\nvar _types = require(\"../types\");\n\nvar _i18next = _interopRequireDefault(require(\"i18next\"));\n\nvar _reactI18next = require(\"react-i18next\");\n\nvar _i18nextContext = require(\"../i18nextContext\");\n\nvar _outdent = _interopRequireDefault(require(\"outdent\"));\n\nvar _templateObject;\n\nvar withI18next = function withI18next(i18n, context) {\n return function (children) {\n return /*#__PURE__*/_react.default.createElement(_reactI18next.I18nextProvider, {\n i18n: i18n\n }, /*#__PURE__*/_react.default.createElement(_i18nextContext.I18nextContext.Provider, {\n value: context\n }, children));\n };\n};\n\nvar removePathPrefix = function removePathPrefix(pathname) {\n var pathPrefix = (0, _gatsby.withPrefix)('/');\n\n if (pathname.startsWith(pathPrefix)) {\n return pathname.replace(pathPrefix, '/');\n }\n\n return pathname;\n};\n\nvar wrapPageElement = function wrapPageElement(_ref, _ref2) {\n var _data$localeJsonNodeN;\n\n var element = _ref.element,\n props = _ref.props;\n var _ref2$i18nextOptions = _ref2.i18nextOptions,\n i18nextOptions = _ref2$i18nextOptions === void 0 ? {} : _ref2$i18nextOptions,\n _ref2$redirect = _ref2.redirect,\n redirect = _ref2$redirect === void 0 ? true : _ref2$redirect,\n _ref2$generateDefault = _ref2.generateDefaultLanguagePage,\n generateDefaultLanguagePage = _ref2$generateDefault === void 0 ? false : _ref2$generateDefault,\n siteUrl = _ref2.siteUrl,\n _ref2$localeJsonNodeN = _ref2.localeJsonNodeName,\n localeJsonNodeName = _ref2$localeJsonNodeN === void 0 ? 'locales' : _ref2$localeJsonNodeN,\n fallbackLanguage = _ref2.fallbackLanguage;\n if (!props) return;\n var data = props.data,\n pageContext = props.pageContext,\n location = props.location;\n var _pageContext$i18n = pageContext.i18n,\n routed = _pageContext$i18n.routed,\n language = _pageContext$i18n.language,\n languages = _pageContext$i18n.languages,\n originalPath = _pageContext$i18n.originalPath,\n defaultLanguage = _pageContext$i18n.defaultLanguage,\n path = _pageContext$i18n.path;\n var isRedirect = redirect && !routed;\n\n if (isRedirect) {\n var search = location.search; // Skip build, Browsers only\n\n if (typeof window !== 'undefined') {\n var detected = window.localStorage.getItem(_types.LANGUAGE_KEY) || (0, _browserLang.default)({\n languages: languages,\n fallback: fallbackLanguage || language\n });\n\n if (!languages.includes(detected)) {\n detected = language;\n }\n\n window.localStorage.setItem(_types.LANGUAGE_KEY, detected);\n\n if (detected !== defaultLanguage) {\n var queryParams = search || '';\n var newUrl = (0, _gatsby.withPrefix)(\"/\" + detected + removePathPrefix(location.pathname) + queryParams + location.hash); // @ts-ignore\n\n window.___replace(newUrl);\n\n return null;\n }\n }\n }\n\n var localeNodes = (data === null || data === void 0 ? void 0 : (_data$localeJsonNodeN = data[localeJsonNodeName]) === null || _data$localeJsonNodeN === void 0 ? void 0 : _data$localeJsonNodeN.edges) || [];\n\n if (languages.length > 1 && localeNodes.length === 0 && process.env.NODE_ENV === 'development') {\n console.error((0, _outdent.default)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"\\n No translations were found in \\\"\", \"\\\" key for \\\"\", \"\\\". \\n You need to add a graphql query to every page like this:\\n \\n export const query = graphql`\\n query($language: String!) {\\n \", \": allLocale(language: {eq: $language}}) {\\n edges {\\n node {\\n ns\\n data\\n language\\n }\\n }\\n }\\n }\\n `;\\n \"], [\"\\n No translations were found in \\\"\", \"\\\" key for \\\"\", \"\\\". \\n You need to add a graphql query to every page like this:\\n \\n export const query = graphql\\\\`\\n query($language: String!) {\\n \", \": allLocale(language: {eq: $language}}) {\\n edges {\\n node {\\n ns\\n data\\n language\\n }\\n }\\n }\\n }\\n \\\\`;\\n \"])), localeJsonNodeName, originalPath, localeJsonNodeName));\n }\n\n var namespaces = localeNodes.map(function (_ref3) {\n var node = _ref3.node;\n return node.ns;\n }); // We want to set default namespace to a page namespace if it exists\n // and use other namespaces as fallback\n // this way you dont need to specify namespaces in pages\n\n var defaultNS = i18nextOptions.defaultNS || 'translation';\n defaultNS = namespaces.find(function (ns) {\n return ns !== defaultNS;\n }) || defaultNS;\n var fallbackNS = namespaces.filter(function (ns) {\n return ns !== defaultNS;\n });\n var resources = localeNodes.reduce(function (res, _ref4) {\n var node = _ref4.node;\n var parsedData = JSON.parse(node.data);\n if (!(node.language in res)) res[node.language] = {};\n res[node.language][node.ns] = parsedData;\n return res;\n }, {});\n\n var i18n = _i18next.default.createInstance();\n\n i18n.init((0, _extends2.default)({}, i18nextOptions, {\n resources: resources,\n lng: language,\n fallbackLng: defaultLanguage,\n defaultNS: defaultNS,\n fallbackNS: fallbackNS,\n react: {\n useSuspense: false\n }\n }));\n\n if (i18n.language !== language) {\n i18n.changeLanguage(language);\n }\n\n var context = {\n routed: routed,\n language: language,\n languages: languages,\n originalPath: originalPath,\n defaultLanguage: defaultLanguage,\n generateDefaultLanguagePage: generateDefaultLanguagePage,\n siteUrl: siteUrl,\n path: path\n };\n return withI18next(i18n, context)(element);\n};\n\nexports.wrapPageElement = wrapPageElement;","import e from \"void-elements\";\nvar t = /\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;\nfunction n(n) {\n var r = {\n type: \"tag\",\n name: \"\",\n voidElement: !1,\n attrs: {},\n children: []\n },\n i = n.match(/<\\/?([^\\s]+?)[/\\s>]/);\n if (i && (r.name = i[1], (e[i[1]] || \"/\" === n.charAt(n.length - 2)) && (r.voidElement = !0), r.name.startsWith(\"!--\"))) {\n var s = n.indexOf(\"--\\x3e\");\n return {\n type: \"comment\",\n comment: -1 !== s ? n.slice(4, s) : \"\"\n };\n }\n for (var a = new RegExp(t), c = null; null !== (c = a.exec(n));) if (c[0].trim()) if (c[1]) {\n var o = c[1].trim(),\n l = [o, \"\"];\n o.indexOf(\"=\") > -1 && (l = o.split(\"=\")), r.attrs[l[0]] = l[1], a.lastIndex--;\n } else c[2] && (r.attrs[c[2]] = c[3].trim().substring(1, c[3].length - 1));\n return r;\n}\nvar r = /<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,\n i = /^\\s*$/,\n s = Object.create(null);\nfunction a(e, t) {\n switch (t.type) {\n case \"text\":\n return e + t.content;\n case \"tag\":\n return e += \"<\" + t.name + (t.attrs ? function (e) {\n var t = [];\n for (var n in e) t.push(n + '=\"' + e[n] + '\"');\n return t.length ? \" \" + t.join(\" \") : \"\";\n }(t.attrs) : \"\") + (t.voidElement ? \"/>\" : \">\"), t.voidElement ? e : e + t.children.reduce(a, \"\") + \"\";\n case \"comment\":\n return e + \"\\x3c!--\" + t.comment + \"--\\x3e\";\n }\n}\nvar c = {\n parse: function (e, t) {\n t || (t = {}), t.components || (t.components = s);\n var a,\n c = [],\n o = [],\n l = -1,\n m = !1;\n if (0 !== e.indexOf(\"<\")) {\n var u = e.indexOf(\"<\");\n c.push({\n type: \"text\",\n content: -1 === u ? e : e.substring(0, u)\n });\n }\n return e.replace(r, function (r, s) {\n if (m) {\n if (r !== \"\") return;\n m = !1;\n }\n var u,\n f = \"/\" !== r.charAt(1),\n h = r.startsWith(\"\\x3c!--\"),\n p = s + r.length,\n d = e.charAt(p);\n if (h) {\n var v = n(r);\n return l < 0 ? (c.push(v), c) : ((u = o[l]).children.push(v), c);\n }\n if (f && (l++, \"tag\" === (a = n(r)).type && t.components[a.name] && (a.type = \"component\", m = !0), a.voidElement || m || !d || \"<\" === d || a.children.push({\n type: \"text\",\n content: e.slice(p, e.indexOf(\"<\", p))\n }), 0 === l && c.push(a), (u = o[l - 1]) && u.children.push(a), o[l] = a), (!f || a.voidElement) && (l > -1 && (a.voidElement || a.name === r.slice(2, -1)) && (l--, a = -1 === l ? c : o[l]), !m && \"<\" !== d && d)) {\n u = -1 === l ? c : o[l].children;\n var x = e.indexOf(\"<\", p),\n g = e.slice(p, -1 === x ? void 0 : x);\n i.test(g) && (g = \" \"), (x > -1 && l + u.length >= 0 || \" \" !== g) && u.push({\n type: \"text\",\n content: g\n });\n }\n }), c;\n },\n stringify: function (e) {\n return e.reduce(function (e, t) {\n return e + a(\"\", t);\n }, \"\");\n }\n};\nexport default c;","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nvar _excluded = [\"format\"],\n _excluded2 = [\"children\", \"count\", \"parent\", \"i18nKey\", \"context\", \"tOptions\", \"values\", \"defaults\", \"components\", \"ns\", \"i18n\", \"t\", \"shouldUnescape\"];\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nimport { useContext, isValidElement, cloneElement, createElement } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\nfunction getChildren(node) {\n if (!node) return [];\n return node.props ? node.props.children : node.children;\n}\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(function (child) {\n return isValidElement(child);\n });\n}\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \">\");\n } else if (child.props.i18nIsDynamicList) {\n stringNode += \"<\".concat(childIndex, \">\");\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += \"<\".concat(child.type, \">\").concat(childChildren, \"\");\n } else {\n var content = nodesToString(childChildren, i18nOptions);\n stringNode += \"<\".concat(childIndex, \">\").concat(content, \"\");\n }\n } else if (child === null) {\n warn(\"Trans: the passed in value is invalid - seems you passed in a null child.\");\n } else if (_typeof(child) === 'object') {\n var format = child.format,\n clone = _objectWithoutProperties(child, _excluded);\n var keys = Object.keys(clone);\n if (keys.length === 1) {\n var value = format ? \"\".concat(keys[0], \", \").concat(format) : keys[0];\n stringNode += \"{{\".concat(value, \"}}\");\n } else {\n warn(\"react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.\", child);\n }\n } else {\n warn(\"Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.\", child);\n }\n });\n return stringNode;\n}\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n var keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n var emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling) return [targetString];\n var data = {};\n function getData(childs) {\n var childrenArray = getAsArray(childs);\n childrenArray.forEach(function (child) {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !isValidElement(child)) Object.assign(data, child);\n });\n }\n getData(children);\n var ast = HTML.parse(\"<0>\".concat(targetString, \"\"));\n var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);\n function renderInner(child, node, rootReactNode) {\n var childs = getChildren(child);\n var mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 ? childs : mappedChildren;\n }\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) child.children = inner;\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"\"));\n }\n } else if (_typeof(child) === 'object' && !isElement) {\n var content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else if (node.children.length === 1 && translationContent) {\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n var _content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n if (wrapTextNodes) {\n mem.push(createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n return mem;\n }, []);\n }\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n if (context) tOptions.context = context;\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? createElement(useAsParent, additionalProps, content) : content;\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _react = require(\"react\");\n\nvar _router = require(\"@reach/router\");\n\nfunction useScrollRestoration(identifier) {\n var location = (0, _router.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)();\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, []);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","module.exports = __webpack_public_path__ + \"static/expeditions-91d1a375229488bba164918e5c6e9b87.png\";","module.exports = __webpack_public_path__ + \"static/activity-zones-316eba3ab4c151f0d1de56e41e6fb0a8.png\";","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","module.exports = __webpack_public_path__ + \"static/offers-91a56b200da341777a72843a91bc6b8f.png\";","module.exports = __webpack_public_path__ + \"static/carte_france_zoom_idf-eb645b74a410c3f912d3296200337eed.png\";","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContainer = exports.ScrollContext = void 0;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nexports.ScrollContext = _scrollHandler.ScrollHandler;\n\nvar _scrollContainer = require(\"./scroll-container\");\n\nexports.ScrollContainer = _scrollContainer.ScrollContainer;\n\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\n\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","import React from 'react';\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nvar isFunction = function isFunction(obj) {\n return typeof obj === 'function';\n};\nvar MDXContext = /*#__PURE__*/React.createContext({});\nvar withMDXComponents = function withMDXComponents(Component) {\n return function (props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n components: allComponents\n }));\n };\n};\nvar useMDXComponents = function useMDXComponents(components) {\n var contextComponents = React.useContext(MDXContext);\n var allComponents = contextComponents;\n if (components) {\n allComponents = isFunction(components) ? components(contextComponents) : _objectSpread2(_objectSpread2({}, contextComponents), components);\n }\n return allComponents;\n};\nvar MDXProvider = function MDXProvider(props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(MDXContext.Provider, {\n value: allComponents\n }, props.children);\n};\nvar TYPE_PROP_NAME = 'mdxType';\nvar DEFAULTS = {\n inlineCode: 'code',\n wrapper: function wrapper(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, {}, children);\n }\n};\nvar MDXCreateElement = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var propComponents = props.components,\n mdxType = props.mdxType,\n originalType = props.originalType,\n parentName = props.parentName,\n etc = _objectWithoutProperties(props, [\"components\", \"mdxType\", \"originalType\", \"parentName\"]);\n var components = useMDXComponents(propComponents);\n var type = mdxType;\n var Component = components[\"\".concat(parentName, \".\").concat(type)] || components[type] || DEFAULTS[type] || originalType;\n if (propComponents) {\n return /*#__PURE__*/React.createElement(Component, _objectSpread2(_objectSpread2({\n ref: ref\n }, etc), {}, {\n components: propComponents\n }));\n }\n return /*#__PURE__*/React.createElement(Component, _objectSpread2({\n ref: ref\n }, etc));\n});\nMDXCreateElement.displayName = 'MDXCreateElement';\nfunction createElement(type, props) {\n var args = arguments;\n var mdxType = props && props.mdxType;\n if (typeof type === 'string' || mdxType) {\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = MDXCreateElement;\n var newProps = {};\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n newProps.originalType = type;\n newProps[TYPE_PROP_NAME] = typeof type === 'string' ? type : mdxType;\n createElementArgArray[1] = newProps;\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n }\n return React.createElement.apply(null, createElementArgArray);\n }\n return React.createElement.apply(null, args);\n}\nexport { MDXContext, MDXProvider, createElement as mdx, useMDXComponents, withMDXComponents };","module.exports = __webpack_public_path__ + \"static/activity-zones-316eba3ab4c151f0d1de56e41e6fb0a8.png\";","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = __webpack_public_path__ + \"static/offers.fr-05fc8e453e3c21b28f32923d2480fa6b.png\";","exports.polyfill = Component => Component\n","import activityZones from \"../../../../src/business-cases/kevel-transports/activity-zones.png\";\nimport cdarma from \"../../../../src/business-cases/kevel-transports/cdarma@2x.jpg\";\nimport mreis from \"../../../../src/business-cases/kevel-transports/mreis@2x.jpg\";\nimport transportOffers from \"../../../../src/business-cases/kevel-transports/offers.en.png\";\nimport * as React from 'react';\nexport default {\n activityZones,\n cdarma,\n mreis,\n transportOffers,\n React\n};","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexport { globalHistory, navigate, createHistory, createMemorySource };","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\n/**\n * Get a manifest filename depending on localized pathname\n *\n * @param {string} pathname\n * @param {Array<{start_url: string, lang: string}>} localizedManifests\n * @return string\n */\nvar _default = function _default(pathname, localizedManifests) {\n var defaultFilename = \"manifest.webmanifest\";\n\n if (!Array.isArray(localizedManifests)) {\n return defaultFilename;\n }\n\n var localizedManifest = localizedManifests.find(function (app) {\n return pathname.startsWith(app.start_url);\n });\n\n if (!localizedManifest) {\n return defaultFilename;\n }\n\n return \"manifest_\" + localizedManifest.lang + \".webmanifest\";\n};\n\nexports.default = _default;","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\nvar usePrevious = function usePrevious(value, ignore) {\n var ref = useRef();\n useEffect(function () {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n var joinedNS = namespaces.join();\n var previousJoinedNS = usePrevious(joinedNS);\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getT);\n }\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, joinedNS]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n isInitial.current = false;\n }, [i18n, keyPrefix]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n loadNamespaces(i18n, namespaces, function () {\n resolve();\n });\n });\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"forwardedRef\"];\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nimport { createElement, forwardRef as forwardRefReact } from 'react';\nimport { useTranslation } from './useTranslation';\nimport { getDisplayName } from './utils';\nexport function withTranslation(ns) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return function Extend(WrappedComponent) {\n function I18nextWithTranslation(_ref) {\n var forwardedRef = _ref.forwardedRef,\n rest = _objectWithoutProperties(_ref, _excluded);\n var _useTranslation = useTranslation(ns, _objectSpread(_objectSpread({}, rest), {}, {\n keyPrefix: options.keyPrefix\n })),\n _useTranslation2 = _slicedToArray(_useTranslation, 3),\n t = _useTranslation2[0],\n i18n = _useTranslation2[1],\n ready = _useTranslation2[2];\n var passDownProps = _objectSpread(_objectSpread({}, rest), {}, {\n t: t,\n i18n: i18n,\n tReady: ready\n });\n if (options.withRef && forwardedRef) {\n passDownProps.ref = forwardedRef;\n } else if (!options.withRef && forwardedRef) {\n passDownProps.forwardedRef = forwardedRef;\n }\n return createElement(WrappedComponent, passDownProps);\n }\n I18nextWithTranslation.displayName = \"withI18nextTranslation(\".concat(getDisplayName(WrappedComponent), \")\");\n I18nextWithTranslation.WrappedComponent = WrappedComponent;\n var forwardRef = function forwardRef(props, ref) {\n return createElement(I18nextWithTranslation, Object.assign({}, props, {\n forwardedRef: ref\n }));\n };\n return options.withRef ? forwardRefReact(forwardRef) : I18nextWithTranslation;\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"ns\", \"children\"];\nimport { useTranslation } from './useTranslation';\nexport function Translation(props) {\n var ns = props.ns,\n children = props.children,\n options = _objectWithoutProperties(props, _excluded);\n var _useTranslation = useTranslation(ns, options),\n _useTranslation2 = _slicedToArray(_useTranslation, 3),\n t = _useTranslation2[0],\n i18n = _useTranslation2[1],\n ready = _useTranslation2[2];\n return children(t, {\n i18n: i18n,\n lng: i18n.language\n }, ready);\n}","import { createElement, useMemo } from 'react';\nimport { I18nContext } from './context';\nexport function I18nextProvider(_ref) {\n var i18n = _ref.i18n,\n defaultNS = _ref.defaultNS,\n children = _ref.children;\n var value = useMemo(function () {\n return {\n i18n: i18n,\n defaultNS: defaultNS\n };\n }, [i18n, defaultNS]);\n return createElement(I18nContext.Provider, {\n value: value\n }, children);\n}","import { useContext } from 'react';\nimport { getI18n, I18nContext } from './context';\nexport function useSSR(initialI18nStore, initialLanguage) {\n var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var i18nFromProps = props.i18n;\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n;\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n.options && i18n.options.isClone) return;\n if (initialI18nStore && !i18n.initializedStoreOnce) {\n i18n.services.resourceStore.data = initialI18nStore;\n i18n.options.ns = Object.values(initialI18nStore).reduce(function (mem, lngResources) {\n Object.keys(lngResources).forEach(function (ns) {\n if (mem.indexOf(ns) < 0) mem.push(ns);\n });\n return mem;\n }, i18n.options.ns);\n i18n.initializedStoreOnce = true;\n i18n.isInitialized = true;\n }\n if (initialLanguage && !i18n.initializedLanguageOnce) {\n i18n.changeLanguage(initialLanguage);\n i18n.initializedLanguageOnce = true;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"initialI18nStore\", \"initialLanguage\"];\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nimport { createElement } from 'react';\nimport { useSSR } from './useSSR';\nimport { composeInitialProps } from './context';\nimport { getDisplayName } from './utils';\nexport function withSSR() {\n return function Extend(WrappedComponent) {\n function I18nextWithSSR(_ref) {\n var initialI18nStore = _ref.initialI18nStore,\n initialLanguage = _ref.initialLanguage,\n rest = _objectWithoutProperties(_ref, _excluded);\n useSSR(initialI18nStore, initialLanguage);\n return createElement(WrappedComponent, _objectSpread({}, rest));\n }\n I18nextWithSSR.getInitialProps = composeInitialProps(WrappedComponent);\n I18nextWithSSR.displayName = \"withI18nextSSR(\".concat(getDisplayName(WrappedComponent), \")\");\n I18nextWithSSR.WrappedComponent = WrappedComponent;\n return I18nextWithSSR;\n };\n}","export { Trans } from './Trans';\nexport { useTranslation } from './useTranslation';\nexport { withTranslation } from './withTranslation';\nexport { Translation } from './Translation';\nexport { I18nextProvider } from './I18nextProvider';\nexport { withSSR } from './withSSR';\nexport { useSSR } from './useSSR';\nexport { I18nContext, initReactI18next, setDefaults, getDefaults, setI18n, getI18n, composeInitialProps, getInitialProps } from './context';\nexport var date = function date() {\n return '';\n};\nexport var time = function time() {\n return '';\n};\nexport var number = function number() {\n return '';\n};\nexport var select = function select() {\n return '';\n};\nexport var plural = function plural() {\n return '';\n};\nexport var selectOrdinal = function selectOrdinal() {\n return '';\n};","module.exports = __webpack_public_path__ + \"static/offers.fr-37034de7ebd2b689b537c5f8f8e998c5.png\";","// In the absence of a WeakSet or WeakMap implementation, don't break, but don't cache either.\nfunction noop() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n}\nfunction createWeakMap() {\n if (typeof WeakMap !== \"undefined\") {\n return new WeakMap();\n } else {\n return fakeSetOrMap();\n }\n}\n/**\n * Creates and returns a no-op implementation of a WeakMap / WeakSet that never stores anything.\n */\nfunction fakeSetOrMap() {\n return {\n add: noop,\n delete: noop,\n get: noop,\n set: noop,\n has: function (k) {\n return false;\n }\n };\n}\n// Safe hasOwnProperty\nvar hop = Object.prototype.hasOwnProperty;\nvar has = function (obj, prop) {\n return hop.call(obj, prop);\n};\n// Copy all own enumerable properties from source to target\nfunction extend(target, source) {\n for (var prop in source) {\n if (has(source, prop)) {\n target[prop] = source[prop];\n }\n }\n return target;\n}\nvar reLeadingNewline = /^[ \\t]*(?:\\r\\n|\\r|\\n)/;\nvar reTrailingNewline = /(?:\\r\\n|\\r|\\n)[ \\t]*$/;\nvar reStartsWithNewlineOrIsEmpty = /^(?:[\\r\\n]|$)/;\nvar reDetectIndentation = /(?:\\r\\n|\\r|\\n)([ \\t]*)(?:[^ \\t\\r\\n]|$)/;\nvar reOnlyWhitespaceWithAtLeastOneNewline = /^[ \\t]*[\\r\\n][ \\t\\r\\n]*$/;\nfunction _outdentArray(strings, firstInterpolatedValueSetsIndentationLevel, options) {\n // If first interpolated value is a reference to outdent,\n // determine indentation level from the indentation of the interpolated value.\n var indentationLevel = 0;\n var match = strings[0].match(reDetectIndentation);\n if (match) {\n indentationLevel = match[1].length;\n }\n var reSource = \"(\\\\r\\\\n|\\\\r|\\\\n).{0,\" + indentationLevel + \"}\";\n var reMatchIndent = new RegExp(reSource, \"g\");\n if (firstInterpolatedValueSetsIndentationLevel) {\n strings = strings.slice(1);\n }\n var newline = options.newline,\n trimLeadingNewline = options.trimLeadingNewline,\n trimTrailingNewline = options.trimTrailingNewline;\n var normalizeNewlines = typeof newline === \"string\";\n var l = strings.length;\n var outdentedStrings = strings.map(function (v, i) {\n // Remove leading indentation from all lines\n v = v.replace(reMatchIndent, \"$1\");\n // Trim a leading newline from the first string\n if (i === 0 && trimLeadingNewline) {\n v = v.replace(reLeadingNewline, \"\");\n }\n // Trim a trailing newline from the last string\n if (i === l - 1 && trimTrailingNewline) {\n v = v.replace(reTrailingNewline, \"\");\n }\n // Normalize newlines\n if (normalizeNewlines) {\n v = v.replace(/\\r\\n|\\n|\\r/g, function (_) {\n return newline;\n });\n }\n return v;\n });\n return outdentedStrings;\n}\nfunction concatStringsAndValues(strings, values) {\n var ret = \"\";\n for (var i = 0, l = strings.length; i < l; i++) {\n ret += strings[i];\n if (i < l - 1) {\n ret += values[i];\n }\n }\n return ret;\n}\nfunction isTemplateStringsArray(v) {\n return has(v, \"raw\") && has(v, \"length\");\n}\n/**\n * It is assumed that opts will not change. If this is a problem, clone your options object and pass the clone to\n * makeInstance\n * @param options\n * @return {outdent}\n */\nfunction createInstance(options) {\n /** Cache of pre-processed template literal arrays */\n var arrayAutoIndentCache = createWeakMap();\n /**\n * Cache of pre-processed template literal arrays, where first interpolated value is a reference to outdent,\n * before interpolated values are injected.\n */\n var arrayFirstInterpSetsIndentCache = createWeakMap();\n function outdent(stringsOrOptions) {\n var values = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n /* tslint:enable:no-shadowed-variable */\n if (isTemplateStringsArray(stringsOrOptions)) {\n var strings = stringsOrOptions;\n // Is first interpolated value a reference to outdent, alone on its own line, without any preceding non-whitespace?\n var firstInterpolatedValueSetsIndentationLevel = (values[0] === outdent || values[0] === defaultOutdent) && reOnlyWhitespaceWithAtLeastOneNewline.test(strings[0]) && reStartsWithNewlineOrIsEmpty.test(strings[1]);\n // Perform outdentation\n var cache = firstInterpolatedValueSetsIndentationLevel ? arrayFirstInterpSetsIndentCache : arrayAutoIndentCache;\n var renderedArray = cache.get(strings);\n if (!renderedArray) {\n renderedArray = _outdentArray(strings, firstInterpolatedValueSetsIndentationLevel, options);\n cache.set(strings, renderedArray);\n }\n /** If no interpolated values, skip concatenation step */\n if (values.length === 0) {\n return renderedArray[0];\n }\n /** Concatenate string literals with interpolated values */\n var rendered = concatStringsAndValues(renderedArray, firstInterpolatedValueSetsIndentationLevel ? values.slice(1) : values);\n return rendered;\n } else {\n // Create and return a new instance of outdent with the given options\n return createInstance(extend(extend({}, options), stringsOrOptions || {}));\n }\n }\n var fullOutdent = extend(outdent, {\n string: function (str) {\n return _outdentArray([str], false, options)[0];\n }\n });\n return fullOutdent;\n}\nvar defaultOutdent = createInstance({\n trimLeadingNewline: true,\n trimTrailingNewline: true\n});\n// Named exports. Simple and preferred.\n// import outdent from 'outdent';\nexport default defaultOutdent;\n// import {outdent} from 'outdent';\nexport { defaultOutdent as outdent };\nif (typeof module !== \"undefined\") {\n // In webpack harmony-modules environments, module.exports is read-only,\n // so we fail gracefully.\n try {\n module.exports = defaultOutdent;\n Object.defineProperty(defaultOutdent, \"__esModule\", {\n value: true\n });\n defaultOutdent.default = defaultOutdent;\n defaultOutdent.outdent = defaultOutdent;\n } catch (e) {}\n}","import React, { createContext, useContext } from \"react\"\n\nconst GatsbyMDXScopeContext = createContext({})\n\nexport const useMDXScope = scope => {\n const contextScope = useContext(GatsbyMDXScopeContext)\n return scope || contextScope\n}\n\nexport const MDXScopeProvider = ({ __mdxScope, children }) =>\n React.createElement(\n GatsbyMDXScopeContext.Provider,\n { value: __mdxScope },\n children\n )\n","import mgrenier from \"../../../../src/business-cases/transports-mds/mgrenier@2x.jpg\";\nimport fretlinkProcess from \"../../../../src/business-cases/transports-mds/fretlink-process.png\";\nimport activityZones from \"../../../../src/business-cases/transports-mds/activity-zones.png\";\nimport offers from \"../../../../src/business-cases/transports-mds/offers.en.png\";\nimport * as React from 'react';\nexport default {\n mgrenier,\n fretlinkProcess,\n activityZones,\n offers,\n React\n};","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _sessionStorage = require(\"./session-storage\");\n\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\n\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n\n function ScrollHandler() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n\n _this.scrollListener = function () {\n var key = _this.props.location.key;\n\n if (key) {\n _this._stateStorage.save(_this.props.location, key, window.scrollY);\n }\n };\n\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n\n if (!shouldUpdateScroll) {\n return true;\n } // Hack to allow accessing this._stateStorage.\n\n\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n\n return _this;\n }\n\n var _proto = ScrollHandler.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n } else if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n\n return ScrollHandler;\n}(React.Component);\n\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","import React, { createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { publicLoader } from \"./loader\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\n\n// Renders page\nclass PageRenderer extends React.Component {\n render() {\n const props = {\n ...this.props,\n params: {\n ...grabMatchParams(this.props.location.pathname),\n ...this.props.pageResources.json.pageContext.__params,\n },\n pathContext: this.props.pageContext,\n }\n\n const [replacementElement] = apiRunner(`replaceComponentRenderer`, {\n props: this.props,\n loader: publicLoader,\n })\n\n const pageElement =\n replacementElement ||\n createElement(this.props.pageResources.component, {\n ...props,\n key: this.props.path || this.props.pageResources.page.path,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n { element: pageElement, props },\n pageElement,\n ({ result }) => {\n return { element: result, props }\n }\n ).pop()\n\n return wrappedPage\n }\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = __webpack_public_path__ + \"static/mreis@2x-5aa6fd4570e47f5ba3b81a441d865c69.jpg\";","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import invariant from \"invariant\";\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : invariant(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// \n// // instead of\n// \n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexport { startsWith, pick, match, resolve, insertParams, validateRedirect, shallowCompare };","module.exports = [{\n plugin: require('../node_modules/gatsby-plugin-manifest/gatsby-browser.js'),\n options: {\"plugins\":[],\"name\":\"Fretlink\",\"short_name\":\"Fretlink\",\"start_url\":\"/\",\"background_color\":\"#663399\",\"theme_color\":\"#663399\",\"display\":\"browser\",\"icon\":\"src/images/fretlink-icon.png\",\"legacy\":false,\"theme_color_in_head\":true,\"cache_busting_mode\":\"query\",\"crossOrigin\":\"anonymous\",\"include_favicon\":true,\"cacheDigest\":\"f96c7c84c42ae3a685c4e884d47d4eee\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-mdx/gatsby-browser.js'),\n options: {\"plugins\":[],\"extensions\":[\".mdx\"],\"defaultLayouts\":{},\"gatsbyRemarkPlugins\":[],\"lessBabel\":false,\"remarkPlugins\":[],\"rehypePlugins\":[],\"mediaTypes\":[\"text/markdown\",\"text/x-markdown\"],\"root\":\"/home/ubuntu/builds/homepage/frontend\",\"JSFrontmatterEngine\":false,\"engines\":{}},\n },{\n plugin: require('../node_modules/gatsby-plugin-react-i18next/gatsby-browser.js'),\n options: {\"plugins\":[],\"languages\":[\"en\",\"fr\"],\"defaultLanguage\":\"fr\",\"generateDefaultLanguagePage\":true,\"fallbackLng\":\"fr\",\"siteUrl\":\"https://www.fretlink.com/\",\"redirect\":true,\"i18nextOptions\":{\"interpolation\":{\"escapeValue\":false}},\"pages\":[]},\n },{\n plugin: require('../node_modules/gatsby-plugin-google-gtag/gatsby-browser.js'),\n options: {\"plugins\":[],\"trackingIds\":[\"UA-83916888-1\"],\"anonymize_ip\":true},\n },{\n plugin: require('../gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","module.exports = __webpack_public_path__ + \"static/claire-088f3d5d7a7df925e853f22df9ca1ab8.jpg\";","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n * ie10 fix - Mikael Kristiansson 2019\n */\n!(function(name, definition) {\n if (typeof module != \"undefined\") module.exports = definition();\n else if (typeof define == \"function\" && typeof define.amd == \"object\")\n define(definition);\n else this[name] = definition();\n})(\"domready\", function() {\n var ie10 = false;\n if (navigator.appVersion.indexOf(\"MSIE 10\") !== -1) {\n ie10 = true;\n }\n\n var fns = [],\n listener,\n doc = typeof document === \"object\" && document,\n hack = ie10\n ? doc.documentElement.doScroll(\"left\")\n : doc.documentElement.doScroll,\n domContentLoaded = \"DOMContentLoaded\",\n loaded =\n doc && (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n if (!loaded && doc)\n doc.addEventListener(\n domContentLoaded,\n (listener = function() {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while ((listener = fns.shift())) listener();\n })\n );\n\n return function(fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n };\n});\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","// prefer default export if available\nconst preferDefault = m => (m && m.default) || m\n\nexports.components = {\n \"component---src-components-business-case-layout-js\": () => import(\"./../../../src/components/BusinessCaseLayout.js\" /* webpackChunkName: \"component---src-components-business-case-layout-js\" */),\n \"component---src-pages-404-js\": () => import(\"./../../../src/pages/404.js\" /* webpackChunkName: \"component---src-pages-404-js\" */),\n \"component---src-pages-about-us-js\": () => import(\"./../../../src/pages/about-us.js\" /* webpackChunkName: \"component---src-pages-about-us-js\" */),\n \"component---src-pages-business-cases-js\": () => import(\"./../../../src/pages/business-cases.js\" /* webpackChunkName: \"component---src-pages-business-cases-js\" */),\n \"component---src-pages-carriers-js\": () => import(\"./../../../src/pages/carriers.js\" /* webpackChunkName: \"component---src-pages-carriers-js\" */),\n \"component---src-pages-contact-js\": () => import(\"./../../../src/pages/contact.js\" /* webpackChunkName: \"component---src-pages-contact-js\" */),\n \"component---src-pages-green-roads-js\": () => import(\"./../../../src/pages/green-roads.js\" /* webpackChunkName: \"component---src-pages-green-roads-js\" */),\n \"component---src-pages-index-js\": () => import(\"./../../../src/pages/index.js\" /* webpackChunkName: \"component---src-pages-index-js\" */),\n \"component---src-pages-login-js\": () => import(\"./../../../src/pages/login.js\" /* webpackChunkName: \"component---src-pages-login-js\" */),\n \"component---src-pages-lost-password-js\": () => import(\"./../../../src/pages/lost-password.js\" /* webpackChunkName: \"component---src-pages-lost-password-js\" */),\n \"component---src-pages-shippers-js\": () => import(\"./../../../src/pages/shippers.js\" /* webpackChunkName: \"component---src-pages-shippers-js\" */),\n \"component---src-pages-sign-up-carrier-js\": () => import(\"./../../../src/pages/sign-up/carrier.js\" /* webpackChunkName: \"component---src-pages-sign-up-carrier-js\" */),\n \"component---src-pages-sign-up-index-js\": () => import(\"./../../../src/pages/sign-up/index.js\" /* webpackChunkName: \"component---src-pages-sign-up-index-js\" */),\n \"component---src-pages-sign-up-shipper-js\": () => import(\"./../../../src/pages/sign-up/shipper.js\" /* webpackChunkName: \"component---src-pages-sign-up-shipper-js\" */),\n \"component---src-pages-terms-js\": () => import(\"./../../../src/pages/terms.js\" /* webpackChunkName: \"component---src-pages-terms-js\" */),\n \"component---src-pages-transport-operating-system-js\": () => import(\"./../../../src/pages/transport-operating-system.js\" /* webpackChunkName: \"component---src-pages-transport-operating-system-js\" */)\n}\n\n","module.exports = __webpack_public_path__ + \"static/cdarma@1x-575599c37dcaed42e03f10600ad37d8c.png\";","module.exports = __webpack_public_path__ + \"static/renaud-8a264a7b38e9078038d7dde7d787cfd7.jpg\";","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nvar htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\n};\nvar unescapeHtmlEntity = function unescapeHtmlEntity(m) {\n return htmlEntities[m];\n};\nexport var unescape = function unescape(text) {\n return text.replace(matchHtmlEntity, unescapeHtmlEntity);\n};","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nimport { createContext } from 'react';\nimport { unescape } from './unescape';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape: unescape\n};\nvar i18nInstance;\nexport var I18nContext = createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n this.usedNamespaces = {};\n }\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","module.exports = __webpack_public_path__ + \"static/offers.fr-37034de7ebd2b689b537c5f8f8e998c5.png\";","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport redirects from \"./redirects.json\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport { navigate as reachNavigate } from \"@reach/router\"\nimport { globalHistory } from \"@reach/router/lib/history\"\nimport { parsePath } from \"gatsby-link\"\n\n// Convert to a map for faster lookup in maybeRedirect()\n\nconst redirectMap = new Map()\nconst redirectIgnoreCaseMap = new Map()\n\nredirects.forEach(redirect => {\n if (redirect.ignoreCase) {\n redirectIgnoreCaseMap.set(redirect.fromPath, redirect)\n } else {\n redirectMap.set(redirect.fromPath, redirect)\n }\n})\n\nfunction maybeRedirect(pathname) {\n let redirect = redirectMap.get(pathname)\n if (!redirect) {\n redirect = redirectIgnoreCaseMap.get(pathname.toLowerCase())\n }\n\n if (redirect != null) {\n if (process.env.NODE_ENV !== `production`) {\n if (!loader.isPageNotFound(pathname)) {\n console.error(\n `The route \"${pathname}\" matches both a page and a redirect; this is probably not intentional.`\n )\n }\n }\n\n window.___replace(redirect.toPath)\n return true\n } else {\n return false\n }\n}\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n emitter.emit(`onRouteUpdate`, { location, prevLocation })\n }\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n let { pathname } = parsePath(to)\n let redirect = redirectMap.get(pathname)\n if (!redirect) {\n redirect = redirectIgnoreCaseMap.get(pathname.toLowerCase())\n }\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath\n pathname = parsePath(to).pathname\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n window.location = pathname\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => [\n 0,\n this._stateStorage.read(args, args.key),\n ],\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n\n // Check for initial page-load redirect\n maybeRedirect(window.location.pathname)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return
\n }\n}\n\nconst compareLocationProps = (prevLocation, nextLocation) => {\n if (prevLocation.href !== nextLocation.href) {\n return true\n }\n\n if (prevLocation?.state?.key !== nextLocation?.state?.key) {\n return true\n }\n\n return false\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n shouldComponentUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onPreRouteUpdate(this.props.location, prevProps.location)\n return true\n }\n return false\n }\n\n componentDidUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n render() {\n return (\n \n {this.props.children}\n \n \n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources: pageResources || loader.loadPageSync(location.pathname),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(location.pathname)\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(nextProps.location.pathname)\n return false\n }\n\n if (\n process.env.BUILD_STAGE === `develop` &&\n nextState.pageResources.stale\n ) {\n this.loadResources(nextProps.location.pathname)\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (process.env.NODE_ENV !== `production` && !this.state.pageResources) {\n throw new Error(\n `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n )\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport ReactDOM from \"react-dom\"\nimport { Router, navigate, Location, BaseContext } from \"@reach/router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport domReady from \"@mikaelkristiansson/domready\"\nimport { StaticQueryContext } from \"gatsby\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n getStaticQueryResults,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n \n \n \n )\n\n const DataContext = React.createContext({})\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n \n {({ location }) => (\n \n {({ pageResources, location }) => {\n const staticQueryResults = getStaticQueryResults()\n return (\n \n \n {children}\n \n \n )\n }}\n \n )}\n \n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n \n {({ pageResources, location }) => (\n \n \n \n \n
\n \n \n )}\n \n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). But\n // only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !== browserLoc.pathname &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath === `/404.html` ||\n pagePath.match(/^\\/404\\/?$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(__BASE_PATH__ + pagePath + browserLoc.search + browserLoc.hash, {\n replace: true,\n })\n }\n\n publicLoader.loadPage(browserLoc.pathname).then(page => {\n if (!page || page.status === PageResourceStatus.Error) {\n throw new Error(\n `page resources for ${browserLoc.pathname} not found. Not rendering React`\n )\n }\n\n window.___webpackCompilationHash = page.page.webpackCompilationHash\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: },\n ,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = () => {SiteRoot}\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n ReactDOM.hydrate\n )[0]\n\n domReady(() => {\n renderer(\n ,\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : void 0,\n () => {\n apiRunner(`onInitialClientRender`)\n }\n )\n })\n })\n})\n","module.exports = __webpack_public_path__ + \"static/fxlebot@2x-de242c243a3f773732122c326ebadcaf.jpg\";","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inheritsLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import zoneActivites from \"../../../../src/business-cases/kevel-transports/activity-zones.png\";\nimport cdarma from \"../../../../src/business-cases/kevel-transports/cdarma@2x.jpg\";\nimport mreis from \"../../../../src/business-cases/kevel-transports/mreis@2x.jpg\";\nimport offers from \"../../../../src/business-cases/kevel-transports/offers.fr.png\";\nimport * as React from 'react';\nexport default {\n zoneActivites,\n cdarma,\n mreis,\n offers,\n React\n};","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n withAssetPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n parsePath,\n} from \"gatsby-link\"\nimport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nimport PageRenderer from \"./public-page-renderer\"\nimport loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nconst StaticQueryContext = React.createContext({})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n \n {finalData && render(finalData)}\n {!finalData &&
Loading (StaticQuery)
}\n
\n )\n}\n\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n return (\n \n {staticQueryData => (\n \n )}\n \n )\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n const context = React.useContext(StaticQueryContext)\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withAssetPrefix,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n useScrollRestoration,\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n useStaticQuery,\n prefetchPathname,\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import cdarma from \"../../../../src/business-cases/transports-caudron/cdarma@1x.png\";\nimport mreis from \"../../../../src/business-cases/transports-caudron/mreis@1x.png\";\nimport caveatsSpeed from \"../../../../src/business-cases/transports-caudron/caveats-speed.png\";\nimport activityZones from \"../../../../src/business-cases/transports-caudron/activity-zones.png\";\nimport fleetDescription from \"../../../../src/business-cases/transports-caudron/fleet-description.png\";\nimport caveatsPlanning from \"../../../../src/business-cases/transports-caudron/caveats-planning.png\";\nimport caveatsProfits from \"../../../../src/business-cases/transports-caudron/caveats-profits.png\";\nimport * as React from 'react';\nexport default {\n cdarma,\n mreis,\n caveatsSpeed,\n activityZones,\n fleetDescription,\n caveatsPlanning,\n caveatsProfits,\n React\n};","module.exports = __webpack_public_path__ + \"static/usine-72ed31f7cd9978f4278b4f70cc21b739.jpg\";","module.exports = __webpack_public_path__ + \"static/mreis@2x-5aa6fd4570e47f5ba3b81a441d865c69.jpg\";","import defineProperty from \"./defineProperty.js\";\nexport default function _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? Object(arguments[i]) : {};\n var ownKeys = Object.keys(source);\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys.push.apply(ownKeys, Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n return target;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _objectSpread from '@babel/runtime/helpers/esm/objectSpread';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }, this.options));\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n return EventEmitter;\n}();\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _possibleConstructorReturn(this, _getPrototypeOf(ResourceStore).call(this));\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n return getPath(this.data, path);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread({}, pack, resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread({}, {}, this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Translator).call(this));\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS;\n if (nsSeparator && key.indexOf(nsSeparator) > -1) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n return namespace + nsSeparator + key;\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n return this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, options) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread({}, options, {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread({}, options, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n var send = function send(l, k, fallbackValue) {\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, updateMissing ? fallbackValue : res, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, updateMissing ? fallbackValue : res, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if (usedKey && this.options.parseMissingKeyHandler) res = this.options.parseMissingKeyHandler(res);\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, options, resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread({}, options, {\n interpolation: _objectSpread({}, this.options.interpolation, options.interpolation)\n }));\n var skipOnVariables = options.interpolation && options.interpolation.skipOnVariables || this.options.interpolation.skipOnVariables;\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread({}, this.options.interpolation.defaultVariables, data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsContextHandling = options.context !== undefined && typeof options.context === 'string' && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKey = key;\n var finalKeys = [finalKey];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count);\n if (needsPluralHandling && needsContextHandling) finalKeys.push(finalKey + pluralSuffix);\n if (needsContextHandling) finalKeys.push(finalKey += \"\".concat(_this4.options.contextSeparator).concat(options.context));\n if (needsPluralHandling) finalKeys.push(finalKey += pluralSuffix);\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.whitelist = this.options.supportedLngs || false;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isWhitelisted\",\n value: function isWhitelisted(code) {\n this.logger.deprecate('languageUtils.isWhitelisted', 'function \"isWhitelisted\" will be renamed to \"isSupportedCode\" in the next major - please make sure to rename it\\'s usage asap.');\n return this.isSupportedCode(code);\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'kk', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var rule = this.getRule(code);\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n return this.getSuffixes(code).map(function (suffix) {\n return key + suffix;\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var rule = this.getRule(code);\n if (!rule) {\n return [];\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var _this2 = this;\n var rule = this.getRule(code);\n if (rule) {\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }]);\n return PluralResolver;\n}();\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = getPathWithDefaults(data, defaultData, key);\n return _this.alwaysFormat ? _this.format(path, undefined, lng) : path;\n }\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(getPathWithDefaults(data, defaultData, k), f, lng, options);\n };\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables || this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n value = handleFormat(match[1].trim());\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(match[1], \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n str = str.replace(match[0], todo.safeValue(value));\n todo.regex.lastIndex = 0;\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions = _objectSpread({}, options);\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n optionsString = optionsString.replace(/'/g, '\"');\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread({}, inheritedOptions, clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n var doReduce = false;\n if (match[0].includes(this.formatSeparator) && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, options);\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\nfunction remove(arr, what) {\n var found = arr.indexOf(what);\n while (found !== -1) {\n arr.splice(found, 1);\n found = arr.indexOf(what);\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Connector).call(this));\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = [];\n var pending = [];\n var toLoadLanguages = [];\n var toLoadNamespaces = [];\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ;else if (_this2.state[name] === 1) {\n if (pending.indexOf(name) < 0) pending.push(name);\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending.indexOf(name) < 0) pending.push(name);\n if (toLoad.indexOf(name) < 0) toLoad.push(name);\n if (toLoadNamespaces.indexOf(ns) < 0) toLoadNamespaces.push(ns);\n }\n });\n if (!hasAllNamespaces) toLoadLanguages.push(lng);\n });\n if (toLoad.length || pending.length) {\n this.queue.push({\n pending: pending,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: toLoad,\n pending: pending,\n toLoadLanguages: toLoadLanguages,\n toLoadNamespaces: toLoadNamespaces\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n remove(q.pending, name);\n if (err) q.errors.push(err);\n if (q.pending.length === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = [];\n if (q.loaded[l].length) {\n q.loaded[l].forEach(function (ns) {\n if (loaded[l].indexOf(ns) < 0) loaded[l].push(ns);\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 350;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n return this.backend[fcName](lng, ns, function (err, data) {\n if (err && data && tried < 5) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n });\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null, _objectSpread({}, options, {\n isUpdate: isUpdate\n }));\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n whitelist: false,\n nonExplicitWhitelist: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: false\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.whitelist) {\n if (options.whitelist && options.whitelist.indexOf('cimode') < 0) {\n options.whitelist = options.whitelist.concat(['cimode']);\n }\n options.supportedLngs = options.whitelist;\n }\n if (options.nonExplicitWhitelist) {\n options.nonExplicitSupportedLngs = options.nonExplicitWhitelist;\n }\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\nfunction noop() {}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _possibleConstructorReturn(this, _getPrototypeOf(I18n).call(this));\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (options.whitelist && !options.supportedLngs) {\n this.logger.deprecate('whitelist', 'option \"whitelist\" will be renamed to \"supportedLngs\" in the next major - please make sure to rename this option asap.');\n }\n if (options.nonExplicitWhitelist && !options.nonExplicitSupportedLngs) {\n this.logger.deprecate('whitelist', 'options \"nonExplicitWhitelist\" will be renamed to \"nonExplicitSupportedLngs\" in the next major - please make sure to rename this option asap.');\n }\n this.options = _objectSpread({}, get(), this.options, transformOptions(options));\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, usedCallback);\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var done = function done(err, l) {\n if (l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n var setLng = function setLng(lngs) {\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n this.services.languageDetector.detect(setLng);\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n return _this5.t(key, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.languages && this.languages.length > 0 ? this.languages[0] : this.language;\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam'];\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) >= 0 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"createInstance\",\n value: function createInstance() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread({}, this.options, options, {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }]);\n return I18n;\n}(EventEmitter);\nvar i18next = new I18n();\nexport default i18next;","\"use strict\";\n\nmodule.exports = Object.assign;","module.exports = __webpack_public_path__ + \"static/entrepot-4ae49324bacc2100d3d771c5ffaf40d9.jpg\";","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/* eslint-disable jsx-a11y/anchor-has-content */\nimport React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"invariant\";\nimport createContext from \"create-react-context\";\nimport { polyfill } from \"react-lifecycles-compat\";\nimport { startsWith, pick, resolve, match, insertParams, validateRedirect, shallowCompare } from \"./lib/utils\";\nimport { globalHistory, navigate, createHistory, createMemorySource } from \"./lib/history\";\n\n////////////////////////////////////////////////////////////////////////////////\n\nvar createNamedContext = function createNamedContext(name, defaultValue) {\n var Ctx = createContext(defaultValue);\n Ctx.displayName = name;\n return Ctx;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Location Context/Provider\nvar LocationContext = createNamedContext(\"Location\");\n\n// sets up a listener if there isn't one already so apps don't need to be\n// wrapped in some top level provider\nvar Location = function Location(_ref) {\n var children = _ref.children;\n return React.createElement(\n LocationContext.Consumer,\n null,\n function (context) {\n return context ? children(context) : React.createElement(\n LocationProvider,\n null,\n children\n );\n }\n );\n};\n\nvar LocationProvider = function (_React$Component) {\n _inherits(LocationProvider, _React$Component);\n\n function LocationProvider() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, LocationProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n context: _this.getContext(),\n refs: { unlisten: null }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n LocationProvider.prototype.getContext = function getContext() {\n var _props$history = this.props.history,\n navigate = _props$history.navigate,\n location = _props$history.location;\n\n return { navigate: navigate, location: location };\n };\n\n LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {\n if (isRedirect(error)) {\n var _navigate = this.props.history.navigate;\n\n _navigate(error.uri, { replace: true });\n } else {\n throw error;\n }\n };\n\n LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevState.context.location !== this.state.context.location) {\n this.props.history._onTransitionComplete();\n }\n };\n\n LocationProvider.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n var refs = this.state.refs,\n history = this.props.history;\n\n history._onTransitionComplete();\n refs.unlisten = history.listen(function () {\n Promise.resolve().then(function () {\n // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306\n requestAnimationFrame(function () {\n if (!_this2.unmounted) {\n _this2.setState(function () {\n return { context: _this2.getContext() };\n });\n }\n });\n });\n });\n };\n\n LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {\n var refs = this.state.refs;\n\n this.unmounted = true;\n refs.unlisten();\n };\n\n LocationProvider.prototype.render = function render() {\n var context = this.state.context,\n children = this.props.children;\n\n return React.createElement(\n LocationContext.Provider,\n { value: context },\n typeof children === \"function\" ? children(context) : children || null\n );\n };\n\n return LocationProvider;\n}(React.Component);\n\n////////////////////////////////////////////////////////////////////////////////\n\n\nLocationProvider.defaultProps = {\n history: globalHistory\n};\nprocess.env.NODE_ENV !== \"production\" ? LocationProvider.propTypes = {\n history: PropTypes.object.isRequired\n} : void 0;\nvar ServerLocation = function ServerLocation(_ref2) {\n var url = _ref2.url,\n children = _ref2.children;\n\n var searchIndex = url.indexOf(\"?\");\n var searchExists = searchIndex > -1;\n var pathname = void 0;\n var search = \"\";\n var hash = \"\";\n\n if (searchExists) {\n pathname = url.substring(0, searchIndex);\n search = url.substring(searchIndex);\n } else {\n pathname = url;\n }\n\n return React.createElement(\n LocationContext.Provider,\n {\n value: {\n location: {\n pathname: pathname,\n search: search,\n hash: hash\n },\n navigate: function navigate() {\n throw new Error(\"You can't call navigate on the server.\");\n }\n }\n },\n children\n );\n};\n////////////////////////////////////////////////////////////////////////////////\n// Sets baseuri and basepath for nested routers and links\nvar BaseContext = createNamedContext(\"Base\", { baseuri: \"/\", basepath: \"/\" });\n\n////////////////////////////////////////////////////////////////////////////////\n// The main event, welcome to the show everybody.\nvar Router = function Router(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (baseContext) {\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RouterImpl, _extends({}, baseContext, locationContext, props));\n }\n );\n }\n );\n};\n\nvar RouterImpl = function (_React$PureComponent) {\n _inherits(RouterImpl, _React$PureComponent);\n\n function RouterImpl() {\n _classCallCheck(this, RouterImpl);\n\n return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));\n }\n\n RouterImpl.prototype.render = function render() {\n var _props = this.props,\n location = _props.location,\n _navigate2 = _props.navigate,\n basepath = _props.basepath,\n primary = _props.primary,\n children = _props.children,\n baseuri = _props.baseuri,\n _props$component = _props.component,\n component = _props$component === undefined ? \"div\" : _props$component,\n domProps = _objectWithoutProperties(_props, [\"location\", \"navigate\", \"basepath\", \"primary\", \"children\", \"baseuri\", \"component\"]);\n\n var routes = React.Children.toArray(children).reduce(function (array, child) {\n var routes = createRoute(basepath)(child);\n return array.concat(routes);\n }, []);\n var pathname = location.pathname;\n\n\n var match = pick(routes, pathname);\n\n if (match) {\n var params = match.params,\n uri = match.uri,\n route = match.route,\n element = match.route.value;\n\n // remove the /* from the end for child routes relative paths\n\n basepath = route.default ? basepath : route.path.replace(/\\*$/, \"\");\n\n var props = _extends({}, params, {\n uri: uri,\n location: location,\n navigate: function navigate(to, options) {\n return _navigate2(resolve(to, uri), options);\n }\n });\n\n var clone = React.cloneElement(element, props, element.props.children ? React.createElement(\n Router,\n { location: location, primary: primary },\n element.props.children\n ) : undefined);\n\n // using 'div' for < 16.3 support\n var FocusWrapper = primary ? FocusHandler : component;\n // don't pass any props to 'div'\n var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;\n\n return React.createElement(\n BaseContext.Provider,\n { value: { baseuri: uri, basepath: basepath } },\n React.createElement(\n FocusWrapper,\n wrapperProps,\n clone\n )\n );\n } else {\n // Not sure if we want this, would require index routes at every level\n // warning(\n // false,\n // `\\n\\nNothing matched:\\n\\t${\n // location.pathname\n // }\\n\\nPaths checked: \\n\\t${routes\n // .map(route => route.path)\n // .join(\n // \"\\n\\t\"\n // )}\\n\\nTo get rid of this warning, add a default NotFound component as child of Router:\n // \\n\\tlet NotFound = () =>
Not Found!
\n // \\n\\t\\n\\t \\n\\t {/* ... */}\\n\\t`\n // );\n return null;\n }\n };\n\n return RouterImpl;\n}(React.PureComponent);\n\nRouterImpl.defaultProps = {\n primary: true\n};\n\n\nvar FocusContext = createNamedContext(\"Focus\");\n\nvar FocusHandler = function FocusHandler(_ref3) {\n var uri = _ref3.uri,\n location = _ref3.location,\n component = _ref3.component,\n domProps = _objectWithoutProperties(_ref3, [\"uri\", \"location\", \"component\"]);\n\n return React.createElement(\n FocusContext.Consumer,\n null,\n function (requestFocus) {\n return React.createElement(FocusHandlerImpl, _extends({}, domProps, {\n component: component,\n requestFocus: requestFocus,\n uri: uri,\n location: location\n }));\n }\n );\n};\n\n// don't focus on initial render\nvar initialRender = true;\nvar focusHandlerCount = 0;\n\nvar FocusHandlerImpl = function (_React$Component2) {\n _inherits(FocusHandlerImpl, _React$Component2);\n\n function FocusHandlerImpl() {\n var _temp2, _this4, _ret2;\n\n _classCallCheck(this, FocusHandlerImpl);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {\n if (!_this4.state.shouldFocus && node) {\n node.focus();\n }\n }, _temp2), _possibleConstructorReturn(_this4, _ret2);\n }\n\n FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n var initial = prevState.uri == null;\n if (initial) {\n return _extends({\n shouldFocus: true\n }, nextProps);\n } else {\n var myURIChanged = nextProps.uri !== prevState.uri;\n var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;\n return _extends({\n shouldFocus: myURIChanged || navigatedUpToMe\n }, nextProps);\n }\n };\n\n FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {\n focusHandlerCount++;\n this.focus();\n };\n\n FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {\n focusHandlerCount--;\n if (focusHandlerCount === 0) {\n initialRender = true;\n }\n };\n\n FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevProps.location !== this.props.location && this.state.shouldFocus) {\n this.focus();\n }\n };\n\n FocusHandlerImpl.prototype.focus = function focus() {\n if (process.env.NODE_ENV === \"test\") {\n // getting cannot read property focus of null in the tests\n // and that bit of global `initialRender` state causes problems\n // should probably figure it out!\n return;\n }\n\n var requestFocus = this.props.requestFocus;\n\n\n if (requestFocus) {\n requestFocus(this.node);\n } else {\n if (initialRender) {\n initialRender = false;\n } else if (this.node) {\n // React polyfills [autofocus] and it fires earlier than cDM,\n // so we were stealing focus away, this line prevents that.\n if (!this.node.contains(document.activeElement)) {\n this.node.focus();\n }\n }\n }\n };\n\n FocusHandlerImpl.prototype.render = function render() {\n var _this5 = this;\n\n var _props2 = this.props,\n children = _props2.children,\n style = _props2.style,\n requestFocus = _props2.requestFocus,\n _props2$component = _props2.component,\n Comp = _props2$component === undefined ? \"div\" : _props2$component,\n uri = _props2.uri,\n location = _props2.location,\n domProps = _objectWithoutProperties(_props2, [\"children\", \"style\", \"requestFocus\", \"component\", \"uri\", \"location\"]);\n\n return React.createElement(\n Comp,\n _extends({\n style: _extends({ outline: \"none\" }, style),\n tabIndex: \"-1\",\n ref: function ref(n) {\n return _this5.node = n;\n }\n }, domProps),\n React.createElement(\n FocusContext.Provider,\n { value: this.requestFocus },\n this.props.children\n )\n );\n };\n\n return FocusHandlerImpl;\n}(React.Component);\n\npolyfill(FocusHandlerImpl);\n\nvar k = function k() {};\n\n////////////////////////////////////////////////////////////////////////////////\nvar forwardRef = React.forwardRef;\n\nif (typeof forwardRef === \"undefined\") {\n forwardRef = function forwardRef(C) {\n return C;\n };\n}\n\nvar Link = forwardRef(function (_ref4, ref) {\n var innerRef = _ref4.innerRef,\n props = _objectWithoutProperties(_ref4, [\"innerRef\"]);\n\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref5) {\n var basepath = _ref5.basepath,\n baseuri = _ref5.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref6) {\n var location = _ref6.location,\n navigate = _ref6.navigate;\n\n var to = props.to,\n state = props.state,\n replace = props.replace,\n _props$getProps = props.getProps,\n getProps = _props$getProps === undefined ? k : _props$getProps,\n anchorProps = _objectWithoutProperties(props, [\"to\", \"state\", \"replace\", \"getProps\"]);\n\n var href = resolve(to, baseuri);\n var encodedHref = encodeURI(href);\n var isCurrent = location.pathname === encodedHref;\n var isPartiallyCurrent = startsWith(location.pathname, encodedHref);\n\n return React.createElement(\"a\", _extends({\n ref: ref || innerRef,\n \"aria-current\": isCurrent ? \"page\" : undefined\n }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {\n href: href,\n onClick: function onClick(event) {\n if (anchorProps.onClick) anchorProps.onClick(event);\n if (shouldNavigate(event)) {\n event.preventDefault();\n var shouldReplace = replace;\n if (typeof replace !== \"boolean\" && isCurrent) {\n var _location$state = _extends({}, location.state),\n key = _location$state.key,\n restState = _objectWithoutProperties(_location$state, [\"key\"]);\n\n shouldReplace = shallowCompare(_extends({}, state), restState);\n }\n navigate(href, {\n state: state,\n replace: shouldReplace\n });\n }\n }\n }));\n }\n );\n }\n );\n});\n\nLink.displayName = \"Link\";\n\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes = {\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nfunction RedirectRequest(uri) {\n this.uri = uri;\n}\n\nvar isRedirect = function isRedirect(o) {\n return o instanceof RedirectRequest;\n};\n\nvar redirectTo = function redirectTo(to) {\n throw new RedirectRequest(to);\n};\n\nvar RedirectImpl = function (_React$Component3) {\n _inherits(RedirectImpl, _React$Component3);\n\n function RedirectImpl() {\n _classCallCheck(this, RedirectImpl);\n\n return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));\n }\n\n // Support React < 16 with this hook\n RedirectImpl.prototype.componentDidMount = function componentDidMount() {\n var _props3 = this.props,\n navigate = _props3.navigate,\n to = _props3.to,\n from = _props3.from,\n _props3$replace = _props3.replace,\n replace = _props3$replace === undefined ? true : _props3$replace,\n state = _props3.state,\n noThrow = _props3.noThrow,\n baseuri = _props3.baseuri,\n props = _objectWithoutProperties(_props3, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n Promise.resolve().then(function () {\n var resolvedTo = resolve(to, baseuri);\n navigate(insertParams(resolvedTo, props), { replace: replace, state: state });\n });\n };\n\n RedirectImpl.prototype.render = function render() {\n var _props4 = this.props,\n navigate = _props4.navigate,\n to = _props4.to,\n from = _props4.from,\n replace = _props4.replace,\n state = _props4.state,\n noThrow = _props4.noThrow,\n baseuri = _props4.baseuri,\n props = _objectWithoutProperties(_props4, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n var resolvedTo = resolve(to, baseuri);\n if (!noThrow) redirectTo(insertParams(resolvedTo, props));\n return null;\n };\n\n return RedirectImpl;\n}(React.Component);\n\nvar Redirect = function Redirect(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref7) {\n var baseuri = _ref7.baseuri;\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));\n }\n );\n }\n );\n};\n\nprocess.env.NODE_ENV !== \"production\" ? Redirect.propTypes = {\n from: PropTypes.string,\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nvar Match = function Match(_ref8) {\n var path = _ref8.path,\n children = _ref8.children;\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref9) {\n var baseuri = _ref9.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref10) {\n var navigate = _ref10.navigate,\n location = _ref10.location;\n\n var resolvedPath = resolve(path, baseuri);\n var result = match(resolvedPath, location.pathname);\n return children({\n navigate: navigate,\n location: location,\n match: result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null\n });\n }\n );\n }\n );\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Hooks\n\nvar useLocation = function useLocation() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.location;\n};\n\nvar useNavigate = function useNavigate() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.navigate;\n};\n\nvar useParams = function useParams() {\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var results = match(context.basepath, location.pathname);\n\n return results ? results.params : null;\n};\n\nvar useMatch = function useMatch(path) {\n if (!path) {\n throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");\n }\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var resolvedPath = resolve(path, context.baseuri);\n var result = match(resolvedPath, location.pathname);\n return result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar stripSlashes = function stripSlashes(str) {\n return str.replace(/(^\\/+|\\/+$)/g, \"\");\n};\n\nvar createRoute = function createRoute(basepath) {\n return function (element) {\n if (!element) {\n return null;\n }\n\n if (element.type === React.Fragment && element.props.children) {\n return React.Children.map(element.props.children, createRoute(basepath));\n }\n !(element.props.path || element.props.default || element.type === Redirect) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \": Children of must have a `path` or `default` prop, or be a ``. None found on element type `\" + element.type + \"`\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && (!element.props.from || !element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" requires both \\\"from\\\" and \\\"to\\\" props when inside a .\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && !validateRedirect(element.props.from, element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.\") : invariant(false) : void 0;\n\n if (element.props.default) {\n return { value: element, default: true };\n }\n\n var elementPath = element.type === Redirect ? element.props.from : element.props.path;\n\n var path = elementPath === \"/\" ? basepath : stripSlashes(basepath) + \"/\" + stripSlashes(elementPath);\n\n return {\n value: element,\n default: element.props.default,\n path: element.props.children ? stripSlashes(path) + \"/*\" : path\n };\n };\n};\n\nvar shouldNavigate = function shouldNavigate(event) {\n return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n};\n\n////////////////////////////////////////////////////////////////////////\nexport { Link, Location, LocationProvider, Match, Redirect, Router, ServerLocation, createHistory, createMemorySource, isRedirect, navigate, redirectTo, globalHistory, match as matchPath, useLocation, useNavigate, useParams, useMatch , BaseContext };","module.exports = __webpack_public_path__ + \"static/mgrenier@2x-ce27c509a6dcd1836f03080d59686aa6.jpg\";","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = __webpack_public_path__ + \"static/fretlink-process-342fd1fc83ee205a115ff6cebeae59e4.png\";","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n strings.raw = raw;\n return strings;\n}\nmodule.exports = _taggedTemplateLiteralLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","\"use strict\";\n\nexports.__esModule = true;\nexports.parsePath = parsePath;\n\nfunction parsePath(path) {\n var pathname = path || \"/\";\n var search = \"\";\n var hash = \"\";\n var hashIndex = pathname.indexOf(\"#\");\n\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex);\n pathname = pathname.substr(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf(\"?\");\n\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex);\n pathname = pathname.substr(0, searchIndex);\n }\n\n return {\n pathname: pathname,\n search: search === \"?\" ? \"\" : search,\n hash: hash === \"#\" ? \"\" : hash\n };\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","module.exports = __webpack_public_path__ + \"static/activity-zones-316eba3ab4c151f0d1de56e41e6fb0a8.png\";","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","import prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst preferDefault = m => (m && m.default) || m\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = path => {\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json`\n}\n\nfunction doFetch(url, method = `GET`) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\nconst toPageResources = (pageData, component = null) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n }\n\n return {\n component,\n json: pageData.result,\n page,\n }\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = {}\n this.pageDataDb = new Map()\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404 page and it doesn't exist, we're done\n if (pagePath === `/404.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n const pageData = this.pageDataDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !page.payload.stale) {\n return Promise.resolve(page.payload)\n }\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n const inFlightPromise = Promise.all([\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]).then(allData => {\n const result = allData[1]\n if (result.status === PageResourceStatus.Error) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = result.payload\n const { componentChunkName, staticQueryHashes = [] } = pageData\n\n const finalResult = {}\n\n const componentChunkPromise = this.loadComponent(componentChunkName).then(\n component => {\n finalResult.createdAt = new Date()\n let pageResources\n if (!component) {\n finalResult.status = PageResourceStatus.Error\n } else {\n finalResult.status = PageResourceStatus.Success\n if (result.notFound === true) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: allData[0]\n ? allData[0].webpackCompilationHash\n : ``,\n })\n pageResources = toPageResources(pageData, component)\n }\n // undefined if final result is an error\n return pageResources\n }\n )\n\n const staticQueryBatchPromise = Promise.all(\n staticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n ).then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return Promise.all([componentChunkPromise, staticQueryBatchPromise]).then(\n ([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n return payload\n }\n )\n })\n\n inFlightPromise\n .then(response => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if loading page ran into errors\n loadPageSync(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath).payload\n return pageData\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return false\n }\n\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return false\n }\n\n const realPath = findPath(pagePath)\n // Todo make doPrefetch logic cacheable\n // eslint-disable-next-line consistent-return\n this.doPrefetch(realPath).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n })\n\n return true\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return !page || page.notFound\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths) {\n const loadComponent = chunkName =>\n asyncRequires.components[chunkName]\n ? asyncRequires.components[chunkName]()\n .then(preferDefault)\n // loader will handle the case when component is null\n .catch(() => null)\n : Promise.resolve()\n\n super(loadComponent, matchPaths)\n }\n\n doPrefetch(pagePath) {\n return super.doPrefetch(pagePath).then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(() => pageData)\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n // Deprecated methods. As far as we're aware, these are only used by\n // core gatsby and the offline plugin, however there's a very small\n // chance they're called by others.\n getResourcesForPathname: rawPath => {\n console.warn(\n `Warning: getResourcesForPathname is deprecated. Use loadPage instead`\n )\n return instance.i.loadPage(rawPath)\n },\n getResourcesForPathnameSync: rawPath => {\n console.warn(\n `Warning: getResourcesForPathnameSync is deprecated. Use loadPageSync instead`\n )\n return instance.i.loadPageSync(rawPath)\n },\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n loadPageSync: rawPath => instance.loadPageSync(rawPath),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n\nexport function getStaticQueryResults() {\n if (instance) {\n return instance.staticQueryDb\n } else {\n return {}\n }\n}\n","\"use strict\";\n\nexports.__esModule = true;\nexports.LANGUAGE_KEY = void 0;\nvar LANGUAGE_KEY = 'gatsby-i18next-language';\nexports.LANGUAGE_KEY = LANGUAGE_KEY;","module.exports = __webpack_public_path__ + \"static/fleet-description-258b8f1757761969711481a530c024e2.png\";","var scope_0 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/1b2dd3e1ad4fceef6888362c450519dc.js').default;\nvar scope_1 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/1c7ee8291bc94a13e44ebab0b885c412.js').default;\nvar scope_2 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/5b874dc5fe25a8bb571d5423211bba5c.js').default;\nvar scope_3 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/652fb965204eb7f3a8817ca4f1efceec.js').default;\nvar scope_4 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/bc630d472957c0cea622bd23225ae6ee.js').default;\nvar scope_5 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/be9ccfc8fc8d2defe70a672913cdc355.js').default;\nvar scope_6 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/c4964074130151de75bed14606dcfb0a.js').default;\nvar scope_7 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/dbe9ad7cf2535824267263f02ebfcb0f.js').default;\nvar scope_8 = require('/home/ubuntu/builds/homepage/frontend/.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/f35d5560a3ee22c336a7ec938f6447fa.js').default;export default\n Object.assign({}, scope_0,\nscope_1,\nscope_2,\nscope_3,\nscope_4,\nscope_5,\nscope_6,\nscope_7,\nscope_8 )\n ","import React from \"react\"\nimport { MDXProvider, withMDXComponents } from \"@mdx-js/react\"\nimport { MDXScopeProvider } from \"./context\"\n\n/**\n * so, this import is weird right?\n *\n * # What it looks like:\n * we're importing a webpack loader directly into our runtime bundle\n *\n * # What it's actually doing:\n * We configure the `mdx-components` loader in gatsby-node's\n * `onCreateWebpackConfig`. The configuration sets the loader to handle its\n * own file, so if we import `./loaders/mdx-components`, the `mdx-components`\n * loader handles loading itself.\n *\n * # Why does this work?\n * The loader doesn't use the file argument to itself and instead returns\n * a generated file that includes the `gatsby-config` mdxPlugins wrapped in\n * require() statements. This results in the `mdxPlugins` being required\n * and available to the code after this import.\n *\n * # Have a better solution to this?\n * Submit a PR\n */\nimport { plugins as mdxPlugins } from \"./loaders/mdx-components\"\nimport scopeContexts from \"./loaders/mdx-scopes\"\n\nconst componentsAndGuards = {}\n\nconst componentFromGuards = arr =>\n function GatsbyMDXComponentFinder(props) {\n const { Component } = arr.find(({ guard }) => (guard ? guard(props) : true))\n return \n }\n\nmdxPlugins.forEach(({ guards = {}, components }) => {\n Object.entries(components).forEach(([componentName, Component]) => {\n if (componentsAndGuards[componentName]) {\n componentsAndGuards.push({ guard: guards[componentName], Component })\n } else {\n componentsAndGuards[componentName] = [\n { guard: guards[componentName], Component },\n ]\n }\n })\n})\n\nconst components = Object.entries(componentsAndGuards)\n .map(([name, arr]) => {\n return {\n [name]: componentFromGuards(\n arr.concat({ guard: undefined, Component: name })\n ),\n }\n })\n .reduce((acc, obj) => {\n return { ...acc, ...obj }\n }, {})\n\n// merge any components in wrapRootElement above this wrapRoot\nconst MDXConsumer = withMDXComponents(\n ({ components: componentsFromContext, children }) => (\n \n \n {children}\n \n \n )\n)\n\nconst WrapRootElement = ({ element }) => {element}\n\nexport default WrapRootElement\n","import wrap from \"./wrap-root-element\"\nexport const wrapRootElement = wrap\n","module.exports = {plugins: []}","import activityZones from \"../../../../src/business-cases/lys-transport/activity-zones.png\";\nimport fretlinkProcess from \"../../../../src/business-cases/lys-transport/fretlink-process.png\";\nimport fxlebot from \"../../../../src/business-cases/lys-transport/fxlebot@2x.jpg\";\nimport mreis from \"../../../../src/business-cases/lys-transport/mreis@2x.jpg\";\nimport offers from \"../../../../src/business-cases/lys-transport/offers.fr.png\";\nimport * as React from 'react';\nexport default {\n activityZones,\n fretlinkProcess,\n fxlebot,\n mreis,\n offers,\n React\n};","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollContainer = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _router = require(\"@reach/router\");\n\n// TODO: In Gatsby v3, this file should be removed.\n// We are deprecating this in V2 in favor of useScrollRestoration\nvar propTypes = {\n scrollKey: _propTypes.default.string.isRequired,\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired\n};\nvar hasNotWarnedDeprecation = true;\n\nvar ScrollContainerImplementation = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollContainerImplementation, _React$Component);\n\n function ScrollContainerImplementation(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n\n if (process.env.NODE_ENV !== \"production\" && hasNotWarnedDeprecation) {\n hasNotWarnedDeprecation = false;\n console.log(\"Deprecation Warning:\\n\\n Gatsby is deprecated in Gatsby v2 and will be removed in Gatsby v3.\\n Update to the React hook alternative useScrollRestoration, like this:.\\n \\n ```\\n import React from 'react';\\n import { useScrollRestoration } from 'gatsby-react-router-scroll';\\n\\n function Component() {\\n const scrollRestoration = useScrollRestoration('\" + _this.props.scrollKey + \"');\\n\\n return
    ;\\n }\\n ```\\n \");\n }\n\n return _this;\n }\n\n var _proto = ScrollContainerImplementation.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n // eslint-disable-next-line react/no-find-dom-node\n var node = _reactDom.default.findDOMNode(this);\n\n var _this$props = this.props,\n location = _this$props.location,\n scrollKey = _this$props.scrollKey;\n if (!node) return;\n node.addEventListener(\"scroll\", function () {\n _this2.props.context.save(location, scrollKey, node.scrollTop);\n });\n var position = this.props.context.read(location, scrollKey);\n node.scrollTo(0, position || 0);\n };\n\n _proto.render = function render() {\n return this.props.children;\n };\n\n return ScrollContainerImplementation;\n}(React.Component);\n\nvar ScrollContainer = function ScrollContainer(props) {\n return /*#__PURE__*/React.createElement(_router.Location, null, function (_ref) {\n var location = _ref.location;\n return /*#__PURE__*/React.createElement(_scrollHandler.ScrollContext.Consumer, null, function (context) {\n return /*#__PURE__*/React.createElement(ScrollContainerImplementation, (0, _extends2.default)({}, props, {\n context: context,\n location: location\n }));\n });\n });\n};\n\nexports.ScrollContainer = ScrollContainer;\nScrollContainer.propTypes = propTypes;","module.exports = __webpack_public_path__ + \"static/caveats-planning-88f78f123e2788b7a486bea1a8353d69.png\";","const {wrapPageElement} = require('./dist/plugin/wrapPageElement');\nexports.wrapPageElement = wrapPageElement;\n","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import activityZones from \"../../../../src/business-cases/lys-transport/activity-zones.png\";\nimport fxlebot from \"../../../../src/business-cases/lys-transport/fxlebot@2x.jpg\";\nimport mreis from \"../../../../src/business-cases/lys-transport/mreis@2x.jpg\";\nimport transportOffers from \"../../../../src/business-cases/lys-transport/offers.en.png\";\nimport * as React from 'react';\nexport default {\n activityZones,\n fxlebot,\n mreis,\n transportOffers,\n React\n};","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _gatsby = require(\"gatsby\");\n\nvar _getManifestPathname = _interopRequireDefault(require(\"./get-manifest-pathname\"));\n\n/* global __MANIFEST_PLUGIN_HAS_LOCALISATION__ */\n// when we don't have localisation in our manifest, we tree shake everything away\nif (__MANIFEST_PLUGIN_HAS_LOCALISATION__) {\n exports.onRouteUpdate = function (_ref, pluginOptions) {\n var location = _ref.location;\n var localize = pluginOptions.localize;\n var manifestFilename = (0, _getManifestPathname.default)(location.pathname, localize);\n var manifestEl = document.head.querySelector(\"link[rel=\\\"manifest\\\"]\");\n\n if (manifestEl) {\n manifestEl.setAttribute(\"href\", (0, _gatsby.withPrefix)(manifestFilename));\n }\n };\n}","/*\n Why commonjs and not ES imports/exports?\n\n This module is used to alias `create-react-context` package, but drop the the actual implementation part\n because Gatsby requires version of react that has implementatoin baked in.\n \n Package source is using ES modules:\n - https://github.com/jamiebuilds/create-react-context/blob/v0.3.0/src/index.js\n \n But to build this package `babel-plugin-add-module-exports` is used ( https://www.npmjs.com/package/babel-plugin-add-module-exports).\n Which result in both `module.exports` and `exports.default` being set to same thing.\n\n We don't use that babel plugin so we only have `exports.default`.\n\n This cause problems in various 3rd party react components that rely on `module.exports` being set.\n See https://github.com/gatsbyjs/gatsby/issues/23645 for example of it.\n \n Instead of adding same babel plugin we mimic output here. Adding babel plugin just for this would:\n a) unnecesairly slow down compilation for all other files (if we just apply it everywhere)\n b) or complicate babel-loader configuration with overwrite specifically for this file\n*/\n\nconst { createContext } = require(`react`)\n\nmodule.exports = createContext\nmodule.exports.default = createContext\n","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = __webpack_public_path__ + \"static/reporting-989ab8819509a85c592bde842eb629d6.png\";","module.exports = __webpack_public_path__ + \"static/mreis@1x-29156d6e66968d2c70f5b0396169cd4d.png\";","function _extends() {\n module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _extends.apply(this, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport loader from \"./loader\"\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.loadPageSync(location.pathname)\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.I18nextContext = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar I18nextContext = /*#__PURE__*/_react.default.createContext({\n language: 'en',\n languages: ['en'],\n routed: false,\n defaultLanguage: 'en',\n generateDefaultLanguagePage: false,\n originalPath: '/',\n path: '/'\n});\n\nexports.I18nextContext = I18nextContext;","module.exports = __webpack_public_path__ + \"static/activity-zones-1d5fd11ac0c55567faca683e68ad36e4.png\";","module.exports = __webpack_public_path__ + \"static/reporting-cc4bdede491103fd6fdbaeff9031c5f0.png\";","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nfunction startsWith(string, target, position) {\n var length = string.length;\n position = position == null ? 0 : position;\n if (position < 0) {\n position = 0;\n } else if (position > length) {\n position = length;\n }\n target = \"\".concat(target);\n return string.slice(position, position + target.length) == target;\n}\nfunction getBrowserLang() {\n if (typeof window === \"undefined\") {\n return null;\n }\n var lang = window.navigator.languages && window.navigator.languages[0] || window.navigator.language || window.navigator.browserLanguage || window.navigator.userLanguage || window.navigator.systemLanguage || null;\n return lang;\n}\nfunction normalizeCode(code) {\n return code.toLowerCase().replace(/-/, \"_\");\n}\nfunction getPreferredLanguage(options) {\n if (!options) {\n return getBrowserLang();\n }\n var languages = options.languages,\n fallback = options.fallback;\n if (!options.languages) {\n return fallback;\n } // some browsers report language as en-US instead of en_US\n\n var browserLanguage = normalizeCode(getBrowserLang());\n if (!browserLanguage) {\n return fallback;\n }\n var match = languages.filter(function (lang) {\n return normalizeCode(lang) === browserLanguage;\n });\n if (match.length > 0) {\n return match[0] || fallback;\n } // en == en_US\n\n var matchCodeOnly = languages.filter(function (lang) {\n return startsWith(browserLanguage, lang);\n });\n return matchCodeOnly[0] || fallback;\n}\nvar _default = getPreferredLanguage;\nexports.default = _default;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","const plugins = require(`./api-runner-browser-plugins`)\nconst {\n getResourcesForPathname,\n getResourcesForPathnameSync,\n getResourceURLsForPathname,\n loadPage,\n loadPageSync,\n} = require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n // Deprecated April 2019. Use `loadPageSync` instead\n args.getResourcesForPathnameSync = getResourcesForPathnameSync\n // Deprecated April 2019. Use `loadPage` instead\n args.getResourcesForPathname = getResourcesForPathname\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n","module.exports = __webpack_public_path__ + \"static/caveats-profits-0ec8d1485eeaa03b769f65c7e5c06759.png\";","import cdarma from \"../../../../src/business-cases/transports-caudron/cdarma@1x.png\";\nimport mreis from \"../../../../src/business-cases/transports-caudron/mreis@1x.png\";\nimport caveatsSpeed from \"../../../../src/business-cases/transports-caudron/caveats-speed.png\";\nimport activityZones from \"../../../../src/business-cases/transports-caudron/activity-zones.png\";\nimport fleetDescription from \"../../../../src/business-cases/transports-caudron/fleet-description.png\";\nimport caveatsPlanning from \"../../../../src/business-cases/transports-caudron/caveats-planning.png\";\nimport caveatsProfits from \"../../../../src/business-cases/transports-caudron/caveats-profits.png\";\nimport offers from \"../../../../src/business-cases/transports-caudron/offers.png\";\nimport reporting from \"../../../../src/business-cases/transports-caudron/reporting.png\";\nimport * as React from 'react';\nexport default {\n cdarma,\n mreis,\n caveatsSpeed,\n activityZones,\n fleetDescription,\n caveatsPlanning,\n caveatsProfits,\n offers,\n reporting,\n React\n};","module.exports = __webpack_public_path__ + \"static/priorisation_des_lignes-c7db8ee15724bcf9b2f68ab070a5f8a5.png\";","module.exports = __webpack_public_path__ + \"static/offers.en-05fc8e453e3c21b28f32923d2480fa6b.png\";"],"sourceRoot":""}