{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/img/placeholder/serviceCheck.png","webpack:///./src/components/HomepageOverlay/HomepageOverlay.vue?c31a","webpack:///src/components/HomepageOverlay/HomepageOverlay.vue","webpack:///./src/components/HomepageOverlay/HomepageOverlay.vue?855e","webpack:///./src/components/HomepageOverlay/HomepageOverlay.vue","webpack:///./src/utils/common-utils.js","webpack:///./src/components/MainNavigationV2/MainNavigationV2.vue?825e","webpack:///src/components/MainNavigationV2/MainNavigationV2.vue","webpack:///./src/components/MainNavigationV2/MainNavigationV2.vue?3a1e","webpack:///./src/components/MainNavigationV2/MainNavigationV2.vue","webpack:///./src/assets/img/placeholder/vehicle-vespa.png","webpack:///./src/assets/img/placeholder/accessory.png","webpack:///./src/assets/img/placeholder/contact-us.svg","webpack:///./src/components/Countries/Countries.vue?b592","webpack:///src/components/Countries/Countries.vue","webpack:///./src/components/Countries/Countries.vue?9a0e","webpack:///./src/components/Countries/Countries.vue","webpack:///./src/components/EditorialIcon/EditorialIcon.vue?75be","webpack:///src/components/EditorialIcon/EditorialIcon.vue","webpack:///./src/components/EditorialIcon/EditorialIcon.vue?7431","webpack:///./src/components/EditorialIcon/EditorialIcon.vue","webpack:///./src/assets/img/placeholder/vehicle-ape.png","webpack:///./src/components/Icons/Icon.vue?2d8f","webpack:///./src/components/FloatingShortcuts/FloatingShortcuts.vue?a990","webpack:///./src/components/Icons/Icon.vue?b316","webpack:///./src/components/Icons/icons.js","webpack:///src/components/Icons/Icon.vue","webpack:///./src/components/Icons/Icon.vue?46b6","webpack:///./src/components/Icons/Icon.vue","webpack:///src/components/FloatingShortcuts/FloatingShortcuts.vue","webpack:///./src/components/FloatingShortcuts/FloatingShortcuts.vue?281b","webpack:///./src/components/FloatingShortcuts/FloatingShortcuts.vue","webpack:///./src/assets/img/placeholder/service.png","webpack:///./src/components/Swatches/Swatches.vue?071b","webpack:///./src/components/MainNavigation/MainNavigationItem.vue?43e3","webpack:///./src/components/MainNavigation/NavigationTabs.vue?4420","webpack:///./src/components/MainNavigation/NavigationProductList.vue?8dd5","webpack:///src/components/MainNavigation/NavigationProductList.vue","webpack:///./src/components/MainNavigation/NavigationProductList.vue?79a7","webpack:///./src/components/MainNavigation/NavigationProductList.vue","webpack:///src/components/MainNavigation/NavigationTabs.vue","webpack:///./src/components/MainNavigation/NavigationTabs.vue?f42e","webpack:///./src/components/MainNavigation/NavigationTabs.vue","webpack:///./src/components/MainNavigation/NavigationItemEditorial.vue?5714","webpack:///src/components/MainNavigation/NavigationItemEditorial.vue","webpack:///./src/components/MainNavigation/NavigationItemEditorial.vue?8f2b","webpack:///./src/components/MainNavigation/NavigationItemEditorial.vue","webpack:///src/components/MainNavigation/MainNavigationItem.vue","webpack:///./src/components/MainNavigation/MainNavigationItem.vue?9245","webpack:///./src/components/MainNavigation/MainNavigationItem.vue","webpack:///./src/assets/img/placeholder/serviceServicePack.png","webpack:///./src/components/FormSelect/FormSelect.vue?7b37","webpack:///src/components/FormSelect/FormSelect.vue","webpack:///./src/components/FormSelect/FormSelect.vue?684b","webpack:///./src/components/FormSelect/FormSelect.vue","webpack:///./src/components/Image/Image.vue?4890","webpack:///src/components/Image/Image.vue","webpack:///./src/components/Image/Image.vue?8b63","webpack:///./src/components/Image/Image.vue","webpack:///./src/mixins/mixins.js","webpack:///./src/components/Footer/Footer.vue?bb3e","webpack:///src/components/Footer/Footer.vue","webpack:///./src/components/Footer/Footer.vue?2f3e","webpack:///./src/components/Footer/Footer.vue","webpack:///./src/components/GigyaCommunity/gigya-script/onAfterScreenLoad.js","webpack:///./src/components/Loader/Loader.vue?a90c","webpack:///src/components/Loader/Loader.vue","webpack:///./src/components/Loader/Loader.vue?c11e","webpack:///./src/components/Loader/Loader.vue","webpack:///./src/components/DebugPanel.vue?eaad","webpack:///src/components/DebugPanel.vue","webpack:///./src/components/DebugPanel.vue?4920","webpack:///./src/components/DebugPanel.vue","webpack:///./src/components/VuePageLayout.vue?7662","webpack:///./src/components/SantanderFinSim/SantaderFinSim.vue?2dc9","webpack:///src/components/SantanderFinSim/SantaderFinSim.vue","webpack:///./src/components/SantanderFinSim/SantaderFinSim.vue?d0d9","webpack:///./src/components/SantanderFinSim/SantaderFinSim.vue","webpack:///./src/components/MarketingToolModal/MarketingToolModal.vue?5489","webpack:///./src/components/FormSelectBrand/FormSelectBrand.vue?880b","webpack:///src/components/FormSelectBrand/FormSelectBrand.vue","webpack:///./src/components/FormSelectBrand/FormSelectBrand.vue?e78c","webpack:///./src/components/FormSelectBrand/FormSelectBrand.vue","webpack:///src/components/MarketingToolModal/MarketingToolModal.vue","webpack:///./src/components/MarketingToolModal/MarketingToolModal.vue?9ccc","webpack:///./src/components/MarketingToolModal/MarketingToolModal.vue","webpack:///./src/components/GoToTop/GoToTop.vue?f74a","webpack:///src/components/GoToTop/GoToTop.vue","webpack:///./src/components/GoToTop/GoToTop.vue?6f56","webpack:///./src/components/GoToTop/GoToTop.vue","webpack:///./src/components/GigyaCommunity/GigyaModalOverlay.vue?6995","webpack:///src/components/GigyaCommunity/GigyaModalOverlay.vue","webpack:///./src/components/GigyaCommunity/GigyaModalOverlay.vue?d180","webpack:///./src/components/GigyaCommunity/GigyaModalOverlay.vue","webpack:///src/components/VuePageLayout.vue","webpack:///./src/components/VuePageLayout.vue?e4e2","webpack:///./src/components/VuePageLayout.vue","webpack:///./src/components/Msg/Msg.vue?9e59","webpack:///src/components/Msg/Msg.vue","webpack:///./src/components/Msg/Msg.vue?963c","webpack:///./src/components/Msg/Msg.vue","webpack:///./src/filters/common.js","webpack:///./src/plugins/msg.js","webpack:///./src/plugins/gtm-manager.js","webpack:///./src/main.js","webpack:///./src/assets/img/placeholder/vehicle-aprilia.png","webpack:///./src/assets/img/placeholder/vehicle-motoguzzi.png","webpack:///./src/assets/img/placeholder/vehicle-piaggio.png","webpack:///./src/assets/img/placeholder/serviceXCareWarranty.png","webpack:///./src/components/HeaderV2/ContactsV2.vue?6562","webpack:///src/components/HeaderV2/ContactsV2.vue","webpack:///./src/components/HeaderV2/ContactsV2.vue?9995","webpack:///./src/components/HeaderV2/ContactsV2.vue","webpack:///./src/components/Swatch/Swatch.vue?a64d","webpack:///./src/components/Card-Product/Card-Product.vue?07d8","webpack:///./src/components/Swatches/Swatches.vue?a997","webpack:///src/components/Swatches/Swatches.vue","webpack:///./src/components/Swatches/Swatches.vue?04a2","webpack:///./src/components/Swatches/Swatches.vue","webpack:///src/components/Card-Product/Card-Product.vue","webpack:///./src/components/Card-Product/Card-Product.vue?6102","webpack:///./src/components/Card-Product/Card-Product.vue","webpack:///./src/components/Swatch/Swatch.vue?8234","webpack:///src/components/Swatch/Swatch.vue","webpack:///./src/components/Swatch/Swatch.vue?d21e","webpack:///./src/components/Swatch/Swatch.vue","webpack:///./src/components/Alert/Alert.vue?75bb","webpack:///src/components/Alert/Alert.vue","webpack:///./src/components/Alert/Alert.vue?3744","webpack:///./src/components/Alert/Alert.vue","webpack:///./src/components/Alert/Alert.vue?3bc4","webpack:///./src/assets/img/placeholder/dealer-locator.svg","webpack:///./src/assets/img/placeholder/serviceXCareMaintenance.png","webpack:///./src/assets/img/placeholder sync ^\\.\\/.*$","webpack:///./src/components/Footer/FooterColumn.vue?a28f","webpack:///src/components/Footer/FooterColumn.vue","webpack:///./src/components/Footer/FooterColumn.vue?c9ab","webpack:///./src/components/Footer/FooterColumn.vue","webpack:///./src/components/Divider/Divider.vue?5933","webpack:///src/components/Divider/Divider.vue","webpack:///./src/components/Divider/Divider.vue?5432","webpack:///./src/components/Divider/Divider.vue","webpack:///./src/components/MainNavigationV2/MainNavigationV2.vue?25d3","webpack:///./src/components/IconText/IconText.vue?af60","webpack:///src/components/IconText/IconText.vue","webpack:///./src/components/IconText/IconText.vue?86fa","webpack:///./src/components/IconText/IconText.vue","webpack:///./src/components/Tooltip/Tooltip.vue?14db","webpack:///./src/components/Header/Header.vue?420c","webpack:///src/components/Header/Header.vue","webpack:///./src/components/Header/Header.vue?be1e","webpack:///./src/components/Header/Header.vue","webpack:///./src/components/Button/Button.vue?efe7","webpack:///src/components/Button/Button.vue","webpack:///./src/components/Button/Button.vue?38ff","webpack:///./src/components/Button/Button.vue","webpack:///./src/components/Tooltip/Tooltip.vue?76de","webpack:///src/components/Tooltip/Tooltip.vue","webpack:///./src/components/Tooltip/Tooltip.vue?1726","webpack:///./src/components/Tooltip/Tooltip.vue","webpack:///./src/components/MainNavigation/MainNavigation.vue?317b","webpack:///src/components/MainNavigation/MainNavigation.vue","webpack:///./src/components/MainNavigation/MainNavigation.vue?2728","webpack:///./src/components/MainNavigation/MainNavigation.vue","webpack:///./src/components/MainNavigationV2/CardHighlightV2.vue?7624","webpack:///src/components/MainNavigationV2/CardHighlightV2.vue","webpack:///./src/components/MainNavigationV2/CardHighlightV2.vue?a924","webpack:///./src/components/MainNavigationV2/CardHighlightV2.vue","webpack:///./src/components/MainNavigation/MainNavigation.vue?bc13","webpack:///./src/utils/router.js","webpack:///./src/components/MainNavigationV2/MainNavigationItemV2.vue?c819","webpack:///./src/components/MainNavigationV2/NavigationItemEditorialV2.vue?ab7e","webpack:///src/components/MainNavigationV2/NavigationItemEditorialV2.vue","webpack:///./src/components/MainNavigationV2/NavigationItemEditorialV2.vue?43c1","webpack:///./src/components/MainNavigationV2/NavigationItemEditorialV2.vue","webpack:///./src/components/MainNavigationV2/NavigationProductListV2.vue?b05b","webpack:///src/components/MainNavigationV2/NavigationProductListV2.vue","webpack:///./src/components/MainNavigationV2/NavigationProductListV2.vue?66ee","webpack:///./src/components/MainNavigationV2/NavigationProductListV2.vue","webpack:///src/components/MainNavigationV2/MainNavigationItemV2.vue","webpack:///./src/components/MainNavigationV2/MainNavigationItemV2.vue?a291","webpack:///./src/components/MainNavigationV2/MainNavigationItemV2.vue","webpack:///./src/components/Advanced-Button-Wrapper/Advanced-Button-Wrapper.vue?54b2","webpack:///src/components/Advanced-Button-Wrapper/Advanced-Button-Wrapper.vue","webpack:///./src/components/Advanced-Button-Wrapper/Advanced-Button-Wrapper.vue?cc38","webpack:///./src/components/Advanced-Button-Wrapper/Advanced-Button-Wrapper.vue","webpack:///./src/components/Divider/Divider.vue?1547","webpack:///./src/components/Editorial/Editorial.vue?2de0","webpack:///src/components/Editorial/Editorial.vue","webpack:///./src/components/Editorial/Editorial.vue?9376","webpack:///./src/components/Editorial/Editorial.vue","webpack:///./src/components/ChangeLanguageCountry/ChangeLanguageCountry.vue?1063","webpack:///src/components/ChangeLanguageCountry/ChangeLanguageCountry.vue","webpack:///./src/components/ChangeLanguageCountry/ChangeLanguageCountry.vue?841f","webpack:///./src/components/ChangeLanguageCountry/ChangeLanguageCountry.vue","webpack:///./src/assets/img/placeholder/header-v2-community-login.svg","webpack:///./src/components/Button/Button.vue?4776","webpack:///./src/components/Card-Highlight/Card-Highlight.vue?40d0","webpack:///src/components/Card-Highlight/Card-Highlight.vue","webpack:///./src/components/Card-Highlight/Card-Highlight.vue?26a7","webpack:///./src/components/Card-Highlight/Card-Highlight.vue","webpack:///./src/components/HeaderV2/HeaderV2.vue?f436","webpack:///src/components/HeaderV2/HeaderV2.vue","webpack:///./src/components/HeaderV2/HeaderV2.vue?9b92","webpack:///./src/components/HeaderV2/HeaderV2.vue"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_h","$createElement","_c","_self","class","isLandscape","style","attrs","$attrs","staticClass","hpOverlayLogo","url","_e","media_name","$msg","_l","contentObj","index","indexHover","hpOverlayMedia","isMobile","hpOverlayMediaMobile","_f","on","$event","goTo","overlayLink","handleKeyDown","containerHover","containerHoverOut","hpContentLogo","ariaLabel","_v","_s","hpContentTextLogo","hpContentSubText","hpContentDescriptionText","legalNote","staticRenderFns","mixins","router","components","PgFooter","PgImage","shouldScroll","scrollInterval","shouldHide","hideInterval","lastTouchEnd","scrollBarWidth","translateX","closeOverlay","props","default","hpOverlayContent","Array","String","computed","isViewportLarge","innerWidth","matchMedia","matches","checkIsLandscape","innerHeight","created","bodyEl","classList","add","translateOverlay","handleResize","mounted","debug","addEventListener","log","screen","orientation","location","reload","methods","$router","replace","viewportMarginValue","analyticsData","evCategory","evAction","evLabel","component","arrayMove","arr","fromIndex","toIndex","element","arrayCopy","arraySortBy","order","comparingSign1","comparingSign2","sort","a","b","ref","secondaryAriaLabel","currentActive","isEditInterface","item","uuid","nestedItems","activeElement","toString","label","navigationListIcon","onBlank","_t","highlightItems","posterImage","PgButton","MainNavigationItemV2","visible","isNavigationOpen","overlayPosition","common","customerServiceLink","services","menuItemsObj","required","Boolean","hideNavigation","width","isHidden","handleKeyboard","allFocusableList","forEach","allFocusableListVisible","$eventHub","emit","preventDefault","focus","last","el","trim","overlayPositioning","handleOutsideClick","navigation","contains","body","overflowY","$emit","removeEventListener","ctx","inertEls","inertEl","eventParams","active","beforeDestroy","close","destroyed","_m","flagIcon","countries","continent","id","Name","country","CountrySite","CountryCD","site","URL","URLDescription","Language","directives","rawName","expression","modalCountryId","scopedSlots","_u","fn","proxy","Address","ZipCode","City","Phone","Email","Fax","sectionClass","model","editorialIcon","editorial","classes","iconName","title","domProps","text","linkLabel","link","setLinkType","sectionStyle","noFollow","PgIconText","totalItem","linkToDocument","$options","filters","mgnlMedia","mgnlLink","linkToPage","isHomepageOverlay","isZoomed","isVisible","isMenuOpen","ctaObj","marketingToolId","toggleMenu","indexOf","_k","keyCode","$mq","closeButtonText","icon","icons","isActiveElement","secondLevelNavigationComponent","itemToPass","productCardConf","subitem","refInFor","tabIndex","activateTab","button","changeTab","listingClasses","isNavTabsChild","itemsToShow","CardProduct","listingType","items","isBlank","attribute","hasHighlightItems","hasPosterImage","keys","NavigationProductList","$refs","nestedClasses","productSelect","hlitem","image","CardHighlight","NavigationTabs","Number","NavigationItemEditorial","staticStyle","$props","state","modelValue","options","disabled","ariaRequired","handleInputEvent","prop","isNotLazySrc","computeLazySrc","lazySrcset","sizes","alt","aspectRatio","backgroundColor","lazySrc","height","eventName","productType","brandCode","categoryCode","loading","placeholder","family","vehicleE","vehicleP","vehicleV","vehicleA","vehicleG","accessory","service","serviceXCareWarranty","serviceXCareMaintenance","serviceServicePack","serviceCheck","parseInt","$config","editMode","applyAspectRatio","paddingTop","getPlaceholder","category","callBackFunc","$el","setLoadingState","$once","load","observer","observe","mgnlComponentMixin","comments","mock","$root","$data","pageData","apiPath","vehiclePDPConfPath","vehiclePDPConfName","substring","lastIndexOf","vehiclePLPConfPath","vehiclePLPConfName","contentPath","jcrPath","contentPathParts","split","componentData","inheritedComponentData","commonMock","commonData","footerClass","communityFooterData","iconTitle","_b","communityFirstContact","communitySecondContact","logo","brandName","column","socialLinks","socialIcon","socialLink","socialLabel","brandNodeName","siteServiceParam","languages","currentLocale","disableChangeLang","currentCountry","showFlags","Editorial","Divider","PgChangeLanguageCountry","FooterColumn","EditorialIcon","brandNodePath","currentLanguage","includeCommunityFooter","imageStyle","layout","headingStyle","contact1","ctaLinks","contact2","actionMenu","footer","marginBottom","onAfterScreenLoad","currentScreen","getElementsByClassName","countryTags","children","getElementById","faq","faqRedirect","forgotPsw","forgotPswRedirect","registration","registrationRedirect","login","loginRedirect","policy","policyRedirect","querySelectorAll","birthInput","input","today","Date","currentYear","getFullYear","newValue","profile","birthYear","birthMonth","birthDay","year","month","day","birthDate","innerText","toLocaleDateString","closeBtnContainer","closeBtn","closeImg","querySelector","emailToBeVerified","email","brTag","emailTag","emailRegistrationSuccess","context","userEmail","response","requestParams","loginID","appendImage","elemClass","elemAlt","img","wrap","wrapper","insertBefore","appendButtonShowPassword","elemInput","parentElement","urlEyeOpen","urlEyeOpenHover","urlEyeClosed","urlEyeClosedHover","wrapperElem","buttonShowPassword","divPasswordVisible","divPasswordInvisible","onclick","toggle","forms","password","instanceID","passwordRetype","newPassword","checkboxes","checkbox","checked","elem","gigya","accounts","showScreenSet","screenSet","startScreen","containerID","ACC","config","encodedContextPath","getElementsById","getParentName","open","getLocalData","getModelData","dataLoaded","iframe","isHeaderV2","isOverlayConfigured","header","bookAppointmentLink","logoOnTransparent","navigationMobileLogo","mainNavigation","mainNavigationItemsV2","extraLink","extraLinkLabel","extraLinkIcon","extraLinkOnBlank","toggleContactUs","getStoreServiceRef","headerItems","listStyle","isContactUsVisible","storeServiceBtnWidth","isMainNavigationV2","mainNavigationItems","floatingShortcuts","actpageFullUrl","santanderFinancialSimulator","hpOverlayData","footerColumns","changeLanguages","includePreFooter","communityData","iconNamePreFooter","iconTitlePreFooter","contact1PreFooter","contact2PreFooter","goToTop","isSantanderSimulatorEnabled","prepareSantanderData","currentDataProduct","santanderFinSim","getCookieValue","cookie","getSantanderMarketingValue","cookieValue","replaceAll","includes","JSON","stringify","modelData","pdp","modalTitle","googleMapCountryZoom","resetModalState","formComponent","formParams","onBrandSelected","submitStatus","stopPropagation","onSubmit","callback","$$v","activeTab","opt","border","$v","form","brand","$model","brandLogo","invalidFeedback","validateState","ariaDescribedby","$set","downloadPdfLink","iframeHeight","validations","watch","$dirty","$error","$touch","$anyError","hidden","halfwayScroll","scrollToTop","halfPage","scrollPosition","onPageScrolling","updated","documentElement","offsetHeight","Math","max","pageYOffset","scrollTop","scrollTo","top","left","behavior","getMessage","cssClass","obj","attr","defaultValue","validAttrs","warn","subStr","string","begin","end","strippedContent","formatPrice","priceFormattingConfig","parseFloat","decimalCount","negativeSign","thousandsSeparator","priceThousandSep","decimalSeparator","priceDecimalSep","currency","priceCurrency","startWithCurrency","priceCurrencyOnStart","forceDecimal","abs","toFixed","integerPart","substr","decimalPart","price","MsgPlugin","install","Vue","msgKey","params","messages","translationsMock","$store","translations","labelValue","debugMode","param","gtmManager","$analytics","pushEvent","goToLink","familyModel","dataLayer","mgnlVueConfig","productionTip","ignoredElements","use","VueAxios","axios","VueConfig","EventHub","SocialSharing","Vue2Filters","messageMode","VueMq","breakpoints","small","medium","large","Infinity","whatInput","TabsPlugin","ModalPlugin","FormCheckboxPlugin","FormGroupPlugin","FormInputPlugin","FormRadioPlugin","FormSelectPlugin","FormDatepickerPlugin","FormTextareaPlugin","Hooper","Vuelidate","VueGoogleMaps","googleMapKey","libraries","region","language","installComponents","VueRouter","VDragged","Msg","DebugPanel","VueQRCodeComponent","filter","VuePageLayout","MgnlHeader","MgnlHeaderV2","MgnlFooter","MgnlFooterColumn","MgnlMainNavigation","MgnlMainNavigationItem","MgnlMainNavigationV2","MgnlMainNavigationItemV2","EditorialImmersive","MgnlEditorial","MgnlEditorialImmersive","EditorialArea","HotspotCarouselArea","EditorialQuote","EditorialTabs","EditorialCoverImage","CarouselV1","CarouselV2","CarouselV3","CarouselMotoplex","ProductPresentation","ProductPresentationImmersive","Hotspot","HotspotItem","IframeDlMap","Introduction","MgnlListingArticlesWithFeatured","MgnlCardPromotion","MgnlDynamicWrapper","FloatingShortcuts","FinancialSimulator","HubLinks","CardsWrapper","CardsWrapperCommunity","HeroSingleContent","PromotionCtaList","FormUpload","EventsCalendar","YouTubeLiveIframe","template","areaModel","$nextTick","queryString","$http","startsWith","isPromoActive","linkTextLabel","contactsUs","menuFloating","filteredSubMenuVoices","calculateMenuFloating","contactVoices","some","componentIs","sendAnalyticsData","mainCategoryCode","showPromo","plannedPrice","isToShowPromoLabel","showColors","colors","isThemeVespa","orderedColoredProducts","color","getName","discountedPrice","priceFormatting","showPlanned","PgSwatch","colorsToShow","moreColors","colorStyle","PgSwatches","showPromoLabel","vehicle","showPrice","identifier","select","currentPos","orderedByHex","$slots","selectClass","cardClass","promo","extendedName","google_tag_manager","ev","colorLabel","dismissible","sticky","map","webpackContext","req","webpackContextResolve","group","actives","columnId","inheritAttrs","targetId","click","getCommunityHomePagePath","handleScroll","getCustomHomepagePath","getHomepageNodePath","logoAlt","isCommunityEnabled","actpageTemplate","headerTitle","serviceClasses","isLogged","isModalOpen","toLowerCase","getCommunityProfilePath","PgAlert","lastScrollTop","statusClass","showPromoAlert","logoutRedirect","gigyaAfterLoadScript","homepageNodePath","customLogoLink","commonHeaderAriaLabel","getBrandNodePath","homePageCommunity","profileRedirectLink","isPrivateTemplate","st","elTarget","distanceToTop","showScreen","customLang","checkForRedirect","visibleOnlyForOwner","localStorage","FO","listingEventsRedirectLink","onLoadPage","errorCode","errorMessage","onFirstLogin","containsLoginCookie","innerHTML","userName","setItem","remove","removeItem","vin","MembershipCode_TheClan","MembershipCode_BeaRacer","isPrivateCommunityHomepagePage","hideShowCommunityCards","isPrivateCommunityEventDetailPage","getAccountInfo","include","getAccountInfoResponse","checkResultScript","loadScript","addingClickOnModal","removingClickOnModal","loadGigyaScript","dataset","className","loadAccountInfo","deleteAllCookies","cookieList","glt","communityLoginCheck","clear","redirectOnEventDetail","getItem","logout","convertScript","registrationRedirectLink","loginRedirectLink","forgotPswRedirectLink","faqRedirectLink","logoutRedirectLink","policyRedirectLink","_conv_q","expID","isDisabled","isLoading","ariaExpandedStatus","ariaPressedStatus","onClick","iconClass","hrefTarget","setRelAttr","linkText","htmlType","styleType","size","ariaPressed","ariaExpanded","targetBlank","linkNofollow","selfManageStatus","action","relAttr","nofollow","newVal","isButton","isIcon","isHighlightOrBackgroundVisible","ChangeLanguageCountry","MainNavigationItem","conditionEquality","conditionDefault","gradient","cta","fetchMgnlRoutes","path","routes","beforeEach","to","from","next","targetUrl","fullPath","match","getNestedItemsLength","viewAllLink","ctaLinkStyle","imageGradient","CardHighlightV2","isProduct","NavigationItemEditorialV2","NavigationProductListV2","setHeight","setModalHeight","multiplier","ctaLink","ctaParams","visibility","alignContent","verticalAlign","upperSubtitle","hideUpperSubtitle","subheadingTag","headingTag","headingClass","subHeadingBoldClasses","subtitle","isTextOnTwoColumns","alignImage","altImage","actionParam","AdvancedButtonWrapper","subtitleBold","textOnTwoColumns","verticalTextAlign","alignContentToCenter","alignImageToCenter","isInViewport","scrollToAnchor","anchor","scrollBy","requestAnimationFrame","$route","styleTag","createTextNode","css","locale","pageUri","placeHolderVisibility","showContacts","showSubMenu","MainNavigationV2","headerPosition","isNavigationExpanded","headerVoices","loadUserName","filteredServices","overflow","headerPositioning","headerServices","serviceName","accountLogin","accountLoginNav","headerNavTitle","userNameSpan","textContent","MembershipCode_ProudOwners","storeServiceWidth","storeService"],"mappings":"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EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAMJ,EAAIiB,GAAIjB,EAAS,OAAE,SAAS2N,EAAKxM,GAAO,OAAOf,EAAG,MAAM,CAAChB,IAAI+B,EAAMR,YAAY,UAAU,CAACP,EAAG,IAAI,CAACE,MAAO,QAAUqN,IAAQvN,EAAG,IAAI,CAACJ,EAAIkC,GAAGlC,EAAImC,GAAGwL,WAAa,IACnQ,EAAkB,GCDP,GACb,iBACA,cACA,uBACA,mBACA,aACA,WACA,mBACA,iBACA,iBACA,iBACA,WACA,WACA,aACA,YACA,QACA,gBACA,WACA,cACA,YACA,gBACA,cACA,kBACA,aACA,WACA,qBACA,gBACA,mBACA,uBACA,6BACA,UACA,QACA,QACA,aACA,mBACA,eACA,gBACA,aACA,UACA,SACA,YACA,OACA,oBACA,WACA,aACA,QACA,YACA,UACA,WACA,cACA,UACA,YACA,eACA,cACA,UACA,aACA,QACA,cACA,YACA,aACA,QACA,WACA,UACA,SACA,cACA,aACA,cACA,SACA,aACA,QACA,YACA,OACA,iBACA,YACA,OACA,cACA,SACA,UACA,WACA,MACA,iBACA,YACA,OACA,qBACA,gBACA,cACA,SACA,YACA,OACA,aACA,QACA,WACA,QACA,QACA,WACA,cACA,WACA,MACA,SACA,OACA,YACA,OACA,aACA,QACA,aACA,QACA,WACA,YACA,YACA,OACA,UACA,cACA,SACA,gBACA,aACA,YACA,mBACA,gBACA,WACA,iBACA,uBACA,kBACA,iBACA,UACA,cACA,aACA,gBACA,SACA,kBACA,aACA,OACA,OACA,MACA,SACA,YACA,YACA,OACA,UACA,eACA,UACA,YACA,OACA,OACA,QACA,WACA,UACA,MACA,SACA,SACA,WACA,iBACA,aACA,eACA,YACA,SC9IF,GACE5P,KAAM,UAENnF,KAAM,WACJ,MAAO,CACLgV,MAAOA,KCjBgV,I,wBCQzVpI,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,EAAAA,E,QCgBf,GACE,KA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","file":"js/app.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \"-\" + {\"chunk-0e45ab0a\":\"1f22bce0bfaf789031c1\",\"chunk-ec435bf0\":\"25a7e37753436436659b\",\"chunk-1d82b74c\":\"8fde910c9ca822485a1c\",\"chunk-20291322\":\"09d12b35290a22264e37\",\"chunk-26858f3e\":\"d41496938293511d8571\",\"chunk-18045af8\":\"dc2f6cad926bbcd3feba\",\"chunk-2d0afe17\":\"5011940b117108a4215d\",\"chunk-41957b65\":\"22e8f671b0881a38938a\",\"chunk-606edaf3\":\"c016aa8b00bc8c835291\",\"chunk-697cb670\":\"3e8d66d3cbbe3607f02b\",\"chunk-6dbe746b\":\"6c6e7f675e274b5fd006\",\"chunk-9e9c9b90\":\"dff03319a1024645712d\",\"chunk-75c2a332\":\"0f44e83cceb62988b45d\",\"chunk-60f418d4\":\"e655c382784d5968c131\",\"chunk-29c40494\":\"c15000d01683e1d81019\",\"chunk-2c9b8d06\":\"549cd63738cb737a4ba6\",\"chunk-2cc50662\":\"d8eb0d13db01070a8895\",\"chunk-2d0af8ad\":\"2c3a966194614a052821\",\"chunk-2d0b614d\":\"bf1746dd98447c672b0c\",\"chunk-2d0b6597\":\"97021eadb57fee07e4ea\",\"chunk-2d0bd28f\":\"aa505b17bef825fa6b2e\",\"chunk-2d0bda30\":\"174ddf326572c9030c13\",\"chunk-2d0bded9\":\"a6783a68d4c2aaab2ca8\",\"chunk-2d0c4c28\":\"3130bf7f3c0d343a3b44\",\"chunk-2d0d0647\":\"831a3ffeee139247096e\",\"chunk-2d0d3c95\":\"2597eb1400688f364aaa\",\"chunk-2d0d699d\":\"2ebc858d56703b762b41\",\"chunk-2d0db0f7\":\"9784542d8336def3dd5f\",\"chunk-2d0e5014\":\"f737d30e930fcbd4622f\",\"chunk-2d0f0ff2\":\"9d986b1d9067128eabd1\",\"chunk-2d2082e3\":\"3128758c9a14f778a895\",\"chunk-2d2102cc\":\"61448fc94562b2213ff7\",\"chunk-2d21e953\":\"7f389d21af2f52704e81\",\"chunk-2d224ec1\":\"4148ddb05d80bc3b19c8\",\"chunk-2d2261e7\":\"f19955d95c015a6f9938\",\"chunk-2d229415\":\"5e146e2eca87320717cd\",\"chunk-2d23015d\":\"c97dae8c24648acee95e\",\"chunk-2d2384c2\":\"ba94be85abccf7c6a6ae\",\"chunk-42737dcc\":\"15a759b448e4c3281d76\",\"chunk-1cb488af\":\"9e893237ce26cf46f853\",\"chunk-360a1575\":\"2cc697341516f9ca521e\",\"chunk-7d0597e0\":\"2da270f1346443447960\",\"chunk-c27c5b6c\":\"a1723904eac24e24c2ae\",\"chunk-86cd71ac\":\"3fc898588c3ab9056bd1\",\"chunk-68c3e0d7\":\"d3ac36cfc875d1f87e8c\",\"chunk-4b4cf850\":\"4cbb9d57f5a0cac4b9fe\",\"chunk-afa35d56\":\"dfbd3f2ef9fd6fda2d46\",\"chunk-2d22d70b\":\"89ad6c49307a7c633888\",\"chunk-38c3389e\":\"71e4a53279a62f1bce43\",\"chunk-118e7ef7\":\"22ef50aa7cc9a03a00c7\",\"chunk-20356e7f\":\"913fd29ea0639e1efd9d\",\"chunk-c7faf446\":\"2d90202e0dbdadb89386\",\"chunk-db6a3c98\":\"1c5915534c20c6b3ee91\",\"chunk-17a450a2\":\"b3237e7642b95aa8dffc\",\"chunk-791c521e\":\"303df6310ecab4fdf169\",\"chunk-de40d9c6\":\"972c91d8b3dd22359efe\",\"chunk-fb960be4\":\"f1246f06ac42d556f223\",\"chunk-169992f7\":\"c1691960ffe4a9d17cfe\",\"chunk-2d0c5014\":\"356fdf5af08e8142d94f\",\"chunk-4881a2bd\":\"09dbafd5bc337515ac6c\",\"chunk-2d0a461c\":\"b65c48d2bf1d0f50e1ee\",\"chunk-2d0a4990\":\"8ba0e082da86bfd131ec\",\"chunk-2d0ab129\":\"7b968eface6a4edac815\",\"chunk-2d0ac3b9\":\"9604e6db31c5bbf6d433\",\"chunk-2d0ae93b\":\"326eb859c3c3da0c9e96\",\"chunk-2d0afa0c\":\"6581c7d0b21e774f1b3b\",\"chunk-2d0bac39\":\"3558b3c873da47036648\",\"chunk-2d0bceb3\":\"8e48536b8ef1dd982381\",\"chunk-2d0c80c6\":\"4a5dfe20e18a0537266a\",\"chunk-2d0d7469\":\"a1736fc94c15c6c6335a\",\"chunk-2d0e454b\":\"972e3deb81cea5db742d\",\"chunk-2d217358\":\"3d04905d63aa762923b0\",\"chunk-2d21b490\":\"ffb2bf9bc5492ffa1f83\",\"chunk-2d22c302\":\"ca7cfa64efbad4dc2164\",\"chunk-2d22c58e\":\"fe1bcbffd2001b9de0fa\",\"chunk-2d22d72d\":\"34513b7d5dd91623ae88\",\"chunk-2d237c58\":\"b700a31807310f8d64bb\",\"chunk-54b314c7\":\"5156b02960e0d4f72077\",\"chunk-58884343\":\"1108d86d20d1c87bd239\",\"chunk-2d0deca7\":\"713d6ccd6db3e98e44ac\",\"chunk-a1b39ab0\":\"592d343e0d9b1d603f1e\",\"chunk-ab2f020a\":\"7859d80048b8e4057168\",\"chunk-1695d452\":\"2cb6c46deac7ad8b3e21\",\"chunk-584bbc38\":\"38cdb694f55f0de86c97\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-75c2a332\":1,\"chunk-60f418d4\":1,\"chunk-29c40494\":1,\"chunk-1cb488af\":1,\"chunk-360a1575\":1,\"chunk-7d0597e0\":1,\"chunk-c27c5b6c\":1,\"chunk-38c3389e\":1,\"chunk-20356e7f\":1,\"chunk-c7faf446\":1,\"chunk-db6a3c98\":1,\"chunk-17a450a2\":1,\"chunk-791c521e\":1,\"chunk-169992f7\":1,\"chunk-4881a2bd\":1,\"chunk-ab2f020a\":1,\"chunk-1695d452\":1,\"chunk-584bbc38\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \"-\" + {\"chunk-0e45ab0a\":\"1f22bce0bfaf789031c1\",\"chunk-ec435bf0\":\"25a7e37753436436659b\",\"chunk-1d82b74c\":\"8fde910c9ca822485a1c\",\"chunk-20291322\":\"09d12b35290a22264e37\",\"chunk-26858f3e\":\"d41496938293511d8571\",\"chunk-18045af8\":\"dc2f6cad926bbcd3feba\",\"chunk-2d0afe17\":\"5011940b117108a4215d\",\"chunk-41957b65\":\"22e8f671b0881a38938a\",\"chunk-606edaf3\":\"c016aa8b00bc8c835291\",\"chunk-697cb670\":\"3e8d66d3cbbe3607f02b\",\"chunk-6dbe746b\":\"6c6e7f675e274b5fd006\",\"chunk-9e9c9b90\":\"dff03319a1024645712d\",\"chunk-75c2a332\":\"0f44e83cceb62988b45d\",\"chunk-60f418d4\":\"e655c382784d5968c131\",\"chunk-29c40494\":\"c15000d01683e1d81019\",\"chunk-2c9b8d06\":\"549cd63738cb737a4ba6\",\"chunk-2cc50662\":\"d8eb0d13db01070a8895\",\"chunk-2d0af8ad\":\"2c3a966194614a052821\",\"chunk-2d0b614d\":\"bf1746dd98447c672b0c\",\"chunk-2d0b6597\":\"97021eadb57fee07e4ea\",\"chunk-2d0bd28f\":\"aa505b17bef825fa6b2e\",\"chunk-2d0bda30\":\"174ddf326572c9030c13\",\"chunk-2d0bded9\":\"a6783a68d4c2aaab2ca8\",\"chunk-2d0c4c28\":\"3130bf7f3c0d343a3b44\",\"chunk-2d0d0647\":\"831a3ffeee139247096e\",\"chunk-2d0d3c95\":\"2597eb1400688f364aaa\",\"chunk-2d0d699d\":\"2ebc858d56703b762b41\",\"chunk-2d0db0f7\":\"9784542d8336def3dd5f\",\"chunk-2d0e5014\":\"f737d30e930fcbd4622f\",\"chunk-2d0f0ff2\":\"9d986b1d9067128eabd1\",\"chunk-2d2082e3\":\"3128758c9a14f778a895\",\"chunk-2d2102cc\":\"61448fc94562b2213ff7\",\"chunk-2d21e953\":\"7f389d21af2f52704e81\",\"chunk-2d224ec1\":\"4148ddb05d80bc3b19c8\",\"chunk-2d2261e7\":\"f19955d95c015a6f9938\",\"chunk-2d229415\":\"5e146e2eca87320717cd\",\"chunk-2d23015d\":\"c97dae8c24648acee95e\",\"chunk-2d2384c2\":\"ba94be85abccf7c6a6ae\",\"chunk-42737dcc\":\"15a759b448e4c3281d76\",\"chunk-1cb488af\":\"9e893237ce26cf46f853\",\"chunk-360a1575\":\"2cc697341516f9ca521e\",\"chunk-7d0597e0\":\"2da270f1346443447960\",\"chunk-c27c5b6c\":\"a1723904eac24e24c2ae\",\"chunk-86cd71ac\":\"3fc898588c3ab9056bd1\",\"chunk-68c3e0d7\":\"d3ac36cfc875d1f87e8c\",\"chunk-4b4cf850\":\"4cbb9d57f5a0cac4b9fe\",\"chunk-afa35d56\":\"dfbd3f2ef9fd6fda2d46\",\"chunk-2d22d70b\":\"89ad6c49307a7c633888\",\"chunk-38c3389e\":\"71e4a53279a62f1bce43\",\"chunk-118e7ef7\":\"22ef50aa7cc9a03a00c7\",\"chunk-20356e7f\":\"913fd29ea0639e1efd9d\",\"chunk-c7faf446\":\"2d90202e0dbdadb89386\",\"chunk-db6a3c98\":\"1c5915534c20c6b3ee91\",\"chunk-17a450a2\":\"b3237e7642b95aa8dffc\",\"chunk-791c521e\":\"303df6310ecab4fdf169\",\"chunk-de40d9c6\":\"972c91d8b3dd22359efe\",\"chunk-fb960be4\":\"f1246f06ac42d556f223\",\"chunk-169992f7\":\"c1691960ffe4a9d17cfe\",\"chunk-2d0c5014\":\"356fdf5af08e8142d94f\",\"chunk-4881a2bd\":\"09dbafd5bc337515ac6c\",\"chunk-2d0a461c\":\"b65c48d2bf1d0f50e1ee\",\"chunk-2d0a4990\":\"8ba0e082da86bfd131ec\",\"chunk-2d0ab129\":\"7b968eface6a4edac815\",\"chunk-2d0ac3b9\":\"9604e6db31c5bbf6d433\",\"chunk-2d0ae93b\":\"326eb859c3c3da0c9e96\",\"chunk-2d0afa0c\":\"6581c7d0b21e774f1b3b\",\"chunk-2d0bac39\":\"3558b3c873da47036648\",\"chunk-2d0bceb3\":\"8e48536b8ef1dd982381\",\"chunk-2d0c80c6\":\"4a5dfe20e18a0537266a\",\"chunk-2d0d7469\":\"a1736fc94c15c6c6335a\",\"chunk-2d0e454b\":\"972e3deb81cea5db742d\",\"chunk-2d217358\":\"3d04905d63aa762923b0\",\"chunk-2d21b490\":\"ffb2bf9bc5492ffa1f83\",\"chunk-2d22c302\":\"ca7cfa64efbad4dc2164\",\"chunk-2d22c58e\":\"fe1bcbffd2001b9de0fa\",\"chunk-2d22d72d\":\"34513b7d5dd91623ae88\",\"chunk-2d237c58\":\"b700a31807310f8d64bb\",\"chunk-54b314c7\":\"5156b02960e0d4f72077\",\"chunk-58884343\":\"1108d86d20d1c87bd239\",\"chunk-2d0deca7\":\"713d6ccd6db3e98e44ac\",\"chunk-a1b39ab0\":\"592d343e0d9b1d603f1e\",\"chunk-ab2f020a\":\"7859d80048b8e4057168\",\"chunk-1695d452\":\"2cb6c46deac7ad8b3e21\",\"chunk-584bbc38\":\"38cdb694f55f0de86c97\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/docroot/mgnl-vue/dist/prod/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","module.exports = __webpack_public_path__ + \"img/serviceCheck.1336fb8a.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{class:[{'landscape': _vm.isLandscape},'homepage-overlay'],style:(_vm.translateX),attrs:{\"id\":(\"uuid-\" + (_vm.$attrs.uuid))}},[_c('div',{staticClass:\"homepage-overlay__wrapper\"},[_c('div',{staticClass:\"homepage-overlay__brand-logo-container\"},[_c('a',{attrs:{\"href\":\"#\"}},[(_vm.hpOverlayLogo.type === 'image')?_c('picture',[(_vm.hpOverlayLogo.url)?_c('source',{attrs:{\"srcset\":_vm.hpOverlayLogo.url}}):_vm._e(),_c('pg-image',{staticClass:\"overlay-brand-logo\",attrs:{\"lazy-src\":_vm.hpOverlayLogo.url,\"alt\":_vm.hpOverlayLogo.media_name,\"aria-label\":_vm.$msg('common.homepage-overlay.logo-aria-label')}})],1):_vm._e()])]),_vm._l((_vm.hpOverlayContent),function(contentObj,index){return _c('div',{key:index,class:'homepage-overlay__content side-' + index + _vm.indexHover},[(contentObj.hpOverlayMedia.type === 'image')?_c('picture',{staticClass:\"overlay-container-picture\"},[(_vm.isMobile && contentObj.hpOverlayMediaMobile)?_c('source',{attrs:{\"media\":\"(min-width:0) and (max-width:641px)\",\"srcset\":_vm._f(\"mgnlMedia\")(contentObj.hpOverlayMediaMobile,'url')}}):(_vm.isMobile && !contentObj.hpOverlayMediaMobile)?_c('source',{attrs:{\"media\":\"(min-width:0) and (max-width:641px)\",\"srcset\":_vm._f(\"mgnlMedia\")(contentObj.hpOverlayMedia,'url')}}):_c('source',{attrs:{\"media\":\"(min-width:641px)\",\"srcset\":_vm._f(\"mgnlMedia\")(contentObj.hpOverlayMedia,'url')}}),_c('pg-image',{staticClass:\"overlay-image\",attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(contentObj.hpOverlayMediaMobile,'url'),\"alt\":contentObj.hpOverlayMedia.media_name,\"aria-hidden\":\"true\"}})],1):_vm._e(),_c('ul',{staticClass:\"description-contents\",on:{\"click\":function($event){return _vm.goTo(contentObj.overlayLink.url)},\"keydown\":_vm.handleKeyDown,\"mouseenter\":function($event){return _vm.containerHover(index)},\"mouseleave\":function($event){return _vm.containerHoverOut(index)}}},[(contentObj.hpContentLogo)?_c('li',[_c('picture',[(contentObj.hpContentLogo.url)?_c('source',{attrs:{\"srcset\":contentObj.hpContentLogo.url}}):_vm._e(),_c('pg-image',{staticClass:\"content-logo\",attrs:{\"tabindex\":index,\"lazy-src\":contentObj.hpContentLogo.url,\"alt\":contentObj.hpContentLogo.media_name,\"data-url\":contentObj.overlayLink.url,\"aria-label\":_vm.ariaLabel(index)}})],1)]):(contentObj.hpContentTextLogo)?_c('li',{attrs:{\"tabindex\":index,\"data-url\":contentObj.overlayLink.url}},[_c('h1',{staticClass:\"content-text-logo\"},[_vm._v(\" \"+_vm._s(contentObj.hpContentTextLogo)+\" \")])]):_vm._e(),(contentObj.hpContentSubText)?_c('li',{attrs:{\"tabindex\":index,\"data-url\":contentObj.overlayLink.url}},[_c('h2',{staticClass:\"content-subtext-logo\"},[_vm._v(\" \"+_vm._s(contentObj.hpContentSubText)+\" \")])]):_vm._e(),(contentObj.hpContentDescriptionText)?_c('li',{staticClass:\"content-description\",attrs:{\"tabindex\":index,\"data-url\":contentObj.overlayLink.url}},[_c('p',{staticClass:\"content-description-text\"},[_vm._v(\" \"+_vm._s(contentObj.hpContentDescriptionText)+\" \")])]):_vm._e()])])})],2),_c('pg-footer',{attrs:{\"legalNote\":_vm.legalNote}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <section :style=\"translateX\"\n           :id=\"`uuid-${$attrs.uuid}`\"\n           :class=\"[{'landscape': isLandscape},'homepage-overlay']\">\n    <div class=\"homepage-overlay__wrapper\">\n      <div class=\"homepage-overlay__brand-logo-container\">\n        <a href=\"#\">\n          <picture v-if=\"hpOverlayLogo.type === 'image'\">\n            <source\n                :srcset=\"hpOverlayLogo.url\"\n                v-if=\"hpOverlayLogo.url\"\n            />\n            <pg-image\n                class=\"overlay-brand-logo\"\n                :lazy-src=\"hpOverlayLogo.url\"\n                :alt=\"hpOverlayLogo.media_name\"\n                :aria-label=\"$msg('common.homepage-overlay.logo-aria-label')\"\n            />\n          </picture>\n        </a>\n      </div>\n        <div v-for=\"(contentObj, index) in hpOverlayContent\"\n             :key=\"index\"\n             :class=\"'homepage-overlay__content side-' + index + indexHover\"\n        >\n          <picture v-if=\"contentObj.hpOverlayMedia.type === 'image'\" class=\"overlay-container-picture\">\n            <source\n                media=\"(min-width:0) and (max-width:641px)\"\n                :srcset=\"contentObj.hpOverlayMediaMobile | mgnlMedia('url')\"\n                v-if=\"isMobile && contentObj.hpOverlayMediaMobile\"\n            />\n            <source\n                media=\"(min-width:0) and (max-width:641px)\"\n                :srcset=\"contentObj.hpOverlayMedia | mgnlMedia('url')\"\n                v-else-if=\"isMobile && !contentObj.hpOverlayMediaMobile\"\n            />\n            <source\n                v-else\n                media=\"(min-width:641px)\"\n                :srcset=\"contentObj.hpOverlayMedia | mgnlMedia('url')\"\n            />\n            <pg-image\n                class=\"overlay-image\"\n                :lazy-src=\"contentObj.hpOverlayMediaMobile | mgnlMedia('url')\"\n                :alt=\"contentObj.hpOverlayMedia.media_name\"\n                aria-hidden=\"true\"\n            />\n          </picture>\n          <ul class=\"description-contents\"\n             @click=\"goTo(contentObj.overlayLink.url)\"\n             @keydown=\"handleKeyDown\"\n             @mouseenter=\"containerHover(index)\"\n             @mouseleave=\"containerHoverOut(index)\" >\n            <li v-if=\"contentObj.hpContentLogo\">\n              <picture>\n                <source\n                    :srcset=\"contentObj.hpContentLogo.url\"\n                    v-if=\"contentObj.hpContentLogo.url\"\n                />\n                <pg-image\n                    :tabindex=\"index\"\n                    class=\"content-logo\"\n                    :lazy-src=\"contentObj.hpContentLogo.url\"\n                    :alt=\"contentObj.hpContentLogo.media_name\"\n                    :data-url=\"contentObj.overlayLink.url\"\n                    :aria-label=\"ariaLabel(index)\"\n                />\n              </picture>\n            </li>\n            <li v-else-if=\"contentObj.hpContentTextLogo\" :tabindex=\"index\" :data-url=\"contentObj.overlayLink.url\">\n              <h1 class=\"content-text-logo\"> {{ contentObj.hpContentTextLogo }} </h1>\n            </li>\n            <li v-if=\"contentObj.hpContentSubText\" :tabindex=\"index\" :data-url=\"contentObj.overlayLink.url\">\n              <h2 class=\"content-subtext-logo\"> {{contentObj.hpContentSubText}} </h2>\n            </li>\n            <li v-if=\"contentObj.hpContentDescriptionText\" class=\"content-description\" :tabindex=\"index\" :data-url=\"contentObj.overlayLink.url\">\n              <p class=\"content-description-text\"> {{contentObj.hpContentDescriptionText}} </p>\n            </li>\n          </ul>\n        </div>\n    </div>\n    <pg-footer\n        :legalNote=\"legalNote\"\n    ></pg-footer>\n  </section>\n</template>\n\n<script>\nimport PgImage from \"../Image/Image.vue\";\nimport {mgnlComponentMixin} from \"@wl-vue-mixins/mixins\";\nimport router from '@wl-vue-utils/router.js'\nimport PgFooter from \"../Footer/Footer.vue\";\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n  router: router,\n  components: {\n    PgFooter,\n    PgImage,\n  },\n\n  data() {\n    return {\n      shouldScroll: true,\n      scrollInterval: null,\n      shouldHide: true,\n      hideInterval: null,\n      lastTouchEnd: 0,\n      scrollBarWidth: 0,\n      translateX: 0,\n      indexHover: '',\n      closeOverlay: false,\n      isLandscape: false\n    };\n  },\n\n  props: {\n    hpOverlayLogo: {\n      type: Object,\n      default: {}\n    },\n    hpOverlayContent: {\n      type: Array,\n      default: () => []\n    },\n    legalNote: {\n      type: String,\n      default: \"\"\n    }\n  },\n\n  computed: {\n    isViewportLarge() {\n      return window.innerWidth > 1920;\n    },\n    isMobile() {\n      return window.matchMedia('only screen and (max-width: 640px)').matches;\n    },\n    checkIsLandscape() {\n      return window.matchMedia('only screen and (max-width: 1366px)').matches && window.innerWidth > window.innerHeight;\n    }\n  },\n\n  created() {\n    const bodyEl = document.body;\n    bodyEl.classList.add(\"disable-zoom\");\n    this.translateOverlay();\n    this.handleResize();\n  },\n\n  mounted() {\n    console.debug(this);\n    window.addEventListener(\"orientationchange\", function() {\n      console.log(screen.orientation);\n      location.reload(true);\n    });\n    window.addEventListener(\"resize\", this.translateOverlay);\n  },\n\n  methods: {\n    goTo(url) {\n      console.log(`url = ${url}`);\n      this.$router.replace(url).then(() => {\n        this.$router.go(0);\n      });\n    },\n    handleResize() {\n      this.isLandscape = this.checkIsLandscape;\n    },\n    translateOverlay() {\n      this.viewportMarginValue = this.isViewportLarge ? (window.innerWidth - 1920) / 2 : 0;\n      this.translateX = `--overlay-translate:-${this.viewportMarginValue}px;`;\n    },\n    containerHover(index) {\n        this.indexHover = ` hover-side-${index}`;\n    },\n    containerHoverOut() {\n        this.indexHover = '';\n    },\n    ariaLabel(index) {\n    return index === 0 ? this.$msg('common.homepage-overlay.left.logo-aria-label') : this.$msg('common.homepage-overlay.right.logo-aria-label')\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'homepage_overlay',\n        evAction: el.document?.url || el.link?.url || el.trackingLabel,\n        evLabel: `${el.campaignId || 'No Campaign'} | ${this.common.actpageFullUrl}`\n      }\n    },\n    handleKeyDown(event) {\n      //Accessibility redirect when press \"Enter\" on focused element\n      if(event?.key === \"Enter\") {\n        const focusedEL = document.activeElement;\n        const url = focusedEL?.getAttribute('data-url');\n        url ? this.goTo(url) : undefined;\n      }\n    }\n  }\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomepageOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomepageOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HomepageOverlay.vue?vue&type=template&id=ec281aa6&\"\nimport script from \"./HomepageOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./HomepageOverlay.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","const arrayMove = function (arr, fromIndex, toIndex) {\n  const element = arr[fromIndex];\n  let arrayCopy = [...arr];\n  arrayCopy.splice(fromIndex, 1);\n  arrayCopy.splice(toIndex, 0, element);\n  return arrayCopy;\n}\n\nconst arraySortBy = function (arr, property, order = 'desc') {\n  const comparingSign1 = order === 'desc' ? -1 : 1;\n  const comparingSign2 = order === 'desc' ? 1 : -1;\n  let arrayCopy = [...arr];\n  arrayCopy.sort((a, b) => (a[property] > b[property]) ? comparingSign1 : ((a[property] > b[property]) ? comparingSign2 : 0));\n  return arrayCopy;\n}\n\n\nexport {arrayMove, arraySortBy}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"allFocusable\",staticClass:\"navigation-v2\",attrs:{\"id\":\"navigation-v2\",\"aria-label\":_vm.secondaryAriaLabel}},[_c('div',{class:['navigation-v2__content-wrapper', { 'overlay-active': _vm.currentActive },{ 'margin-edit-mode': _vm.isEditInterface }],style:(_vm.overlayPosition)},[_c('div',{staticClass:\"navigation-v2__content\"},[_c('ul',{staticClass:\"navigation-v2__menu\",attrs:{\"aria-label\":\"Main navigation\"}},_vm._l((_vm.menuItemsObj),function(item,index){return _c('li',{key:item.uuid,class:'navigation-v2__menu__list'},[(item.nestedItems || item['menu-tabs-area'])?_c('pg-button',{class:['navigation-v2__menu__list__item', { 'active' : _vm.activeElement(item.uuid, index)}],attrs:{\"aria-expanded\":_vm.activeElement(item.uuid, index).toString(),\"event-name\":\"expandNestedV2\",\"event-params\":{ uuid: item.uuid },\"aria-controls\":'nav-submenu-' + item.uuid,\"analytics-data\":_vm.analyticsData(item)}},[_c('span',{staticClass:\"navigation-v2__menu__list__item__voice\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")]),_c('i',{class:_vm.navigationListIcon,attrs:{\"aria-hidden\":\"true\"}})]):_c('pg-button',{class:'navigation-v2__menu__item',attrs:{\"href\":_vm._f(\"mgnlLink\")(item.url,'url'),\"targetBlank\":!!item.onBlank,\"analytics-data\":_vm.analyticsData(item)}},[_c('span',{staticClass:\"navigation-v2__menu__list__item__voice\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])],1)}),0)]),(!_vm.isEditInterface)?_vm._l((_vm.menuItemsObj),function(item,index){return _c('main-navigation-item-v2',{key:item.uuid,attrs:{\"item\":item,\"index\":index,\"highlightItems\":item.highlightItems,\"isActiveElement\":_vm.activeElement(item.uuid, index),\"posterImage\":item.posterImage}})}):[_vm._t(\"default\")]],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div id=\"navigation-v2\"\n       class=\"navigation-v2\"\n       :aria-label=\"secondaryAriaLabel\"\n       ref=\"allFocusable\">\n    <div :class=\"['navigation-v2__content-wrapper', { 'overlay-active': currentActive },{ 'margin-edit-mode': isEditInterface }]\"\n         :style=\"overlayPosition\"\n    >\n      <div class=\"navigation-v2__content\">\n          <ul class=\"navigation-v2__menu\" aria-label=\"Main navigation\">\n          <li\n              v-for=\"(item, index) in menuItemsObj\"\n              :class=\"'navigation-v2__menu__list'\"\n              v-bind:key=\"item.uuid\"\n          >\n            <pg-button\n                :class=\"['navigation-v2__menu__list__item', { 'active' : activeElement(item.uuid, index)}]\"\n                :aria-expanded=\"activeElement(item.uuid, index).toString()\"\n                event-name=\"expandNestedV2\"\n                :event-params=\"{ uuid: item.uuid }\"\n                :aria-controls=\"'nav-submenu-' + item.uuid\"\n                :analytics-data=\"analyticsData(item)\"\n                v-if=\"item.nestedItems || item['menu-tabs-area']\"\n            >\n              <span class=\"navigation-v2__menu__list__item__voice\"> {{ item.label }} </span>\n              <i :class=\"navigationListIcon\" aria-hidden=\"true\"></i>\n            </pg-button>\n            <pg-button\n                :class=\"'navigation-v2__menu__item'\"\n                :href=\"item.url | mgnlLink('url')\"\n                :targetBlank=\"!!item.onBlank\"\n                :analytics-data=\"analyticsData(item)\"\n                v-else\n            >\n            <span class=\"navigation-v2__menu__list__item__voice\"> {{ item.label }} </span>\n            </pg-button>\n          </li>\n        </ul>\n      </div>\n      <template v-if=\"!isEditInterface\">\n        <main-navigation-item-v2\n            v-for=\"(item, index) in menuItemsObj\"\n            :key=\"item.uuid\"\n            :item=\"item\"\n            :index=\"index\"\n            :highlightItems=\"item.highlightItems\"\n            :isActiveElement=\"activeElement(item.uuid, index)\"\n            :posterImage=\"item.posterImage\"\n        />\n      </template>\n      <template v-else>\n        <slot></slot>\n      </template>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport MainNavigationItemV2 from \"./MainNavigationItemV2.vue\";\nexport default {\n  name: \"MainNavigationV2\",\n\n  components: {\n    PgButton,\n    MainNavigationItemV2\n  },\n\n  data() {\n    return {\n      visible: false,\n      currentActive: null,\n      isNavigationOpen: true,\n      overlayPosition: '',\n    };\n  },\n\n  props: {\n    common: {\n      type: Object,\n    },\n    customerServiceLink: {\n      type: Object,\n      default: () => {}\n    },\n    services: {\n      type: Array,\n      default: () => []\n    },\n    menuItemsObj: {\n      type: Array,\n      default: () => [],\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({}),\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false,\n    },\n    hideNavigation: {\n      type: Boolean,\n      default: false\n    },\n  },\n\n  computed: {\n    activeElement() {\n      const ctx = this;\n      return function (uuid, index) {\n        return  ctx.currentActive === uuid;\n      };\n    },\n\n    isMobile() {\n      return window.screen.width <= 1024;\n    },\n    secondaryAriaLabel() {\n      return this.$msg('common.secondary.aria-label.text') //TODO add fallback in case msg not configured\n    },\n    navigationListIcon() {\n      return this.isMobile ? 'icon-arrow-dx' : 'icon-arrow-down';\n    }\n  },\n\n  methods: {\n    isHidden(el) {\n      if (\n          window.getComputedStyle(el).visibility === \"hidden\" ||\n          el.offsetParent === null\n      ) {\n        return true;\n      }\n    },\n    handleKeyboard(event) {\n      // A11Y KEYBOARD ESC + MODAL TRAP\n\n      const allFocusableList = this.$refs.allFocusable.querySelectorAll(\n          'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n      );\n\n      let allFocusableListVisible = [];\n\n      allFocusableList.forEach((element) => {\n        if (!this.isHidden(element)) {\n          allFocusableListVisible.push(element);\n        }\n      });\n\n      const last = allFocusableListVisible.length - 1;\n\n      if (event.key === \"Escape\") {\n        if (this.visible) {\n          this.$eventHub.emit(\"header:toggleNavigationV2\");\n        }\n      }\n\n      if (\n          event.key === \"Tab\" &&\n          event.shiftKey === false &&\n          event.target === allFocusableListVisible[last]\n      ) {\n        event.preventDefault();\n        allFocusableListVisible[0].focus();\n      } else if (\n          event.key === \"Tab\" &&\n          event.shiftKey === true &&\n          event.target === allFocusableListVisible[0]\n      ) {\n        event.preventDefault();\n        allFocusableListVisible[last].focus();\n      }\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'menu',\n        evAction: 'menu_principale',\n        evLabel: el.label.trim()\n      }\n    },\n    overlayPositioning() {\n      //calculate the left % when the window is > 1920px\n      const currentViewport = window.innerWidth;\n      const defLeft = 0;\n      if(currentViewport <= 1920) {\n        this.overlayPosition = `--float-overlay: ${defLeft}px`\n      } else {\n        let calcFloat = ((currentViewport - 1920 ) / 2);\n        this.overlayPosition = `--float-overlay: ${calcFloat}px`\n      }\n    },\n    handleOutsideClick(event) {\n      const navigation = this.$refs.allFocusable;\n      const isMobile = window.screen.width <= 1024;\n      if (navigation && !navigation.contains(event.target) && !isMobile ) {\n        this.isNavigationOpen = false;\n        this.currentActive = null;\n        document.body.style.overflowY = 'scroll';\n        this.$emit('header:isNavigationOpen', this.isNavigationOpen);\n\n        //Remove global listener after closing the menu avoiding open/close loop\n        document.removeEventListener(\"click\", this.handleOutsideClick);\n      }\n    },\n  },\n\n  created() {\n    this.overlayPositioning();\n    document.addEventListener(\"keydown\", this.handleKeyboard);\n    const ctx = this;\n    const isMobile = window.screen.width <= 1024;\n\n    this.$eventHub.on(\"header:toggleNavigationV2\", function () {\n      const bodyEl = document.body;\n      const inertEls = document.querySelectorAll(\"#mainContent, #footer\");\n\n      ctx.visible = !ctx.visible;\n\n      ctx.visible && !isMobile\n          ? bodyEl.classList.add(\"hidden-scroll\", \"main-navigation-open\")\n          : bodyEl.classList.remove(\"hidden-scroll\", \"main-navigation-open\");\n\n      for (var i = 0; i < inertEls.length; i++) {\n        var inertEl = inertEls[i];\n\n        ctx.visible\n            ? inertEl.setAttribute(\"hidden\", true)\n            : inertEl.removeAttribute(\"hidden\");\n      }\n    });\n\n    this.$eventHub.on(\"expandNestedV2\", function (eventParams) {\n      const isMobile = window.screen.width <= 1024;\n      let active = eventParams && eventParams.uuid;\n      ctx.currentActive = ctx.currentActive !== active ? active : null;\n\n      if(!isMobile) {\n        this.isNavigationOpen = ctx.currentActive === active && this.isNavigationOpen ? this.isNavigationOpen : !this.isNavigationOpen;\n        this.isNavigationOpen ? document.body.style.overflowY = \"hidden\" : document.body.style.overflowY = \"scroll\";\n        this.$emit(\"header:isNavigationOpen\", this.isNavigationOpen);\n      }\n    });\n  },\n\n  mounted() {\n    window.addEventListener(\"resize\", this.overlayPositioning);\n    window && window.removeEventListener(\"scroll\", this.overlayPositioning);\n    this.$eventHub.on(\"showContacts\", (showContacts) => {\n      if(showContacts) {\n        this.currentActive = false;\n      }\n    });\n    this.$eventHub.on(\"expandNestedV2\", (isNavigationOpen) => {\n      if (isNavigationOpen) {\n        document.addEventListener(\"click\", this.handleOutsideClick);\n      } else {\n        document.removeEventListener(\"click\", this.handleOutsideClick);\n      }\n    });\n  },\n\n  beforeDestroy() {\n    //Removing all listeners to avoid memory leaks\n    document.removeEventListener(\"click\", this.handleOutsideClick);\n    window.removeEventListener(\"scroll\", this.overlayPositioning);\n    document.removeEventListener(\"keyup\", this.close);\n  },\n\n  destroyed() {\n    document.removeEventListener(\"keyup\", this.close);\n  },\n};\n</script>\n<style scoped>\n.navigation-v2 {\n height: 600px;\n}\n.margin-edit-mode {\n  margin-top: 500px;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainNavigationV2.vue?vue&type=template&id=819fc57e&scoped=true&\"\nimport script from \"./MainNavigationV2.vue?vue&type=script&lang=js&\"\nexport * from \"./MainNavigationV2.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MainNavigationV2.vue?vue&type=style&index=0&id=819fc57e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"819fc57e\",\n  null\n  \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/vehicle-vespa.f5c59727.png\";","module.exports = __webpack_public_path__ + \"img/accessory.d267c2a3.png\";","module.exports = __webpack_public_path__ + \"img/contact-us.cc6bcd0b.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.loading)?_c('loader'):_vm._e(),_c('div',{staticClass:\"change-language-country change-language-country--list\"},[_c('dl',{staticClass:\"contry-list\"},[_vm._m(0),_c('dd',{staticClass:\"contry-list__country-name\"},[_c('pg-button',{attrs:{\"href\":\"/en_EN/\",\"title\":\"International\",\"styleType\":'text'}},[(_vm.showFlags)?_c('i',{class:_vm.flagIcon('EN'),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" International \")])],1)]),_vm._l((_vm.countries.Continente),function(continent){return _c('dl',{key:continent.id,staticClass:\"contry-list\"},[_c('dt',{staticClass:\"contry-list__continent-name\"},[_c('h3',[_vm._v(_vm._s(continent.Name))])]),_vm._l((continent.Country),function(country){return _c('dd',{key:country.id,staticClass:\"contry-list__country-name\"},[(country.CountrySite && country.CountrySite.length > 1)?_c('div',[(_vm.showFlags)?_c('i',{class:_vm.flagIcon(country.CountryCD),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" \"+_vm._s(country.Name)+\" \"),_vm._l((country.CountrySite),function(site){return _c('pg-button',{key:site.id,staticClass:\"contry-list__lang\",attrs:{\"href\":site.URL,\"styleType\":'text',\"title\":site.URLDescription,\"size\":'small'}},[_vm._v(\" \"+_vm._s(site.Language)+\" \")])})],2):_c('div',[(country.CountrySite && country.CountrySite[0].URL !== null)?_c('pg-button',{attrs:{\"href\":country.CountrySite[0].URL,\"title\":country.Name,\"styleType\":'text'}},[(_vm.showFlags)?_c('i',{class:_vm.flagIcon(country.CountryCD),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" \"+_vm._s(country.Name)+\" \")]):_c('pg-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:((\"modal-multi-\" + (country.CountryCD))),expression:\"`modal-multi-${country.CountryCD}`\"}],attrs:{\"title\":country.Name,\"size\":'medium'}},[(_vm.showFlags)?_c('i',{class:_vm.flagIcon(country.CountryCD),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" \"+_vm._s(country.Name)+\" \")]),(country.CountrySite && country.CountrySite[0].URL === null)?_c('b-modal',{attrs:{\"id\":_vm.modalCountryId(country.CountryCD),\"modal-class\":\"modal--dialog\",\"title\":country.Name,\"size\":\"sm\",\"centered\":\"\",\"hide-footer\":\"\"},scopedSlots:_vm._u([{key:\"modal-header-close\",fn:function(){return [_c('i',{staticClass:\"close__icon icon-close\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"close__label\"},[_c('msg',{attrs:{\"id\":'common.modal.close.text'}})],1)]},proxy:true}],null,true)},[_c('div',{staticClass:\"text--body country-distributor\"},[_c('div',{staticClass:\"text--heading-xxs\"},[_c('msg',{attrs:{\"id\":'common.official.distributor.text'}})],1),_c('p',[_c('i',{staticClass:\"icon-globe\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(country.CountrySite[0].Name)+\" \"),_c('br'),_vm._v(\" \"+_vm._s(country.CountrySite[0].Address)+\" \"),_c('br'),_vm._v(\" \"+_vm._s(country.CountrySite[0].ZipCode)+\" \"+_vm._s(country.CountrySite[0].City)+\" \"),_c('br')]),(country.CountrySite[0].Phone)?_c('p',[_c('a',{attrs:{\"href\":\"`tel:${country.CountrySite[0].Phone}`\"}},[_c('i',{staticClass:\"icon-contact-fill\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(country.CountrySite[0].Phone)+\" \")])]):_vm._e(),(country.CountrySite[0].Email)?_c('p',[_c('a',{attrs:{\"href\":\"`mailto:${country.Email}`\"}},[_c('i',{staticClass:\"icon-email-fill\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(country.CountrySite[0].Email)+\" \")])]):_vm._e(),(country.CountrySite[0].Fax)?_c('p',[_c('i',{staticClass:\"icon-save-fill\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(country.CountrySite[0].Fax)+\" \")]):_vm._e()])]):_vm._e()],1)])})],2)})],2)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('dt',{staticClass:\"contry-list__continent-name\"},[_c('h3',[_vm._v(\"International\")])])}]\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <!-- LOADER -->\n    <loader v-if=\"loading\"/>\n\n    <div class=\"change-language-country change-language-country--list\">\n      <dl class=\"contry-list\">\n        <dt class=\"contry-list__continent-name\">\n          <h3>International</h3>\n        </dt>\n        <dd class=\"contry-list__country-name\">\n          <pg-button href=\"/en_EN/\"\n                     title=\"International\"\n                     :styleType=\"'text'\"\n          >\n            <i v-if=\"showFlags\" :class=\"flagIcon('EN')\" aria-hidden=\"true\">\n              <!-- -->\n            </i>\n            International\n          </pg-button>\n        </dd>\n      </dl>\n      <dl class=\"contry-list\" v-for=\"continent in countries.Continente\" :key=\"continent.id\">\n        <dt class=\"contry-list__continent-name\">\n          <h3>{{continent.Name}}</h3>\n        </dt>\n        <dd class=\"contry-list__country-name\" v-for=\"country in continent.Country\" :key=\"country.id\">\n          <div v-if=\"country.CountrySite && country.CountrySite.length > 1\">\n            <i v-if=\"showFlags\" :class=\"flagIcon(country.CountryCD)\" aria-hidden=\"true\">\n              <!-- -->\n            </i>\n            {{country.Name}}\n            <pg-button v-for=\"site in country.CountrySite\"\n                       class=\"contry-list__lang\"\n                       :href=\"site.URL\"\n                       :styleType=\"'text'\"\n                       :title=\"site.URLDescription\"\n                       :size=\"'small'\"\n                       :key=\"site.id\">\n              <!--{{site.URL.substring(site.URL.length, site.URL.length - 2)}}-->\n              {{site.Language}}\n            </pg-button>\n          </div>\n          <div v-else>\n            <pg-button v-if=\"country.CountrySite && country.CountrySite[0].URL !== null\"\n                       :href=\"country.CountrySite[0].URL\"\n                       :title=\"country.Name\"\n                       :styleType=\"'text'\"\n            >\n              <i v-if=\"showFlags\" :class=\"flagIcon(country.CountryCD)\" aria-hidden=\"true\">\n                <!-- -->\n              </i>\n              {{country.Name}}\n            </pg-button>\n\n            <pg-button v-else\n                       v-b-modal=\"`modal-multi-${country.CountryCD}`\"\n                       :title=\"country.Name\"\n                       :size=\"'medium'\">\n              <i v-if=\"showFlags\" :class=\"flagIcon(country.CountryCD)\" aria-hidden=\"true\">\n                <!-- -->\n              </i>\n              {{country.Name}}\n            </pg-button>\n\n            <!-- Second modal (No website) -->\n            <b-modal v-if=\"country.CountrySite && country.CountrySite[0].URL === null\"\n                     :id=\"modalCountryId(country.CountryCD)\"\n                     modal-class=\"modal--dialog\"\n                     :title=\"country.Name\"\n                     size=\"sm\"\n                     centered\n                     hide-footer\n\n            >\n              <template v-slot:modal-header-close>\n                <i class=\"close__icon icon-close\" aria-hidden=\"true\"></i>\n                <span class=\"close__label\">\n                      <msg :id=\"'common.modal.close.text'\"/>\n                    </span>\n              </template>\n              <div class=\"text--body country-distributor\">\n                <div class=\"text--heading-xxs\">\n                  <msg :id=\"'common.official.distributor.text'\"/>\n                </div>\n                <p>\n                  <i class=\"icon-globe\" aria-hidden=\"true\"></i>\n                  {{country.CountrySite[0].Name}} <br/>\n                  {{country.CountrySite[0].Address}} <br/>\n                  {{country.CountrySite[0].ZipCode}} {{country.CountrySite[0].City}} <br/>\n                </p>\n                <p v-if=\"country.CountrySite[0].Phone\">\n                  <a href=\"`tel:${country.CountrySite[0].Phone}`\">\n                    <i class=\"icon-contact-fill\" aria-hidden=\"true\"></i>\n                    {{country.CountrySite[0].Phone}}\n                  </a>\n                </p>\n                <p v-if=\"country.CountrySite[0].Email\">\n                  <a href=\"`mailto:${country.Email}`\">\n                    <i class=\"icon-email-fill\" aria-hidden=\"true\"></i>\n                    {{country.CountrySite[0].Email}}\n                  </a>\n                </p>\n                <p v-if=\"country.CountrySite[0].Fax\">\n                  <i class=\"icon-save-fill\" aria-hidden=\"true\"></i>\n                  {{country.CountrySite[0].Fax}}\n                </p>\n              </div>\n            </b-modal>\n          </div>\n        </dd>\n      </dl>\n    </div>\n  </div>\n</template>\n\n<script>\n  import PgButton from \"../Button/Button.vue\";\n  import Loader from \"../Loader/Loader.vue\";\n\n  export default {\n    name: \"Countries\",\n    data() {\n      return {\n        countries: [],\n        loading: true\n      }\n    },\n    components: {\n      PgButton,\n      Loader\n    },\n    props: {\n      siteServiceParam: {\n        type: String\n      },\n      showFlags: {\n        type: Boolean,\n        default: false\n      }\n    },\n    computed: {\n      flagIcon: function () {\n        const filters = this.$options.filters;\n        return function (string) {\n          if (!string) return false;\n          return \"flag-icon flag-icon-\" + filters.subStr(string.toLowerCase());\n        };\n      },\n    },\n    methods: {\n      getCountries: function () {\n        let ctx = this;\n        const siteServiceParam = this.siteServiceParam;\n        let url = `https://stats.piaggio.com/getxmlsites/tree/?b=${siteServiceParam}&format=json`;\n\n        ctx.$http\n          .get(url)\n          .then((response) => {\n            ctx.loading = false;\n            ctx.countries = response.data.CountrySites.Site;\n          }, (error) => {\n            ctx.loading = false;\n          })\n      },\n      modalCountryId(id) {\n        return 'modal-multi-' + id\n      }\n    },\n    mounted() {\n      //this.$eventHub.on(\"PgChangeLanguageCountry:changeCountry\", (params) => {\n      this.countries.length < 1 && this.getCountries();\n\n      // });\n    },\n  }\n\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Countries.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Countries.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Countries.vue?vue&type=template&id=d0d804d0&\"\nimport script from \"./Countries.vue?vue&type=script&lang=js&\"\nexport * from \"./Countries.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{class:_vm.sectionClass,attrs:{\"id\":(\"uuid-\" + (_vm.model.uuid))}},[_c('div',{staticClass:\"section__container\"},[_c('div',{class:['grid-x align-center', { 'one_icon': _vm.model.editorialIcon.length === 1 }]},_vm._l((_vm.model.editorialIcon),function(editorial){return _c('div',{key:editorial.uuid,class:_vm.classes},[_c('h3',{staticClass:\"editorial-icon__title\"},[_c('pg-icon-text',{attrs:{\"iconName\":editorial.iconName,\"title\":editorial.title}})],1),(editorial.text)?_c('div',{staticClass:\"editorial-icon__text text--body\",domProps:{\"innerHTML\":_vm._s(editorial.text)}}):_vm._e(),(editorial.linkLabel && editorial.link || editorial.document)?_c('div',{staticClass:\"editorial-icon__cta\"},[_c('pg-button',{attrs:{\"href\":_vm.setLinkType(editorial.document, editorial.link),\"color\":'primary',\"styleType\":'text',\"size\":'medium',\"sectionStyle\":_vm.model.sectionStyle,\"targetBlank\":editorial.onBlank,\"linkNofollow\":editorial.noFollow,\"analyticsData\":_vm.analyticsData(editorial)}},[_vm._v(_vm._s(editorial.linkLabel))])],1):_vm._e()])}),0)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <section :class=\"sectionClass\" :id=\"`uuid-${model.uuid}`\">\n    <div class=\"section__container\">\n      <div :class=\"['grid-x align-center', { 'one_icon': model.editorialIcon.length === 1 }]\">\n        <div :class=\"classes\" v-for=\"editorial in model.editorialIcon\" :key=\"editorial.uuid\">\n          <h3 class=\"editorial-icon__title\">\n            <pg-icon-text :iconName=\"editorial.iconName\" :title=\"editorial.title\" />\n          </h3>\n          <div class=\"editorial-icon__text text--body\" v-if=\"editorial.text\" v-html=\"editorial.text\"></div>\n          <div class=\"editorial-icon__cta\" v-if=\"editorial.linkLabel && editorial.link || editorial.document\">\n            <pg-button\n              :href=\"setLinkType(editorial.document, editorial.link)\"\n              :color=\"'primary'\"\n              :styleType=\"'text'\"\n              :size=\"'medium'\"\n              :sectionStyle=\"model.sectionStyle\"\n              :targetBlank=\"editorial.onBlank\"\n              :linkNofollow=\"editorial.noFollow\"\n              :analyticsData=\"analyticsData(editorial)\"\n            >{{editorial.linkLabel}}</pg-button>\n          </div>\n        </div>\n      </div>\n    </div>\n  </section>\n</template>\n\n<script>\nimport { mgnlComponentMixin } from \"@wl-vue-mixins/mixins.js\";\nimport PgButton               from \"../Button/Button.vue\";\nimport PgIconText from \"../IconText/IconText.vue\";\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n\n  name: \"EditorialIcon\",\n  components: {\n    PgButton,\n    PgIconText\n  },\n  computed: {\n    sectionClass() {\n      return [\n        \"section\",\n        this.model.sectionStyle ? \"section--\" + this.model.sectionStyle : \"\"\n      ];\n    },\n    classes() {\n      const totalItem = this.model.editorialIcon.length;\n      let style = \"editorial-icon\";\n\n      if (totalItem < 3) {\n        style += \" editorial-icon--two-columns\";\n      } else if (totalItem == 3) {\n        style += \" editorial-icon--three-columns\";\n      } else {\n        style += \" editorial-icon--four-columns\";\n      }\n      return style;\n    }\n  },\n  methods: {\n    setLinkType(linkToDocument, linkToPage) {\n      if (linkToDocument) {\n        return this.$options.filters.mgnlMedia(linkToDocument, \"url\");\n      } else {\n        return this.$options.filters.mgnlLink(linkToPage, \"url\");\n      }\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'call_to_action',\n        evAction: el.document?.url || el.link?.url || el.trackingLabel,\n        evLabel: `${el.campaignId || 'No Campaign'} | ${this.common.actpageFullUrl}`\n      }\n    }\n  }\n};\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorialIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorialIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditorialIcon.vue?vue&type=template&id=a1b2ea0c&\"\nimport script from \"./EditorialIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./EditorialIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/vehicle-ape.f5c59727.png\";","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=style&index=0&id=4ba3b9fc&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=style&index=0&id=4ba3b9fc&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"floating-shortcuts \" + (_vm.isHomepageOverlay ? 'not-visible' : '') + \" \" + (_vm.isViewportLarge ? 'isLarge' : '') + \" \" + (_vm.isZoomed ? 'floating-zoomed' : '')),attrs:{\"aria-hidden\":_vm.isZoomed}},[_c('div',{ref:\"fixedMenu\",class:(\"menu \" + (_vm.isVisible ? 'menu-active' : '') + \" \" + (!_vm.isMenuOpen ? 'open' : 'close'))},[_vm._l((_vm.sliceFloatingShortcuts),function(ctaObj){return _c('a',{key:ctaObj.id,staticClass:\"link\"},[_c('advanced-button-wrapper',{attrs:{\"cta-obj\":ctaObj,\"color\":\"primary\",\"styleType\":\"text\",\"size\":\"medium\",\"analyticsData\":_vm.analyticsData(ctaObj)}},[_c('div',{staticClass:\"link__row\"},[_c('div',{staticClass:\"link__row--left\"},[_c('i',{class:(\"icon-\" + (ctaObj.marketingToolIcon))}),_c('div',{staticClass:\"menu-title\"},[_vm._v(\" \"+_vm._s(_vm.title(ctaObj.marketingToolId))+\" \")])]),_c('i',{class:\"icon-arrow-dx\"})])])],1)}),_c('div',{class:(\"action-menu-button \" + (_vm.isMenuOpen ? 'open' : 'close')),attrs:{\"role\":\"button\",\"tabindex\":\"0\",\"aria-label\":_vm.$msg('common.floating-shortcuts.close-button.text')},on:{\"click\":function($event){return _vm.toggleMenu(_vm.isMenuOpen)},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.toggleMenu(_vm.isMenuOpen)}}},[(!_vm.isMenuOpen && this.$mq === 'small')?_c('span',{staticClass:\"close-button-text\"},[_vm._v(_vm._s(_vm.closeButtonText))]):_vm._e(),(!_vm.isMenuOpen)?_c('i',{class:\"icon-plus close-icon\"}):_vm._e(),(_vm.isMenuOpen)?_c('i',{class:\"icon-action-menu\"}):_vm._e()])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.icons),function(icon,index){return _c('div',{key:index,staticClass:\"legend\"},[_c('i',{class:(\"icon-\" + icon)}),_c('p',[_vm._v(_vm._s(icon))])])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default [\n  \"accessory-case\",\n  \"action-menu\",\n  \"accessory-windshield\",\n  \"appointment-fill\",\n  \"arrow-down\",\n  \"arrow-dx\",\n  \"arrow-small-down\",\n  \"arrow-small-dx\",\n  \"arrow-small-sx\",\n  \"arrow-small-up\",\n  \"arrow-sx\",\n  \"arrow-up\",\n  \"assistance\",\n  \"bell-fill\",\n  \"brand\",\n  \"brochure-fill\",\n  \"brochure\",\n  \"brochure-vc\",\n  \"cabina-vc\",\n  \"calculator-vc\",\n  \"capacity-vc\",\n  \"calculator-fill\",\n  \"calculator\",\n  \"calendar\",\n  \"certification-fill\",\n  \"certification\",\n  \"certification-vc\",\n  \"certified-assistance\",\n  \"certified-assistance-small\",\n  \"checkup\",\n  \"check\",\n  \"close\",\n  \"compact-vc\",\n  \"configuration-vc\",\n  \"contact-fill\",\n  \"contract-fill\",\n  \"directions\",\n  \"divider\",\n  \"eco-vc\",\n  \"edit-fill\",\n  \"edit\",\n  \"editdocument-fill\",\n  \"electric\",\n  \"email-fill\",\n  \"email\",\n  \"engine-vc\",\n  \"euro-vc\",\n  \"external\",\n  \"file-upload\",\n  \"filters\",\n  \"filter-vc\",\n  \"finance-fill\",\n  \"flexibility\",\n  \"garbage\",\n  \"gears-fill\",\n  \"gears\",\n  \"geolocation\",\n  \"gift-fill\",\n  \"globe-fill\",\n  \"globe\",\n  \"globe-vc\",\n  \"gps-off\",\n  \"gps-on\",\n  \"heart-empty\",\n  \"heart-fill\",\n  \"helmet-fill\",\n  \"helmet\",\n  \"hours-fill\",\n  \"hours\",\n  \"info-fill\",\n  \"info\",\n  \"insurance-fill\",\n  \"insurance\",\n  \"list\",\n  \"lounge-fill\",\n  \"lounge\",\n  \"mail-vc\",\n  \"map-list\",\n  \"map\",\n  \"megaphone-fill\",\n  \"megaphone\",\n  \"menu\",\n  \"merchandising-fill\",\n  \"merchandising\",\n  \"mobile-fill\",\n  \"mobile\",\n  \"motorbike\",\n  \"mute\",\n  \"paint-fill\",\n  \"paint\",\n  \"passi-vc\",\n  \"pause\",\n  \"phone\",\n  \"phone-vc\",\n  \"piaggioflat\",\n  \"pin-fill\",\n  \"pin\",\n  \"pin-vc\",\n  \"play\",\n  \"plus-fill\",\n  \"plus\",\n  \"print-fill\",\n  \"print\",\n  \"promo-fill\",\n  \"promo\",\n  \"purchase\",\n  \"read-more\",\n  \"save-fill\",\n  \"save\",\n  \"scooter\",\n  \"search-fill\",\n  \"search\",\n  \"sentmail-fill\",\n  \"share-fill\",\n  \"social-fb\",\n  \"social-instagram\",\n  \"social-tiktok\",\n  \"social-x\",\n  \"social-twitter\",\n  \"social-whatsapp-fill\",\n  \"social-whatsapp\",\n  \"social-youtube\",\n  \"sorting\",\n  \"spart-parts\",\n  \"staff-fill\",\n  \"swatch-active\",\n  \"swatch\",\n  \"tachimeter-fill\",\n  \"tachimeter\",\n  \"tick\",\n  \"tire\",\n  \"tow\",\n  \"unmute\",\n  \"unmute-vc\",\n  \"user-fill\",\n  \"user\",\n  \"user-vc\",\n  \"warning-fill\",\n  \"warning\",\n  \"wash-fill\",\n  \"wash\",\n  \"wifi\",\n  \"quote\",\n  \"capacity\",\n  \"compact\",\n  \"eco\",\n  \"engine\",\n  \"filter\",\n  \"recharge\",\n  \"steering-wheel\",\n  \"technology\",\n  \"technology-2\",\n  \"vespa_pin\",\n  \"store\"\n];\n","<template>\n  <div>\n    <div v-for=\"(icon, index) in icons\" class=\"legend\" :key=\"index\">\n      <i :class=\"`icon-${icon}`\"></i>\n      <p>{{icon}}</p>\n    </div>\n  </div>\n</template>\n\n<script>\nimport iconsList from \"./icons\";\n\nexport default {\n  name: \"pg-icon\",\n\n  data: function() {\n    return {\n      icons: iconsList\n    };\n  }\n};\n</script>\n\n<style scoped>\ni[class^=\"icon-\"]:before,\ni[class*=\" icon-\"]:before {\n  font-size: 26px;\n  margin: 20px;\n  display: inline-block;\n}\n\n.legend {\n  margin: 20px;\n  display: inline-block;\n  text-align: center;\n}\n\np {\n  font-size: 14px;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Icon.vue?vue&type=template&id=4ba3b9fc&scoped=true&\"\nimport script from \"./Icon.vue?vue&type=script&lang=js&\"\nexport * from \"./Icon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Icon.vue?vue&type=style&index=0&id=4ba3b9fc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4ba3b9fc\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"`floating-shortcuts ${isHomepageOverlay ? 'not-visible' : ''} ${isViewportLarge ? 'isLarge' : ''} ${isZoomed ? 'floating-zoomed' : ''}`\" :aria-hidden=\"isZoomed\">\n    <!-- menu shortcuts -->\n    <div :class=\"`menu ${isVisible ? 'menu-active' : ''} ${!isMenuOpen ? 'open' : 'close'}`\" ref=\"fixedMenu\">\n        <a v-for=\"ctaObj in sliceFloatingShortcuts\" :key=\"ctaObj.id\" class=\"link\">\n            <advanced-button-wrapper :cta-obj=\"ctaObj\" color=\"primary\" styleType=\"text\" size=\"medium\" :analyticsData=\"analyticsData(ctaObj)\">\n              <div class=\"link__row\">\n                <div class=\"link__row--left\">\n                  <i :class=\"`icon-${ctaObj.marketingToolIcon}`\"></i>\n                  <div class=\"menu-title\">\n                    {{title(ctaObj.marketingToolId)}}\n                  </div>\n                </div>\n                <i :class=\"`icon-arrow-dx`\"></i>\n              </div>\n            </advanced-button-wrapper>\n        </a>\n      <!-- open/close button -->\n      <div :class=\"`action-menu-button ${isMenuOpen ? 'open' : 'close'}`\" role=\"button\" tabindex=\"0\"\n           @click=\"toggleMenu(isMenuOpen)\" @keyup.enter=\"toggleMenu(isMenuOpen)\"\n           :aria-label=\"$msg('common.floating-shortcuts.close-button.text')\">\n        <span v-if=\"!isMenuOpen && this.$mq === 'small'\" class=\"close-button-text\">{{ closeButtonText }}</span>\n        <i v-if=\"!isMenuOpen\" :class=\"`icon-plus close-icon`\"></i>\n        <i v-if=\"isMenuOpen\" :class=\"`icon-action-menu`\"></i>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\n  import AdvancedButtonWrapper from \"../Advanced-Button-Wrapper/Advanced-Button-Wrapper\";\n  import IconText from \"../IconText/IconText.vue\";\n  import PgButton from \"@wl-components/Button/Button.vue\";\n  import PgIcon from \"@wl-components/Icons/Icon.vue\";\n\n  export default {\n    name: \"FloatingShortcuts\",\n    data() {\n      return {\n        actionParam: null,\n        floatingShortcutsMap: {},\n        scrollBarWidth: 0,\n        isVisible: false,\n        lastScrollPosition: 0,\n        isMenuOpen: true\n      };\n    },\n    components: {\n      PgIcon,\n      PgButton,\n      AdvancedButtonWrapper,\n      IconText\n    },\n    props: {\n      floatingShortcuts: {\n        type: Array,\n        default: () => []\n      },\n      actpageFullUrl: {\n        type: String,\n        required: true,\n        default: \"\"\n      },\n      common: {\n        type: Object,\n        default: () => {\n        }\n      },\n    },\n    computed: {\n      title() {\n        const ctx = this;\n        return marketingToolId => {\n          return ctx.$msg(`common.floating-shortcuts.${marketingToolId}.text`)\n        }\n      },\n      closeButtonText() {\n        return this.$msg('common.floating-shortcuts.close-button.text')\n      },\n      menuInit() {\n        //Close menu if is mobile view on first loading\n        return this.isMenuOpen = this.$mq !== 'small';\n      },\n      sliceFloatingShortcuts () {\n        return this.floatingShortcuts.length >= 5 ? this.floatingShortcuts.slice(0, 5) : this.floatingShortcuts;\n      },\n      isViewportLarge() {\n        return window.innerWidth > 1920;\n      },\n      viewportMarginValue() {\n        return (window.innerWidth - 1920) / 2;\n      },\n      isZoomed() {\n        // PIAGGIO-9042: content visibility with zoom 400%\n        // check if desktop screen zoom is active\n        return window.screen.width > 1230 && window.visualViewport.width < 1010;\n      },\n      isHomepageOverlay() {\n        return this.common?.isOverlayConfigured ? this.common.isOverlayConfigured : false;\n      },\n    },\n\n    watch: {\n      isActive(newValue) {\n        if(this.isViewportLarge && newValue) {\n          this.$refs.fixedMenu.style.right = this.viewportMarginValue - this.scrollbarWidth + 'px';\n        } else {\n          this.$refs.fixedMenu.style.right = 0 + 'px';\n        }\n      },\n    },\n\n    mounted() {\n      document.addEventListener('scroll', this.handleScroll);\n      this.toggleMenu(this.menuInit);\n    },\n\n    destroyed() {\n      window.removeEventListener('scroll', this.handleScroll);\n    },\n\n    methods: {\n      handleScroll() {\n        const isMobile = this.$mq !== 'small';\n        const scrollY = window.scrollY || window.pageYOffset;\n        this.isVisible = !isMobile && scrollY >= 1240 || isMobile && scrollY >= 1090 || scrollY >= this.lastScrollPosition;\n        //Close sticky menu after 2370 scrollY\n        if(scrollY >=  2370 && !this.isMenuOpen && this.isVisible) {\n          this.toggleMenu(this.isMenuOpen);\n        }\n        this.lastScrollPosition = scrollY;\n      },\n\n      toggleMenu(isOpen) {\n        const menuButtons = this.$refs.fixedMenu.childNodes;\n        menuButtons.forEach(button => {\n          if (button === menuButtons[0]) {\n            button.classList.toggle('flex-row-btn', !isOpen);\n          }\n          if (button !== menuButtons[0] && button !== menuButtons[menuButtons.length - 1]) {\n            button.classList.toggle('collapse', !isOpen);\n          }\n        });\n        this.isMenuOpen = !this.isMenuOpen;\n      },\n\n      analyticsData(el) {\n        return {\n          evCategory: 'menu-sticky',\n          evAction: el.trackingLabel,\n          evLabel: `${el.campaignId || 'No Campaign'} | ${this.actpageFullUrl}`\n        }\n      }\n    }\n  };\n\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FloatingShortcuts.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FloatingShortcuts.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FloatingShortcuts.vue?vue&type=template&id=6dfd5077&\"\nimport script from \"./FloatingShortcuts.vue?vue&type=script&lang=js&\"\nexport * from \"./FloatingShortcuts.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/service.0b82db3c.png\";","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatches.vue?vue&type=style&index=0&id=6041ca22&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatches.vue?vue&type=style&index=0&id=6041ca22&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['navigation__menu-nested' , {'is-visible': _vm.isActiveElement}],attrs:{\"id\":'nav-submenu-'+ _vm.item.uuid}},[(_vm.secondLevelNavigationComponent)?_c(_vm.secondLevelNavigationComponent,{key:_vm.item.uuid,tag:\"component\",attrs:{\"item\":_vm.itemToPass,\"highlightItems\":_vm.item.highlightItems,\"posterImage\":_vm.item.posterImage,\"productCardConf\":_vm.productCardConf}}):(_vm.isEditInterface && !_vm.item.nestedItems)?_c('div',[(_vm.item.link)?_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.item.link,'url')}},[_vm._v(_vm._s(_vm.item.label))]):_c('h2',{staticClass:\"navigation__menu-nested__title\"},[_vm._v(_vm._s(_vm.item.label))])],1):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"navigation-tabs\"},[_c('div',[_c('pg-button',{staticClass:\"navigation__menu-nested__back\",attrs:{\"aria-expanded\":false,\"event-name\":\"expandNested\",\"event-params\":{uuid: _vm.item.uuid}}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.item.label)+\" \")]),_c('div',{staticClass:\"navigation__menu-nested__headers-container\"},[_c('h2',{staticClass:\"navigation__menu-nested__title\"},[_vm._v(_vm._s(_vm.item.label))]),_c('ul',{staticClass:\"navigation__menu-nested__nav-tabs\",attrs:{\"role\":\"tablist\"}},_vm._l((_vm.item['menu-tabs-area']),function(subitem,i){return _c('li',{key:(\"tab-header-\" + (_vm.item.uuid) + \"-\" + i),ref:(\"menuTabHeader-\" + (_vm.item.uuid)),refInFor:true,staticClass:\"nav-tabs__nav-item\",attrs:{\"role\":\"presentation\"}},[_c('a',{staticClass:\"nav-tabs__nav-link text--heading-s\",class:_vm.tabIndex === i ? 'is-active' : '',attrs:{\"role\":\"tab\",\"aria-selected\":\"true\",\"aria-setsize\":_vm.item['menu-tabs-area'].length,\"aria-posinset\":i+1,\"target\":\"_self\",\"href\":\"#\",\"id\":(\"menu-tab__header-\" + i),\"aria-controls\":(\"menu-tab__body-\" + (_vm.item.uuid) + \"-\" + i),\"tabindex\":_vm.tabIndex === i ? '0' : '-1'},on:{\"click\":function($event){return _vm.activateTab($event, i)},\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"right\",39,$event.key,[\"Right\",\"ArrowRight\"])){ return null; }if('button' in $event && $event.button !== 2){ return null; }return _vm.changeTab('right', i)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.changeTab('left', i)}]}},[_vm._v(\" \"+_vm._s(subitem.label)+\" \")])])}),0)]),_c('div',{staticClass:\"tab-content\"},_vm._l((_vm.item['menu-tabs-area']),function(subitem,i){return _c('div',{key:(\"tab-body-\" + (_vm.item.uuid) + \"-\" + i),staticClass:\"tab-pane active\",class:_vm.tabIndex === i ? 'show' : 'hide',attrs:{\"role\":\"tabpanel\",\"aria-hidden\":[_vm.tabIndex !== i ? 'true' : 'false'],\"id\":(\"menu-tab__body-\" + (_vm.item.uuid) + \"-\" + i),\"aria-labelledby\":(\"menu-tab__header-\" + (_vm.item.uuid) + \"-\" + i)}},[_c('navigation-product-list',{key:subitem.uuid,class:_vm.listingClasses(subitem.nestedItems.length),attrs:{\"item\":subitem,\"highlightItems\":subitem.highlightItems,\"posterImage\":subitem.posterImage,\"productCardConf\":_vm.productCardConf,\"isNavTabsChild\":true}})],1)}),0)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"navigation__menu-nested__menu navigation__menu-nested__menu--product\"},[(!_vm.isNavTabsChild)?[_c('i',{staticClass:\"navigation__menu-nested__brand-icon icon-brand\",attrs:{\"aria-label\":\"hidden\"}}),_c('pg-button',{staticClass:\"navigation__menu-nested__back\",attrs:{\"aria-expanded\":false,\"event-name\":\"expandNested\",\"event-params\":{uuid: _vm.item.uuid}}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.item.label)+\" \")]),_c('h2',{staticClass:\"navigation__menu-nested__title\"},[_vm._v(_vm._s(_vm.item.label))])]:_vm._e(),_c('div',{class:_vm.listingClasses(_vm.item.nestedItems.length)},[_c('ul',{staticClass:\"listing__items\",attrs:{\"aria-label\":_vm.item.label}},_vm._l((_vm.itemsToShow(_vm.item.nestedItems)),function(subitem){return _c('li',{key:subitem.uuid,staticClass:\"listing__item\"},[_c('card-product',{attrs:{\"item\":subitem,\"productCardConf\":_vm.productCardConf,\"analyticsData\":_vm.analyticsData(subitem)}})],1)}),0)])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div class=\"navigation__menu-nested__menu navigation__menu-nested__menu--product\">\n      <template v-if=\"!isNavTabsChild\">\n        <i class=\"navigation__menu-nested__brand-icon icon-brand\" aria-label=\"hidden\"></i>\n        <pg-button\n            class=\"navigation__menu-nested__back\"\n            :aria-expanded=\"false\"\n            event-name=\"expandNested\"\n            :event-params=\"{uuid: item.uuid}\"\n        >\n          <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n          {{ item.label }}\n        </pg-button>\n        <h2 class=\"navigation__menu-nested__title\">{{ item.label }}</h2>\n      </template>\n      <div :class=\"listingClasses(item.nestedItems.length)\">\n        <ul :aria-label=\"item.label\" class=\"listing__items\">\n          <li\n              v-for=\"subitem in itemsToShow(item.nestedItems)\"\n              v-bind:key=\"subitem.uuid\"\n              class=\"listing__item\"\n          >\n            <card-product\n                :item=\"subitem\"\n                :productCardConf=\"productCardConf\"\n                :analyticsData=\"analyticsData(subitem)\"\n            ></card-product>\n          </li>\n        </ul>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport CardProduct from \"../Card-Product/Card-Product.vue\";\nimport PgImage from \"../Image/Image.vue\";\n\nexport default {\n  name: \"NavigationProductList\",\n\n  components: {\n    PgButton,\n    PgImage,\n    CardProduct\n  },\n\n  props: {\n    item: {\n      type: Object\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {\n      }\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    },\n    isNavTabsChild: {\n      type: Boolean,\n      default: false\n    }\n  },\n  methods: {\n    listingClasses: function (length) {\n      let listingType;\n      if (length <= 6) {\n        listingType = \"listing--small-2-large-3\";\n      } else {\n        listingType = \"listing--small-2-large-4\";\n      }\n      return [\"listing\", listingType];\n    },\n    itemsToShow: function (items) {\n      return items.slice(0, 16);\n    },\n    target: function (isBlank) {\n      return isBlank ? \"_blank\" : \"_self\";\n    },\n    rel: function (noFollow, targetBlank) {\n      const attribute = targetBlank ? \"noopener \" : \"\";\n\n      return noFollow ? attribute + \"nofollow\" : attribute;\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'menu',\n        evAction: 'menu_principale',\n        evLabel: `${this.item.label || 'No Campaign'} | ${el.name}`\n      }\n    }\n  },\n  computed: {\n    hasHighlightItems() {\n      return this.highlightItems && this.highlightItems.length > 0;\n    },\n    hasPosterImage() {\n      return this.posterImage && Object.keys(this.posterImage).length > 0;\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationProductList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationProductList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavigationProductList.vue?vue&type=template&id=f742c6fc&\"\nimport script from \"./NavigationProductList.vue?vue&type=script&lang=js&\"\nexport * from \"./NavigationProductList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div class=\"navigation-tabs\">\n    <div>\n      <pg-button\n          class=\"navigation__menu-nested__back\"\n          :aria-expanded=\"false\"\n          event-name=\"expandNested\"\n          :event-params=\"{uuid: item.uuid}\"\n      >\n        <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n        {{ item.label }}\n      </pg-button>\n      <div class=\"navigation__menu-nested__headers-container\">\n        <h2 class=\"navigation__menu-nested__title\">{{ item.label }}</h2>\n        <ul role=\"tablist\" class=\"navigation__menu-nested__nav-tabs\">\n          <li v-for=\"(subitem, i) in item['menu-tabs-area']\" :key=\"`tab-header-${item.uuid}-${i}`\" role=\"presentation\" class=\"nav-tabs__nav-item\"\n              :ref=\"`menuTabHeader-${item.uuid}`\">\n            <a role=\"tab\" aria-selected=\"true\"\n               :aria-setsize=\"item['menu-tabs-area'].length\"\n               :aria-posinset=\"i+1\"\n               target=\"_self\" href=\"#\"\n               class=\"nav-tabs__nav-link text--heading-s\"\n               :class=\"tabIndex === i ? 'is-active' : ''\"\n               :id=\"`menu-tab__header-${i}`\"\n               :aria-controls=\"`menu-tab__body-${item.uuid}-${i}`\"\n               :tabindex=\"tabIndex === i ? '0' : '-1'\"\n               @click=\"activateTab($event, i)\"\n               @keyup.right=\"changeTab('right', i)\"\n               @keyup.left=\"changeTab('left', i)\">\n              {{ subitem.label }}\n            </a>\n          </li>\n        </ul>\n      </div>\n\n      <div class=\"tab-content\">\n        <div v-for=\"(subitem, i) in item['menu-tabs-area']\" :key=\"`tab-body-${item.uuid}-${i}`\" role=\"tabpanel\" :aria-hidden=\"[tabIndex !== i ? 'true' : 'false']\"\n             class=\"tab-pane active\"\n             :class=\"tabIndex === i ? 'show' : 'hide'\"\n             :id=\"`menu-tab__body-${item.uuid}-${i}`\"\n             :aria-labelledby=\"`menu-tab__header-${item.uuid}-${i}`\" style=\"\">\n\n          <navigation-product-list\n              :key=\"subitem.uuid\"\n              :item=\"subitem\"\n              :highlightItems=\"subitem.highlightItems\"\n              :posterImage=\"subitem.posterImage\"\n              :class=\"listingClasses(subitem.nestedItems.length)\"\n              :productCardConf=\"productCardConf\"\n              :isNavTabsChild=\"true\">\n          </navigation-product-list>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport NavigationProductList from \"./NavigationProductList\";\nimport PgButton              from \"../Button/Button.vue\";\n\nexport default {\n  name: \"navigation-tabs\",\n  components: {\n    NavigationProductList,\n    PgButton\n  },\n  props: {\n    item: {\n      type: Object,\n      required: true,\n      default: () => {\n      }\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {\n      }\n    },\n  },\n  data() {\n    return {\n      tabIndex: 0\n    };\n  },\n  methods: {\n    changeTab(e, i) {\n      switch (e) {\n        case 'right':\n          if (i < this.item[\"menu-tabs-area\"].length - 1) this.tabIndex = i + 1;\n          break;\n        case 'left':\n          if (i > 0) this.tabIndex = i - 1;\n          break;\n      }\n      this.$refs[`menuTabHeader-${this.item.uuid}`][this.tabIndex].firstElementChild.focus();\n    },\n    activateTab(e, i) {\n      e.preventDefault();\n      this.tabIndex = i;\n    },\n    listingClasses: function (length) {\n      let listingType;\n      if (length <= 6) {\n        listingType = \"listing--small-2-large-3\";\n      } else {\n        listingType = \"listing--small-2-large-4\";\n      }\n      return [\"listing\", listingType];\n    }\n  }\n};\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationTabs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationTabs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavigationTabs.vue?vue&type=template&id=18ea0727&\"\nimport script from \"./NavigationTabs.vue?vue&type=script&lang=js&\"\nexport * from \"./NavigationTabs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{class:_vm.nestedClasses(_vm.item.productSelect)},[_c('i',{staticClass:\"navigation__menu-nested__brand-icon icon-brand\",attrs:{\"aria-label\":\"hidden\"}}),_c('pg-button',{staticClass:\"navigation__menu-nested__back\",attrs:{\"aria-expanded\":false,\"event-name\":\"expandNested\",\"event-params\":{uuid: _vm.item.uuid}}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.item.label)+\" \")]),_c('h2',{staticClass:\"navigation__menu-nested__title\"},[_vm._v(_vm._s(_vm.item.label))]),_c('ul',{attrs:{\"aria-label\":_vm.item.label}},_vm._l((_vm.item.nestedItems),function(subitem){return _c('li',{key:subitem.uuid},[_c('a',{staticClass:\"navigation__menu-nested__item\",attrs:{\"href\":_vm._f(\"mgnlLink\")(subitem.url,'url'),\"target\":_vm.target(subitem.onBlank),\"rel\":_vm.rel(subitem.noFollow, subitem.onBlank),\"linkNofollow\":subitem.noFollow}},[_vm._v(_vm._s(subitem.label))])])}),0)],1),(_vm.hasHighlightItems)?_c('div',{staticClass:\"navigation__highlights\"},_vm._l((_vm.item.highlightItems),function(hlitem){return _c('card-highlight',{key:hlitem.uuid,attrs:{\"href\":_vm._f(\"mgnlLink\")(hlitem.link,'url'),\"text\":hlitem.text,\"cta\":hlitem.label,\"img\":_vm._f(\"mgnlMedia\")(hlitem.image,'url')}})}),1):(_vm.hasPosterImage)?_c('div',{staticClass:\"navigation__background\"},[_c('div',[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.posterImage,'url')}})],1)]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div :class=\"nestedClasses(item.productSelect)\">\n      <i class=\"navigation__menu-nested__brand-icon icon-brand\" aria-label=\"hidden\"></i>\n      <pg-button\n          class=\"navigation__menu-nested__back\"\n          :aria-expanded=\"false\"\n          event-name=\"expandNested\"\n          :event-params=\"{uuid: item.uuid}\"\n      >\n        <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n        {{item.label}}\n      </pg-button>\n      <h2 class=\"navigation__menu-nested__title\">{{item.label}}</h2>\n\n      <ul :aria-label=\"item.label\">\n        <li v-for=\"subitem in item.nestedItems\" v-bind:key=\"subitem.uuid\">\n          <a\n              :href=\"subitem.url | mgnlLink('url')\"\n              class=\"navigation__menu-nested__item\"\n              :target=\"target(subitem.onBlank)\"\n              :rel=\"rel(subitem.noFollow, subitem.onBlank)\"\n              :linkNofollow=\"subitem.noFollow\"\n          >{{subitem.label}}</a>\n        </li>\n      </ul>\n    </div>\n    <div class=\"navigation__highlights\" v-if=\"hasHighlightItems\">\n      <card-highlight\n          :href=\"hlitem.link | mgnlLink('url')\"\n          :text=\"hlitem.text\"\n          :cta=\"hlitem.label\"\n          :img=\"hlitem.image | mgnlMedia('url')\"\n          v-for=\"hlitem in item.highlightItems\"\n          :key=\"hlitem.uuid\"\n      ></card-highlight>\n    </div>\n    <div class=\"navigation__background\" v-else-if=\"hasPosterImage\">\n      <div>\n        <pg-image :lazy-src=\"posterImage | mgnlMedia('url')\"></pg-image>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport CardProduct from \"../Card-Product/Card-Product.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport CardHighlight  from \"../Card-Highlight/Card-Highlight.vue\";\nimport NavigationTabs from \"./NavigationTabs\";\n\nexport default {\n  name: \"NavigationItemEditorial\",\n\n  components: {\n    PgButton,\n    CardHighlight,\n    PgImage,\n    CardProduct,\n    NavigationTabs\n  },\n\n  props: {\n    item: {\n      type: Object\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {}\n    },\n    index: {\n      type: Number\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    }\n  },\n  methods: {\n    listingClasses: function(length) {\n      let listingType;\n      if (length <= 6) {\n        listingType = \"listing--small-2-large-3\";\n      } else {\n        listingType = \"listing--small-2-large-4\";\n      }\n      return [\"listing\", listingType];\n    },\n    itemsToShow: function(items) {\n      return items.slice(0, 16);\n    },\n    target: function(isBlank) {\n      return isBlank ? \"_blank\" : \"_self\";\n    },\n    rel: function(noFollow, targetBlank) {\n      const attribute = targetBlank ? \"noopener \" : \"\";\n\n      return noFollow ? attribute + \"nofollow\" : attribute;\n    },\n    nestedClasses: function(isProduct) {\n      return [\n        \"navigation__menu-nested__menu\",\n        isProduct ? \"navigation__menu-nested__menu--product\" : \"\"\n      ];\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'menu',\n        evAction: 'menu_principale',\n        evLabel: `${this.item.label || 'No Campaign'} | ${el.name}`\n      }\n    }\n  },\n  computed: {\n    hasHighlightItems() {\n      return this.highlightItems && this.highlightItems.length > 0;\n    },\n    hasPosterImage() {\n      return this.posterImage && Object.keys(this.posterImage).length > 0;\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationItemEditorial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationItemEditorial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavigationItemEditorial.vue?vue&type=template&id=16aa6d8a&\"\nimport script from \"./NavigationItemEditorial.vue?vue&type=script&lang=js&\"\nexport * from \"./NavigationItemEditorial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"['navigation__menu-nested' , {'is-visible': isActiveElement}]\"\n       :id=\"'nav-submenu-'+ item.uuid\">\n    <component\n        :is=\"secondLevelNavigationComponent\" v-if=\"secondLevelNavigationComponent\"\n        :key=\"item.uuid\"\n        :item=\"itemToPass\"\n        :highlightItems=\"item.highlightItems\"\n        :posterImage=\"item.posterImage\"\n        :productCardConf=\"productCardConf\"></component>\n    <div v-else-if=\"isEditInterface && !item.nestedItems\">\n      <pg-button v-if=\"item.link\" :href=\"item.link | mgnlLink('url')\">{{ item.label }}</pg-button>\n      <h2 v-else class=\"navigation__menu-nested__title\">{{ item.label }}</h2>\n    </div>\n    <slot></slot>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport NavigationTabs from \"./NavigationTabs.vue\";\nimport NavigationItemEditorial from \"./NavigationItemEditorial.vue\";\nimport NavigationProductList from \"./NavigationProductList.vue\";\n\nexport default {\n  name: \"MainNavigationItem\",\n\n  components: {\n    PgButton,\n    NavigationTabs,\n    NavigationItemEditorial,\n    NavigationProductList\n  },\n\n  props: {\n    item: {\n      type: Object\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {\n      }\n    },\n    index: {\n      type: Number\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  computed: {\n    itemToPass() {\n      return this.item['menu-tabs-area']?.length === 1 ? this.item['menu-tabs-area'][0] : this.item;\n    },\n    secondLevelNavigationComponent() {\n      if (this.item['menu-tabs-area']?.length > 1 && !this.isEditInterface) return \"NavigationTabs\";\n      else if ((this.item.nestedItems && this.item.productSelect) || this.item['menu-tabs-area']?.length === 1) return \"NavigationProductList\";\n      else if (this.item.nestedItems) return \"NavigationItemEditorial\";\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainNavigationItem.vue?vue&type=template&id=40887382&\"\nimport script from \"./MainNavigationItem.vue?vue&type=script&lang=js&\"\nexport * from \"./MainNavigationItem.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/serviceServicePack.71b63461.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"piaggio-select-container\"},[_c('div',{staticStyle:{\"position\":\"relative\",\"display\":\"flex\",\"align-items\":\"center\"}},[_c('b-form-select',{class:(\"piaggio-select \" + (this.$props.state === false ? 'piaggio-select-error' : '')),attrs:{\"id\":this.id,\"value\":this.modelValue,\"placeholder\":\"\",\"options\":this.$props.options,\"aria-label\":this.$props.label,\"disabled\":this.disabled,\"aria-required\":this.ariaRequired,\"state\":this.state},on:{\"input\":function (value) { return _vm.handleInputEvent(value); }}}),(this.$props.state === false)?_c('i',{staticClass:\"icon-warning piaggio-select__error-icon\"}):_vm._e(),(this.$props.state === true)?_c('svg',{staticClass:\"piaggio-select__success-icon\",attrs:{\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M5 11.6154L10.0909 17L19 7\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"stroke-linejoin\":\"bevel\"}})]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"piaggio-select-container\">\n    <div style=\"position: relative; display: flex; align-items: center\">\n\n      <b-form-select\n          :id=\"this.id\"\n          :value=\"this.modelValue\"\n          @input=\"(value) => handleInputEvent(value)\"\n          placeholder=\"\"\n          :options=\"this.$props.options\"\n          :aria-label=\"this.$props.label\"\n          :class=\"`piaggio-select ${this.$props.state === false ? 'piaggio-select-error' : ''}`\"\n          :disabled=\"this.disabled\"\n          :aria-required=\"this.ariaRequired\"\n          :state=\"this.state\"\n      ></b-form-select>\n\n      <!-- feedback icons -->\n      <i v-if=\"this.$props.state === false\" class=\"icon-warning piaggio-select__error-icon\"></i>\n      <svg v-if=\"this.$props.state === true\" class=\"piaggio-select__success-icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n        <path d=\"M5 11.6154L10.0909 17L19 7\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"bevel\"/>\n      </svg>\n\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgTooltip from \"@wl-components/Tooltip/Tooltip.vue\";\n\nexport default {\n  name: \"PiaggioFormSelect\",\n  components: { PgTooltip },\n  model: {\n    prop: 'modelValue',\n    event: 'update:modelValue'\n  },\n  props: {\n    label: String,\n    modelValue: String,\n    id: {\n      required: false,\n      type: String,\n    },\n    options: {\n      required: true,\n      type: Array // array of object { text: '', value: '' }\n    },\n    disabled: {\n      required: false,\n      type: Boolean,\n      default: false\n    },\n    ariaRequired: {\n      required: false,\n      type: Boolean,\n      default: false\n    },\n    state: {\n      required: false,\n      type: Boolean,\n      default: true\n    }\n  },\n  methods: {\n    handleInputEvent(value) {\n      this.$emit('update:modelValue', value)\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormSelect.vue?vue&type=template&id=009a682d&\"\nimport script from \"./FormSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./FormSelect.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('img',{staticClass:\"image\",style:(_vm.style),attrs:{\"src\":_vm.isNotLazySrc,\"data-src\":_vm.computeLazySrc,\"data-srcset\":_vm.lazySrcset,\"sizes\":_vm.sizes,\"alt\":_vm.alt ? _vm.alt : '',\"data-test\":_vm.aspectRatio}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n<template>\n  <img\n    :src=\"isNotLazySrc\"\n    :data-src=\"computeLazySrc\"\n    :data-srcset=\"lazySrcset\"\n    :sizes=\"sizes\"\n    :alt=\"alt ? alt : ''\"\n    class=\"image\"\n    :style=\"style\"\n    :data-test=\"aspectRatio\"\n  />\n</template>\n\n<script>\nimport lozad from \"lozad\";\nexport default {\n  name: \"PgImage\",\n  props: {\n    backgroundColor: {\n      type: String,\n      default: \"transparent\"\n    },\n    lazySrcset: {\n      type: String,\n      default: null\n    },\n    sizes: {\n      type: String,\n      default: null\n    },\n    src: {\n      type: String,\n      default: null\n    },\n    lazySrc: {\n      type: String,\n      default: null\n    },\n    alt: {\n      type: String,\n      default: \"\"\n    },\n    height: {\n      type: Number,\n      default: 0\n    },\n    width: {\n      type: Number,\n      default: 0\n    },\n    uuid: {\n      type: String,\n      default: null\n    },\n    eventName: {\n      type: String,\n      default: \"\"\n    },\n    productType: {\n      type: String,\n      default: \"\"\n    },\n    brandCode: {\n      type: String,\n      default: \"P\"\n    },\n    categoryCode: {\n      default: \"\"\n    }\n\n  },\n  data() {\n    return {\n      loading: true,\n      placeholder: {\n        family: \"\",\n        vehicleE: \"vehicle-vespa.png\",\n        vehicleP: \"vehicle-piaggio.png\",\n        vehicleV: \"vehicle-vespa.png\",\n        vehicleA: \"vehicle-aprilia.png\",\n        vehicleG: \"vehicle-motoguzzi.png\",\n        accessory: \"accessory.png\",\n        service: \"service.png\",\n        serviceXCareWarranty: \"serviceXCareWarranty.png\",\n        serviceXCareMaintenance: \"serviceXCareMaintenance.png\",\n        serviceServicePack: \"serviceServicePack.png\",\n        serviceCheck: \"serviceCheck.png\"\n      }\n    };\n  },\n  computed: {\n\n    aspectRatio() {\n      // Calculate the aspect ratio of the image\n      // if the width and the height are given.\n      if (!parseInt(this.width) || parseInt(!this.height)) return null;\n\n      return (parseInt(this.height) / parseInt(this.width)) * 100;\n    },\n    style() {\n      if (this.$config.editMode) return;\n      // The background color is used as a\n      // placeholder while loading the image.\n      // You can use the dominant color of the\n      // image to improve perceived performance.\n      // See: https://manu.ninja/dominant-colors-for-lazy-loading-images/\n      const style = { backgroundColor: this.backgroundColor };\n\n      if (this.width) style.width = `${this.width}px`;\n\n      // If the image is still loading and an\n      // aspect ratio could be calculated, we\n      // apply the calculated aspect ratio by\n      // using padding top.\n      const applyAspectRatio = this.loading && this.aspectRatio;\n      if (applyAspectRatio) {\n        // Prevent flash of unstyled image\n        // after the image is loaded.\n        style.height = 0;\n        // Scale the image container according\n        // to the aspect ratio.\n        style.paddingTop = `${this.aspectRatio}%`;\n      }\n\n      return style;\n    },\n    isNotLazySrc() {\n      if (this.src) {\n        this.loading = false;\n        // if(!this.src) return this.getPlaceholder();\n        return this.src;\n      }\n      if(!this.loading) return this.computeLazySrc;\n      return false;\n    },\n\n    computeLazySrc() {\n      if(this.src) return false;\n      let src = this.lazySrc;\n      if (!src && this.productType !== \"\") {\n        src = this.getPlaceholder();\n      }\n      return src;\n    }\n  },\n  methods: {\n    getPlaceholder() {\n      let src;\n      switch(this.productType) {\n\n        case \"vehicle\":\n          const vehicleWithBrand = this.productType + this.brandCode;\n          src = require(`@wl-assets/img/placeholder/${this.placeholder[vehicleWithBrand]}`)\n          break;\n        case \"service\":\n          let category;\n          const cat = String(this.categoryCode);\n          switch(cat) {\n            case \"1\":\n              category = \"XCareWarranty\";\n              break;\n            case \"4\":\n            case \"5\":\n            case \"6\":\n            case \"9\":\n              category = \"XCareMaintenance\";\n              break;\n            case \"7\":\n            case \"8\":\n              category = \"Check\";\n              break;\n            default:\n              category = \"\";\n\n          }\n          src = require(`@wl-assets/img/placeholder/${this.placeholder[this.productType + category]}`)\n          break;\n        default:\n          if (this.placeholder[this.productType]) {\n            src = require(`@wl-assets/img/placeholder/${this.placeholder[this.productType]}`)\n          }\n          break;\n      }\n    return src;\n    },\n    callBackFunc(el) {\n      this.loading = false;\n      if(this.lazySrcset) el.setAttribute('srcset', this.lazySrcset);\n    }\n  },\n  mounted() {\n    if(!this.src) {\n      // As soon as the <img> element triggers\n      // the `load` event, the loading state is\n      // set to `false`, which removes the aspect\n      // ratio we've applied earlier.\n      const setLoadingState = () => {\n        this.loading = false;\n\n        /*console.log(\n          \"Image has loaded:\",\n          this.eventName,\n          this.$el.src,\n          this.$el.clientHeight\n        );*/\n        this.$eventHub.emit(this.eventName, this.$el);\n      };\n\n      this.$el.addEventListener(\"load\", setLoadingState);\n\n      // We remove the event listener as soon as\n      // the component is destroyed to prevent\n      // potential memory leaks.รฆ\n\n      this.$once(\"hook:destroyed\", () => {\n        this.$el.removeEventListener(\"load\", setLoadingState);\n      });\n\n      // We initialize Lozad.js on the root\n      // element of our component.\n      const observer = lozad(this.$el, {\n        load: this.callBackFunc\n      });\n\n      observer.observe();\n    } else this.loading = false;\n  }\n};\n</script>\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Image.vue?vue&type=template&id=00c5f184&\"\nimport script from \"./Image.vue?vue&type=script&lang=js&\"\nexport * from \"./Image.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","// this mixin is the base for every vue component that represents a magnolia component\nlet mgnlComponentMixin = {\n\n  // comment must be true in order to make vaadin edit mode to work as expected\n  comments: true,\n\n  // this props are collected from the JSPs\n  props: {\n    \"jcrDataUrl\": String, //TODO remove, probably not needed anymore\n    \"jcrPath\": String, // path jcr of mgnl component node used to select the data from page data json\n    \"jcrUuid\": String, // uuid to identify component,\n    \"mock\": Object, // only to mock data in storybook mode\n    \"commonMock\": Object // only to mock commonData in storybook mode\n  },\n\n  computed: {\n\n    // retrieve all the data from a subtree, the current component subtree\n    model: function () {\n\n      // when component created inside a storybook story, a mock is returned\n      if (!!this.mock) {\n        return this.mock;\n      }\n      // when root or config is undefined, the client is not able to load facade information (due to unauthorized event from community!)\n      if(this.$root.$data === undefined || this.$root.$data.pageData === undefined || this.$config === undefined || this.$config.apiPath === undefined) {\n        return {}\n      }\n\n      let vehiclePDPConfPath = this.$config.vehiclePDPConfPath;\n      let vehiclePDPConfName = null;\n      if(vehiclePDPConfPath) {\n        vehiclePDPConfName = vehiclePDPConfPath.substring(vehiclePDPConfPath.lastIndexOf('/') + 1);\n      }\n\n      let vehiclePLPConfPath = this.$config.vehiclePLPConfPath;\n      let vehiclePLPConfName = null;\n      if(vehiclePLPConfPath) {\n        vehiclePLPConfName = vehiclePLPConfPath.substring(vehiclePLPConfPath.lastIndexOf('/') + 1);\n      }\n\n      let contentPath = (this.jcrPath || \"\").replace(this.$config.apiPath, \"\").replace(/^\\//, \"\");\n\n      let contentPathParts = !!contentPath ? contentPath.split(\"/\") : [];\n      let componentData = null;\n      let inheritedComponentData = null;\n\n      if (contentPathParts.length > 0) {\n        componentData = this.$root.$data.pageData;\n        contentPathParts.forEach((key) => {\n          if (!!componentData) {\n            if (key in componentData) {\n              componentData = componentData[key];\n            }\n            else {\n              componentData = componentData[\"component-\" + key];\n            }\n          }\n        });\n      }\n      // trick to populate page model\n      else if (this.jcrPath == this.$config.apiPath) {\n        componentData = this.$root.$data.pageData;\n      }\n\n      //TODO capire come deduplicare questo pezzo di codice\n\n      if (!componentData && vehiclePDPConfName) {\n        inheritedComponentData = this.$root.$data.pageData[vehiclePDPConfName];\n        if(inheritedComponentData) {\n          contentPath = (this.jcrPath || \"\").replace(vehiclePDPConfPath, \"\").replace(/^\\//, \"\");\n          contentPathParts = !!contentPath ? contentPath.split(\"/\") : [];\n\n          if (contentPathParts.length > 0) {\n            componentData = inheritedComponentData;\n            contentPathParts.forEach((key) => {\n              if (!!componentData) {\n                if (key in componentData) {\n                  componentData = componentData[key];\n                }\n                else {\n                  componentData = componentData[\"component-\" + key];\n                }\n              }\n            });\n          }\n        }\n      }\n\n      if (!componentData && vehiclePLPConfName) {\n        inheritedComponentData = this.$root.$data.pageData[vehiclePLPConfName];\n        if(inheritedComponentData) {\n          contentPath = (this.jcrPath || \"\").replace(vehiclePLPConfPath, \"\").replace(/^\\//, \"\");\n          contentPathParts = !!contentPath ? contentPath.split(\"/\") : [];\n\n          if (contentPathParts.length > 0) {\n            componentData = inheritedComponentData;\n            contentPathParts.forEach((key) => {\n              if (!!componentData) {\n                if (key in componentData) {\n                  componentData = componentData[key];\n                }\n                else {\n                  componentData = componentData[\"component-\" + key];\n                }\n              }\n            });\n          }\n        }\n      }\n\n      return componentData || {};\n    },\n\n    // retrieve common data from mgnl page json service otherwise return mock\n    common: function () {\n      // when component created inside a storybook story, a mock is returned\n      if (!!this.commonMock) {\n        return this.commonMock;\n      }\n\n      return this.$root.commonData || {};\n    }\n\n  },\n\n  created: function () {\n    //this.retrieveDataFromBackend();\n  },\n\n}\n\nexport { mgnlComponentMixin }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{class:_vm.footerClass,attrs:{\"id\":\"footer\"}},[(_vm.includeCommunityFooter)?[_c('section',{staticClass:\"section section--bggray\"},[_c('div',{staticClass:\"section__container\"},[_c('div',{staticClass:\"grid-x align-center one_icon\"},[_c('div',{staticClass:\"editorial-icon\"},[_c('h3',[_c('pg-icon-text',{attrs:{\"iconName\":_vm.communityFooterData.iconName,\"title\":_vm.communityFooterData.iconTitle}})],1)])])])]),_c('hr',{staticClass:\"divider\"}),_c('section',{staticClass:\"section section--bggray\"},[_c('div',{staticClass:\"section__container\"},[_c('div',{staticClass:\"grid-x align-center motoplex--custom\"},[_c('editorial',_vm._b({},'editorial',_vm.communityFirstContact,false)),_c('editorial',_vm._b({},'editorial',_vm.communitySecondContact,false))],1)])]),_c('p',{staticStyle:{\"padding-top\":\"2rem\"}})]:_vm._e(),_c('h2',{staticClass:\"show-for-sr\"},[_c('msg',{attrs:{\"id\":\"common.footer.title.aria\"}})],1),(Object.keys(_vm.logo || {}).length !== 0)?_c('pg-image',{staticClass:\"footer__logo\",attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.logo,'url'),\"alt\":_vm.brandName}}):_vm._e(),(_vm.items.length > 0 || _vm.isEditInterface)?_c('div',{staticClass:\"footer__main\"},[(!_vm.isEditInterface)?_vm._l((_vm.items),function(item){return _c('div',{key:item.uuid,staticClass:\"footer__main-item\"},[_c('footer-column',{attrs:{\"column\":item.column,\"column-id\":item.uuid}})],1)}):[_vm._t(\"default\")]],2):_vm._e(),(_vm.socialLinks.length > 0)?_c('div',{staticClass:\"footer__social\"},[_c('div',{staticClass:\"ft-social-list\"},[_c('ul',_vm._l((_vm.socialLinks),function(item){return _c('li',{key:item.socialIcon},[_c('a',{attrs:{\"href\":item.socialLink,\"target\":\"_blank\",\"rel\":\"noopener\"}},[_c('i',{class:(\"icon-\" + (item.socialIcon))},[_c('span',{staticClass:\"show-for-sr\"},[_vm._v(_vm._s(item.socialLabel))])])])])}),0)]),_c('div',{staticClass:\"footer__change-lang\"},[_c('pg-change-language-country',{attrs:{\"uuid\":'inFooter',\"brandNodeName\":_vm.brandNodeName,\"site-service-param\":_vm.siteServiceParam,\"languages\":_vm.languages,\"currentLocale\":_vm.currentLocale,\"disableChangeLang\":_vm.disableChangeLang,\"currentCountry\":_vm.currentCountry,\"show-flags\":_vm.showFlags}})],1)]):_vm._e(),_c('div',{staticClass:\"footer__legal\"},[_vm._v(_vm._s(_vm.legalNote))])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <footer id=\"footer\" :class=\"footerClass\">\n    <!-- PIAGGIO-8636: pre footer for community -->\n    <template v-if=\"includeCommunityFooter\">\n      <section class=\"section section--bggray\">\n        <div class=\"section__container\">\n          <div class=\"grid-x align-center one_icon\">\n            <div class=\"editorial-icon\">\n              <h3>\n                <pg-icon-text :iconName=\"communityFooterData.iconName\" :title=\"communityFooterData.iconTitle\" />\n              </h3>\n            </div>\n          </div>\n        </div>\n      </section>\n      <hr class=\"divider\" />\n      <section class=\"section section--bggray\">\n        <div class=\"section__container\">\n          <div class=\"grid-x align-center motoplex--custom\">\n            <editorial v-bind=\"communityFirstContact\" />\n            <editorial v-bind=\"communitySecondContact\" />\n          </div>\n        </div>\n      </section>\n      <p style=\"padding-top: 2rem\"></p>\n    </template>\n    <!-------->\n    <h2 class=\"show-for-sr\">\n      <msg id=\"common.footer.title.aria\" />\n    </h2>\n    <pg-image :lazy-src=\"logo | mgnlMedia('url')\" :alt=\"brandName\" class=\"footer__logo\" v-if=\"Object.keys(logo || {}).length !== 0\"></pg-image>\n    <div class=\"footer__main\" v-if=\"items.length > 0 || isEditInterface\">\n      <template v-if=\"!isEditInterface\">\n        <div class=\"footer__main-item\" v-for=\"item in items\" :key=\"item.uuid\">\n          <footer-column :column=\"item.column\" :column-id=\"item.uuid\" />\n        </div>\n      </template>\n      <template v-else>\n        <slot></slot>\n      </template>\n    </div>\n\n    <!-- Footer social lang -->\n    <div class=\"footer__social\" v-if=\"socialLinks.length > 0\">\n      <div class=\"ft-social-list\">\n        <ul>\n          <li v-for=\"item in socialLinks\" :key=\"item.socialIcon\">\n            <a :href=\"item.socialLink\" target=\"_blank\" rel=\"noopener\">\n              <i :class=\"`icon-${item.socialIcon}`\">\n                <span class=\"show-for-sr\">{{item.socialLabel}}</span>\n              </i>\n            </a>\n          </li>\n        </ul>\n      </div>\n\n      <div class=\"footer__change-lang\">\n        <pg-change-language-country\n          :uuid=\"'inFooter'\"\n          :brandNodeName=\"brandNodeName\"\n          :site-service-param=\"siteServiceParam\"\n          :languages=\"languages\"\n          :currentLocale=\"currentLocale\"\n          :disableChangeLang=\"disableChangeLang\"\n          :currentCountry=\"currentCountry\"\n          :show-flags=\"showFlags\"\n        />\n      </div>\n    </div>\n\n    <!-- Footer legal -->\n    <div class=\"footer__legal\">{{legalNote}}</div>\n  </footer>\n</template>\n<script>\n// PIAGGIO-8636: some components are useless for the implementation, but the css styles are needed for the aspect in the interface\nimport PgChangeLanguageCountry from \"../ChangeLanguageCountry/ChangeLanguageCountry.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport FooterColumn from \"./FooterColumn.vue\";\nimport EditorialIcon from \"../EditorialIcon/EditorialIcon\";\nimport Divider from \"../Divider/Divider\";\nimport Editorial from \"../Editorial/Editorial\";\nimport PgIconText from \"../IconText/IconText\";\n\nexport default {\n  name: \"pg-footer\",\n  components: {\n    Editorial,\n    Divider,\n    PgImage,\n    PgChangeLanguageCountry,\n    FooterColumn,\n    EditorialIcon,\n    PgIconText\n  },\n  props: {\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    },\n    logo: {\n      type: Object,\n      default: () => ({})\n    },\n    brandName: {\n      type: String\n    },\n    brandNodeName: {\n      type: String\n    },\n    siteServiceParam: {\n      type: String\n    },\n    brandNodePath: {\n      type: String\n    },\n    legalNote: {\n      type: String\n    },\n    items: {\n      type: Array,\n      default: () => []\n    },\n    socialLinks: {\n      type: Array,\n      default: () => []\n    },\n    languages: {\n      type: Array,\n      default: () => []\n    },\n    currentLocale: {\n      type: String\n    },\n    currentCountry: {\n      type: String\n    },\n    currentLanguage: {\n      type: String\n    },\n    disableChangeLang: {\n      type: Boolean,\n      default: false\n    },\n    showFlags: {\n      type: Boolean\n    },\n    includeCommunityFooter: {\n      type: Boolean,\n      default: false\n    },\n    communityFooterData: {\n      type: Object,\n      default: () => ({})\n    },\n  },\n  computed: {\n    communityFirstContact() {\n      return {\n        sectionStyle: \"bggray\",\n        uuid: \"pre-footer-contact-1\",\n        imageStyle: \"medium\",\n        layout: \"align-center-two-col\",\n        headingStyle: \"medium\",\n        text: this.communityFooterData.contact1,\n        ctaLinks: [],\n        title: null\n      }\n    },\n    communitySecondContact() {\n      return {\n        uuid: \"pre-footer-contact-2\",\n        imageStyle: \"medium\",\n        layout: \"align-center-two-col\",\n        headingStyle: \"medium\",\n        text: this.communityFooterData.contact2,\n        ctaLinks: [],\n        title: null\n      }\n    },\n    footerClass() {\n      return this.includeCommunityFooter ? \"footer footer-custom-community\" : \"footer\"\n    }\n  },\n  mounted() {\n    if (this.$mq == \"small\") {\n      const actionMenu = document.getElementById('floating-shortcuts');\n      const footer = document.getElementById('footer');\n      if (actionMenu) {\n        footer.style.marginBottom = \"45px\";\n      }\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=62afc1c9&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","const onAfterScreenLoad = (event, ctx) => {\n  /* Registration - country mapping */\n  const currentCountry = ctx._self.$attrs.currentCountry;\n  if (event.currentScreen === \"gigya-registration-one-column\"\n    || event.currentScreen === \"gigya-complete-registration-screen\") {\n    if (document.getElementsByClassName(\"gigya-country-field hidden\")) {\n      let countryTags = document.getElementsByClassName(\"gigya-country-field hidden\");\n      for (let i = 0; i < countryTags.length; i++) {\n        countryTags[i].children['profile.country'].setAttribute('value', currentCountry);\n      }\n    }\n  }\n  \n  /* Redirect links */\n  if (event.currentScreen === \"gigya-login-one-column\" || \"gigya-reset-password-success-screen\"\n    || \"gigya-verification-sent-screen\" || \"gigya-site-social-linking-account-screen\") {\n    if (document.getElementById(\"community-faq-redirect\")) {\n      let faq = document.getElementById(\"community-faq-redirect\");\n      faq.setAttribute('href', ctx.faqRedirect);\n    }\n    if (document.getElementsByClassName(\"forgot-pwd-redirect\")) {\n      let forgotPsw = document.getElementsByClassName(\"forgot-pwd-redirect\");\n      for (let i = 0; i < forgotPsw.length; i++) {\n        forgotPsw[i].setAttribute('href', ctx.forgotPswRedirect);\n      }\n    }\n    if (document.getElementsByClassName(\"registration-redirect\")) {\n      let registration = document.getElementsByClassName(\"registration-redirect\");\n      for (let i = 0; i < registration.length; i++) {\n        registration[i].setAttribute('href', ctx.registrationRedirect);\n      }\n    }\n    if (document.getElementsByClassName(\"login-redirect\")) {\n      let login = document.getElementsByClassName(\"login-redirect\");\n      for (let i = 0; i < login.length; i++) {\n        login[i].setAttribute('href', ctx.loginRedirect);\n      }\n    }\n  }\n  if (event.currentScreen === \"gigya-registration-one-column\" || \"gigya-complete-registration-screen\"\n    || \"gigya-update-profile-screen\") {\n    if (document.getElementById(\"community-policy-redirect\")) {\n      let policy = document.getElementById(\"community-policy-redirect\");\n      policy.setAttribute('href', ctx.policyRedirect);\n    }\n  }\n  \n  /* Form custom rules for birth fields */\n  if (event.currentScreen === \"gigya-registration-one-column\" || \"gigya-complete-registration-screen\"\n    || \"gigya-update-profile-screen\") {\n    if (document.querySelectorAll(\".gigya-birth-day > .gigya-input-text\")) {\n      let birthInput = document.querySelectorAll(\".gigya-birth-day > .gigya-input-text\");\n      birthInput.forEach(input => {\n        input.setAttribute(\"min\", 1);\n        input.setAttribute(\"max\", 31);\n      });\n    }\n    if (document.querySelectorAll(\".gigya-birth-year > .gigya-input-text\")) {\n      let birthInput = document.querySelectorAll(\".gigya-birth-year > .gigya-input-text\");\n      birthInput.forEach(input => {\n        input.setAttribute(\"min\", 1920);\n        let today = new Date();\n        let currentYear = today.getFullYear();\n        input.setAttribute(\"max\", currentYear);\n      });\n    }\n  }\n  \n  /* To manage local date format */\n  if (event.currentScreen === \"profile-info-new\" && document.getElementsByClassName('profile-birth-date')) {\n    let newValue = new Date(event.profile.birthYear, event.profile.birthMonth - 1, event.profile.birthDay);\n    const options = {\n      year: 'numeric',\n      month: '2-digit',\n      day: '2-digit',\n    };\n    let birthDate = document.getElementsByClassName('profile-birth-date');\n    birthDate.forEach(item => {\n      item.innerText = newValue.toLocaleDateString(ctx.$attrs.currentLanguage, options);\n    });\n  }\n  \n  /* Modal - close btn */\n  if (event.currentScreen ===\"gigya-login-one-column\" || \"gigya-verification-pending-screen\" || \"gigya-verification-sent-screen\") {\n    let closeBtnContainer = document.getElementsByClassName(\"gigya-screen-dialog-close\");\n    let closeBtn = closeBtnContainer[0].getElementsByTagName(\"a\");\n    let closeImg = closeBtn[0].getElementsByTagName(\"img\");\n    \n    if (closeImg.length > 0) {\n      closeBtn[0].removeChild(closeImg[0]);\n      closeBtn[0].setAttribute(\"class\", \"gigya-close-btn-link\");\n    }\n    \n    /* Append the email at the end of the message */\n    if (event.currentScreen === \"gigya-verification-pending-screen\") {\n      let label = document.querySelector(\"label.register-success-email[data-screenset-roles*='instance']\");\n      let emailToBeVerified = \"(\" + event.profile.email + \")\";\n      let brTag = document.createElement(\"br\");\n      let emailTag = document.createElement(\"b\");\n      emailTag.innerText = emailToBeVerified;\n      label.appendChild(brTag);\n      label.appendChild(emailTag);\n    }\n  }\n  \n  /* Append at the end of the success message the required data */\n  if (event.currentScreen === \"gigya-registration-success\") {\n    let label = document.querySelector(\"label.register-success-description[data-screenset-roles*='instance']\");\n    let emailRegistrationSuccess = event.context.profile.email;\n    let brTag = document.createElement(\"br\");\n    let emailTag = document.createElement(\"b\");\n    emailTag.innerText = emailRegistrationSuccess;\n    label.appendChild(brTag);\n    label.appendChild(emailTag);\n  }\n  if (event.currentScreen === \"gigya-forgot-password-success-screen\") {\n    let label = document.querySelector(\"label.register-success-button[data-screenset-roles*='instance']\");\n    let userEmail = event.context.response.requestParams.loginID;\n    let brTag = document.createElement(\"br\");\n    let emailTag = document.createElement(\"b\");\n    emailTag.innerText = userEmail;\n    label.appendChild(brTag);\n    label.appendChild(emailTag);\n  }\n  \n  /* Show / Hide Password Button */\n  let appendImage = function(element, elemClass, url, elemAlt) {\n    let img = document.createElement(\"img\");\n    img.setAttribute(\"class\", elemClass);\n    img.setAttribute(\"alt\", elemAlt);\n    img.src = url;\n    element.appendChild(img);\n  };\n  let wrap = function(el, wrapper) {\n    el.parentNode.insertBefore(wrapper, el);\n    wrapper.appendChild(el);\n  };\n  let appendButtonShowPassword = function(elemInput) {\n    // Ignore if already wrapped\n    let parentElement = elemInput.parentElement;\n    if(parentElement.classList.contains(\"gigya-show-password-button-wrap\")) {\n      return false;\n    }\n    \n    // icons\n    let urlEyeOpen=\"https://test-sd18.opentext.cloud/ImConvServlet/imconv/581fe5f18e30004d9b8c32ba2b29095cf6aec608/original?use=default\";\n    let urlEyeOpenHover =\"https://test-sd18.opentext.cloud/ImConvServlet/imconv/719006930e38e06728c953d3fbfa6b702ea1dfc5/original?use=default\";\n    let urlEyeClosed=\"https://test-sd18.opentext.cloud/ImConvServlet/imconv/c5d32e6df6d1d9fe6f5456e0639c22344457945d/original?use=default\";\n    let urlEyeClosedHover=\"https://test-sd18.opentext.cloud/ImConvServlet/imconv/87444e322390c3fafb041cfa9ee04113f16208ec/original?use=default\";\n    \n    // Wrap input in a div\n    let wrapperElem = document.createElement(\"div\");\n    wrapperElem.setAttribute(\"class\", \"gigya-show-password-button-wrap\");\n    wrap(elemInput, wrapperElem);\n    \n    parentElement = elemInput.parentElement; // == wrapperElem\n    \n    // Create button\n    let buttonShowPassword = document.createElement(\"button\");\n    buttonShowPassword.setAttribute(\"class\", \"gigya-show-password-button\");\n    buttonShowPassword.setAttribute(\"type\", \"button\");\n    \n    // Create visible div with images\n    let divPasswordVisible = document.createElement(\"div\");\n    divPasswordVisible.setAttribute(\"class\",\"gigya-password-visible\");\n    appendImage(\n      divPasswordVisible,\n      \"gigya-show-password-img-eye gigya-show-password-img\",\n      urlEyeClosed,\n      'hide password icon'\n    );\n    appendImage(\n      divPasswordVisible,\n      \"gigya-show-password-img-eye gigya-show-password-img-hover\",\n      urlEyeClosedHover,\n      'hide password icon red'\n    );\n    buttonShowPassword.appendChild(divPasswordVisible);\n    \n    // Create invisible div with images\n    let divPasswordInvisible = document.createElement(\"div\");\n    divPasswordInvisible.setAttribute(\"class\",\"gigya-password-invisible\");\n    appendImage(\n      divPasswordInvisible,\n      \"gigya-show-password-img-eye gigya-show-password-img\",\n      urlEyeOpen,\n      'show password icon'\n    );\n    appendImage(\n      divPasswordInvisible,\n      \"gigya-show-password-img-eye gigya-show-password-img-hover\",\n      urlEyeOpenHover,\n      'show password icon red'\n    );\n    buttonShowPassword.appendChild(divPasswordInvisible);\n    \n    // Add click event to button (show/hide password)\n    buttonShowPassword.onclick = function() {\n      buttonShowPassword.classList.toggle('gigya-show-password');\n      \n      if (elemInput.type === \"password\") {\n        elemInput.type=\"text\";\n      } else {\n        elemInput.type=\"password\";\n      }\n    };\n    \n    // Append button to container\n    parentElement.appendChild(buttonShowPassword);\n  };\n  \n  // Init Show / Hide Password\n  if (event.currentScreen === \"gigya-registration-one-column\") {\n    appendButtonShowPassword(document.forms['gigya-register-form'].password);\n    appendButtonShowPassword(document.querySelector('#'+event.instanceID+' .gigya-input-password'));\n    appendButtonShowPassword(document.forms['gigya-register-form'].passwordRetype);\n  }\n  if (event.currentScreen === \"gigya-registration-checkout-screen\") {\n    appendButtonShowPassword(document.forms['gigya-register-form'].password);\n    appendButtonShowPassword(document.forms['gigya-register-form'].passwordRetype);\n  }\n  if (event.currentScreen === \"gigya-login-one-column\") {\n    appendButtonShowPassword(document.forms['gigya-login-form'].password);\n    appendButtonShowPassword(document.querySelector('#'+event.instanceID+' .gigya-input-password'));\n  }\n  if (event.currentScreen === \"gigya-reset-password-screen\") {\n    appendButtonShowPassword(document.forms['gigya-reset-password-form'].newPassword);\n    appendButtonShowPassword(document.forms['gigya-reset-password-form'].passwordRetype);\n  }\n  if (event.currentScreen === \"gigya-change-password-screen\") {\n    appendButtonShowPassword(document.querySelector(\"#gigya-password-password\"));\n    appendButtonShowPassword(document.querySelector(\"#gigya-password-newPassword\"));\n    appendButtonShowPassword(document.querySelector(\"#gigya-password-passwordRetype\"));\n  }\n  \n  /* Registration - checkbox */\n  if (event.currentScreen === \"gigya-registration-one-column\") {\n    document.getElementById('gigya-checkbox-126872887440999460').onclick = function() {\n      let checkboxes = document.getElementsByClassName('gigya-input-checkbox');\n      for (let checkbox of checkboxes) {\n        checkbox.checked = this.checked;\n      }\n    };\n  }\n  else if (event.currentScreen === \"gigya-registration-checkout-screen\") {\n    document.getElementById('gigya-checkbox-29561445627791564').onclick = function() {\n      let checkboxes = document.getElementsByClassName('gigya-input-checkbox');\n      for (let checkbox of checkboxes) {\n        checkbox.checked = this.checked;\n      }\n    };\n  }\n  else if (event.currentScreen === \"gigya-complete-registration-screen\") {\n    document.querySelectorAll('#gigya-complete-registration-screen .registration-checkbox').forEach(function(elem) {\n      if(elem.querySelector('input').checked) {\n        elem.classList.add('hideSubscription');\n      }\n    });\n    document.getElementById('gigya-checkbox-140217366575257090').onclick = function() {\n      let checkboxes = document.getElementsByClassName('gigya-input-checkbox');\n      for (let checkbox of checkboxes) {\n        checkbox.checked = this.checked;\n      }\n    };\n  } else if(event.currentScreen === \"gigya-update-profile-screen\") {\n    document.getElementById('gigya-checkbox-126872887440999460').onclick = function() {\n      let checkboxes = document.getElementsByClassName('gigya-input-checkbox');\n      for (let checkbox of checkboxes) {\n        checkbox.checked = ctx.checked;\n      }\n    };\n  }\n    /* Redirect URL EMEA */\n  // Registration && ForgotPassword\n  else if (event.currentScreen === \"gigya-login-one-column\") {\n    gigya.accounts.showScreenSet({\n      screenSet: 'Aprlia-2024-Community-ProfileUpdate',\n      startScreen: 'gigya-update-profile-screen',\n      containerID: 'gigya-update-profile-screen',\n      context: event\n    });\n  }\n  // New Customer popup\n  else if (event.currentScreen === \"gigya-new-customer-popup\") {\n    [...document.getElementsByClassName(\"gigya-composite-control gigya-composite-control-link pgva-btn pgva-secondary\")].forEach(e => {\n      e.setAttribute(\"href\", ACC.config.encodedContextPath + \"/register\");\n    });\n  }\n  // New Customer\n  else if (event.currentScreen === \"gigya-new-customer\") {\n    [...document.getElementsById(\"gigya-composite-control gigya-composite-control-link pgva-btn pgva-secondary\")].forEach(e => {\n      e.setAttribute(\"href\", ACC.config.encodedContextPath + \"/register\");\n    });\n  }\n  // Forgot Password Sent\n  else if (event.currentScreen === \"gigya-forgot-password-success-screen\") {\n    [...document.getElementsByClassName(\"gigya-composite-control gigya-composite-control-link pgva-btn pgva-primary\")].forEach(e => {\n      e.setAttribute(\"href\", ACC.config.encodedContextPath + \"/homepage\");\n    });\n  }\n  // Reset Password Success\n  else if (event.currentScreen === \"gigya-reset-password-success-screen\") {\n    [...document.getElementsByClassName(\"gigya-composite-control gigya-composite-control-link gigya-button-link pgva-btn pgva-primary\")].forEach(e => {\n      e.setAttribute(\"href\", ACC.config.encodedContextPath + \"/login\");\n    });\n  }\n  // Registration Success\n  else if (event.currentScreen === \"gigya-registration-success\") {\n    [...document.getElementsByClassName(\"gigya-composite-control gigya-composite-control-link pgva-btn pgva-primary\")].forEach(e => {\n      e.setAttribute(\"href\", ACC.config.encodedContextPath + \"/homepage\");\n    });\n  }\n}\n\nexport default onAfterScreenLoad;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader-wrap\"},[_c('div',{staticClass:\"loader\"},[_vm._v(\"Loading...\")])])}]\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"loader-wrap\">\n    <div class=\"loader\">Loading...</div>\n  </div>\n\n</template>\n\n<script>\n  export default {\n    name: \"PgLoader\"\n  }\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=20bfbe54&\"\nimport script from \"./Loader.vue?vue&type=script&lang=js&\"\nexport * from \"./Loader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.$config.debugMode)?_c('div',{staticClass:\"debug-panel\"},[_c('h3',[_vm._v(\"Debug info for component \"+_vm._s(_vm.getParentName))]),_c('button',{on:{\"click\":function($event){return _vm.toggle()}}},[_vm._v(\"Show / hide debug info\")]),_c('div',{staticClass:\"panel\",class:{open: _vm.open, close: !_vm.open}},[_c('div',[_c('strong',[_vm._v(\"Local data:\")]),_c('pre',[_vm._v(_vm._s(_vm.getLocalData))])]),_c('div',[_c('strong',[_vm._v(\"Model data:\")]),_c('pre',[_vm._v(_vm._s(_vm.getModelData))])])])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\n  export default {\n    name: \"DebugPanel\",\n\n    data: function () {\n      return {\n        open: false\n      }\n    },\n\n    methods: {\n      toggle: function () {\n        this.open = !this.open;\n      }\n    },\n\n    computed: {\n      getLocalData: function () {\n        return this.$parent.$data;\n      },\n\n      getModelData: function () {\n        return this.$parent.model;\n      },\n\n      getParentName: function () {\n        return this.$parent.$vnode && this.$parent.$vnode.tag;\n      }\n    }\n  }\n</script>\n\n<template>\n    <div class=\"debug-panel\" v-if=\"$config.debugMode\">\n        <h3>Debug info for component {{getParentName}}</h3>\n        <button @click=\"toggle()\">Show / hide debug info</button>\n        <div class=\"panel\" :class=\"{open: open, close: !open}\">\n            <div>\n                <strong>Local data:</strong>\n                <pre>{{getLocalData}}</pre>\n            </div>\n            <div>\n                <strong>Model data:</strong>\n                <pre>{{getModelData}}</pre>\n            </div>\n        </div>\n    </div>\n</template>\n\n<style scoped>\n\n</style>","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DebugPanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DebugPanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DebugPanel.vue?vue&type=template&id=a35543e0&scoped=true&\"\nimport script from \"./DebugPanel.vue?vue&type=script&lang=js&\"\nexport * from \"./DebugPanel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"a35543e0\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return ((_vm.$root.dataLoaded || _vm.$config.editMode))?_c('div',{attrs:{\"id\":\"vue-page-loaded\"}},[(_vm.isModalOpen)?_c('gigya-modal-overlay',{staticClass:\"modal-overlay\"}):_vm._e(),(!_vm.common.iframe && !_vm.common.isHeaderV2 && !_vm.common.isOverlayConfigured)?_c('pg-header',{attrs:{\"items\":_vm.header.headerItems,\"brandName\":_vm.common.brandName,\"brandNodeName\":_vm.common.brandNodeName,\"brandNodePath\":_vm.common.brandNodePath,\"services\":_vm.header.services,\"logo\":_vm.header.logo,\"logoOnTransparent\":_vm.header.logoOnTransparent,\"layout\":_vm.header.listStyle,\"hide-navigation\":_vm.navigation.hideNavigation}}):(!_vm.common.iframe && _vm.common.isHeaderV2)?_c('pg-header-v2',{attrs:{\"brandName\":_vm.common.brandName,\"brandNodeName\":_vm.common.brandNodeName,\"brandNodePath\":_vm.common.brandNodePath,\"customerServiceLink\":_vm.header.customerServiceLink,\"bookAppointmentLink\":_vm.header.bookAppointmentLink,\"services\":_vm.header.services,\"logo\":_vm.header.logo,\"logoOnTransparent\":_vm.header.logoOnTransparent,\"navigationMobileLogo\":_vm.header.navigationMobileLogo,\"menuItemsObj\":_vm.mainNavigation.mainNavigationItemsV2,\"common\":_vm.common,\"extraLink\":_vm.header.extraLink,\"extraLinkLabel\":_vm.header.extraLinkLabel,\"extraLinkIcon\":_vm.header.extraLinkIcon,\"extraLinkOnBlank\":_vm.header.extraLinkOnBlank},on:{\"toggle-contact\":_vm.toggleContactUs,\"header-store-service-ref\":_vm.getStoreServiceRef}}):_vm._e(),(!_vm.common.iframe && _vm.common.isHeaderV2 && _vm.isContactUsVisible)?_c('contacts-v2',{class:['contacts-us', {'show': _vm.isContactUsVisible}],attrs:{\"services\":_vm.header.services,\"customerServiceLink\":_vm.header.customerServiceLink,\"bookAppointmentLink\":_vm.header.bookAppointmentLink,\"storeServiceBtnWidth\":_vm.storeServiceBtnWidth,\"common\":_vm.common}}):_vm._e(),(!_vm.common.isHeaderV2 || !_vm.common.isMainNavigationV2 || !_vm.common.isOverlayConfigured)?_c('main-navigation',{attrs:{\"menuItemsObj\":_vm.mainNavigation.mainNavigationItems,\"highlightItems\":_vm.mainNavigation.highlightItems || [],\"common\":_vm.common}}):_vm._e(),(!_vm.common.iframe && _vm.common.floatingShortcuts && _vm.common.floatingShortcuts.length > 0 && !_vm.common.isOverlayConfigured)?_c('floating-shortcuts',{attrs:{\"floatingShortcuts\":_vm.common.floatingShortcuts,\"actpageFullUrl\":_vm.common.actpageFullUrl}}):_vm._e(),(_vm.common.santanderFinancialSimulator && _vm.common.santanderFinancialSimulator !== null && !_vm.common.isOverlayConfigured)?_c('santader-fin-sim',{attrs:{\"commonData\":_vm.common,\"modelData\":_vm.model}}):_vm._e(),_c('main',{attrs:{\"id\":\"mainContent\"}},[(_vm.common.isOverlayConfigured)?_c('homepage-overlay',_vm._b({},'homepage-overlay',_vm.hpOverlayData,false)):_vm._t(\"default\")],2),(!_vm.common.iframe && !_vm.common.isOverlayConfigured)?_c('pg-footer',{attrs:{\"logo\":_vm.footer.logo,\"items\":_vm.footer.footerColumns || [],\"brandName\":_vm.common.brandName,\"brandNodeName\":_vm.common.brandNodeName,\"site-service-param\":_vm.common.siteServiceParam,\"brandNodePath\":_vm.common.brandNodePath,\"languages\":_vm.common.changeLanguages,\"currentLocale\":_vm.common.currentLocale,\"socialLinks\":_vm.common.socialLinks,\"legalNote\":_vm.footer.legalNote,\"currentCountry\":_vm.common.currentCountry,\"currentLanguage\":_vm.common.currentLanguage,\"disableChangeLang\":_vm.common.disableChangeLang,\"includeCommunityFooter\":_vm.model.includePreFooter,\"communityFooterData\":{\n      iconName: _vm.common.communityData ? _vm.common.communityData.iconNamePreFooter : null,\n      iconTitle: _vm.common.communityData ? _vm.common.communityData.iconTitlePreFooter : null,\n      contact1: _vm.common.communityData ? _vm.common.communityData.contact1PreFooter : null,\n      contact2: _vm.common.communityData ? _vm.common.communityData.contact2PreFooter : null\n    },\"show-flags\":_vm.common.showFlags}}):_vm._e(),(!_vm.common.iframe && !_vm.common.isOverlayConfigured)?_c('marketing-tool-modal',{attrs:{\"common\":_vm.common}}):_vm._e(),(_vm.model.goToTop || this.common.goToTop)?_c('go-to-top'):_vm._e()],1):_c('pg-loader')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isSantanderSimulatorEnabled(_vm.commonData.santanderFinancialSimulator))?_c('section',{attrs:{\"id\":\"scf-container\"}},[_c('scf-quoting',{staticClass:\"container-scf\",attrs:{\"type\":\"sidebarRight\",\"calculation\":_vm.prepareSantanderData()}})],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <section id=\"scf-container\" v-if=\"isSantanderSimulatorEnabled(commonData.santanderFinancialSimulator)\">\n    <scf-quoting\n        class=\"container-scf\"\n        type=\"sidebarRight\"\n        :calculation=\"prepareSantanderData()\">\n    </scf-quoting>\n  </section>\n</template>\n\n<script>\nexport default {\n  name: \"SantaderFinSim\",\n  props: [\n      'commonData',\n      'modelData'\n  ],\n\n  data() {\n    return {\n      currentDataProduct: null\n    }\n  },\n\n  created() {\n    this.$eventHub.on('currentDataProduct', eventParams => {\n      this.currentDataProduct = Object.assign({}, eventParams);\n    })\n  },\n\n  methods: {\n    isSantanderSimulatorEnabled(santanderFinSim) {\n      return santanderFinSim &&\n          santanderFinSim.santanderEnabledForBrand &&\n          santanderFinSim.santanderEnabledForCountry &&\n          santanderFinSim.santanderPluginId\n    },\n\n    getCookieValue(cookieName) {\n      const name = cookieName + \"=\";\n      const decodedCookie = decodeURIComponent(document.cookie);\n      const cookieArray = decodedCookie.split(';');\n      for (let i = 0; i < cookieArray.length; i++) {\n        const cookie = cookieArray[i].trim();\n        if (cookie.indexOf(name) === 0) {\n          return cookie.substring(name.length, cookie.length);\n        }\n      }\n      return null;\n    },\n\n    getSantanderMarketingValue() {\n      const cookieValue = this.getCookieValue(\"CookieConsent\");\n      console.debug(\"Cookie Consent Value: \", cookieValue);\n      if (cookieValue) {\n        return cookieValue.replaceAll(\" \", \"\").includes(\"marketing:true\");\n      } else {\n        return false;\n      }\n    },\n\n    prepareSantanderData() {\n      let pdp = 'product-presentation';\n      return JSON.stringify({\n        \"country\": this.commonData?.currentCountry,\n        \"language\": this.commonData?.currentLanguage,\n        \"assetId\": this.currentDataProduct?.financingCode,\n        \"assetPrice\": this.currentDataProduct?.discountedPrice * 1 || this.currentDataProduct?.price * 1,\n        \"model\": this.modelData[pdp][Object.keys(this.modelData[pdp])[0]].name.trim(),\n        \"assetImage\": this.currentDataProduct?.images[0].small,\n        \"cookie\": this.getSantanderMarketingValue(),\n      })\n    }\n  }\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SantaderFinSim.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SantaderFinSim.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SantaderFinSim.vue?vue&type=template&id=246287df&\"\nimport script from \"./SantaderFinSim.vue?vue&type=script&lang=js&\"\nexport * from \"./SantaderFinSim.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-modal',{attrs:{\"id\":\"marketingToolModalContainer\",\"title\":_vm.modalTitle,\"googleMapCountryZoom\":_vm.common.googleMapCountryZoom,\"hide-footer\":\"\",\"scrollable\":\"\",\"no-fade\":\"\",\"modal-class\":\"modal--panel\"},on:{\"hidden\":function($event){return _vm.resetModalState()}},scopedSlots:_vm._u([{key:\"modal-header-close\",fn:function(){return [_c('i',{staticClass:\"close__icon icon-close\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"close__label\"},[_c('msg',{attrs:{\"id\":'common.modal.close.text'}})],1)]},proxy:true}])},[_c(_vm.formComponent,_vm._b({tag:\"component\"},'component',_vm.formParams,false))],1),_c('b-modal',{attrs:{\"id\":\"marketingToolBrandsModalContainer\",\"title\":_vm.modalTitle,\"hide-footer\":\"\",\"scrollable\":\"\",\"no-fade\":\"\",\"modal-class\":\"modal--panel\"},scopedSlots:_vm._u([{key:\"modal-header-close\",fn:function(){return [_c('i',{staticClass:\"close__icon icon-close\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"close__label\"},[_c('msg',{attrs:{\"id\":'common.modal.close.text'}})],1)]},proxy:true}])},[_c('form-select-brand',{attrs:{\"options\":_vm.options},on:{\"selected-brand\":_vm.onBrandSelected}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form form-select-brand\",attrs:{\"id\":\"alert-request-quote\"}},[(_vm.submitStatus === 'error')?_c('p',{staticClass:\"alert alert--error\",attrs:{\"role\":\"alert\"}},[_c('i',{staticClass:\"icon-warning-fill\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.form.validation.form.invalid.text\"}})],1):(_vm.submitStatus === 'ok')?_c('p',{staticClass:\"alert alert--confirmation\",attrs:{\"role\":\"status\"}},[_c('msg',{attrs:{\"id\":\"common.form.validation.form.submission.text\"}})],1):_vm._e(),_c('form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSubmit($event)}}},[_c('b-tabs',{attrs:{\"content-class\":\"\",\"nav-class\":\"form-steps\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},[_c('b-tab',{attrs:{\"title\":_vm.$msg(\"common.form.tab.brand.text\")}},[_c('div',{staticClass:\"grid-x grid-margin-x\"},[_c('div',{staticClass:\"w-100 d-flex justify-content-center\"},[_c('div',{staticClass:\"select-brand-grid\"},_vm._l((_vm.options),function(opt,index){return _c('div',{key:index,staticClass:\"select-brand-card\",style:({ border: _vm.$v.form.brand.$model === index ? '2px solid black' : '2px solid lightgrey'}),on:{\"click\":function () { return _vm.$v.form.brand.$model= index; }}},[_c('img',{attrs:{\"src\":opt.value.brandLogo,\"alt\":opt.value.brandName}})])}),0)]),_c('b-form-group',{staticClass:\"invalid-feedback\",staticStyle:{\"margin\":\"0\"},attrs:{\"invalid-feedback\":_vm.invalidFeedback,\"state\":_vm.validateState('brand')},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar ariaDescribedby = ref.ariaDescribedby;\nreturn undefined}}])}),_c('b-form-group',{staticStyle:{\"visibility\":\"hidden\",\"height\":\"0\",\"margin\":\"0\"},attrs:{\"label\":\"Individual radios\",\"label-for\":'brand'},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar ariaDescribedby = ref.ariaDescribedby;\nreturn _vm._l((_vm.options),function(opt,index){return _c('b-form-radio',{key:index,attrs:{\"aria-required\":true,\"aria-describedby\":ariaDescribedby,\"name\":\"brand\",\"value\":index},model:{value:(_vm.$v.form.brand.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.brand, \"$model\", $$v)},expression:\"$v.form.brand.$model\"}},[_vm._v(_vm._s(opt.text))])})}}])}),_c('div',{staticClass:\"cell\"},[_c('div',{staticClass:\"form-group\"},[_c('pg-button',{staticClass:\"button--block\",attrs:{\"type\":\"submit\",\"styleType\":\"contained\",\"color\":\"primary\",\"size\":\"medium\"}},[_c('msg',{attrs:{\"id\":\"common.form.button.proceed.text\"}})],1)],1)])],1)])],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"form form-select-brand\" id=\"alert-request-quote\">\n    <p v-if=\"submitStatus === 'error'\" class=\"alert alert--error\" role=\"alert\">\n      <i aria-hidden=\"true\" class=\"icon-warning-fill\"></i>\n      <msg id=\"common.form.validation.form.invalid.text\" />\n    </p>\n    <p\n      v-else-if=\"submitStatus === 'ok'\"\n      class=\"alert alert--confirmation\"\n      role=\"status\"\n    >\n      <msg id=\"common.form.validation.form.submission.text\" />\n    </p>\n    <form @submit.stop.prevent=\"onSubmit\">\n      <b-tabs content-class nav-class=\"form-steps\" v-model=\"activeTab\">\n        <b-tab :title=\"$msg(`common.form.tab.brand.text`)\">\n\n          <!--field-group-user-data /-->\n          <div class=\"grid-x grid-margin-x\">\n              <div class=\"w-100 d-flex justify-content-center\">\n                <div class=\"select-brand-grid\">\n                    <!-- cards -->\n                    <div\n                      v-for=\"(opt, index) in options\"\n                      :key=\"index\"\n                      class=\"select-brand-card\"\n                      :style=\"{ border: $v.form.brand.$model === index ? '2px solid black' : '2px solid lightgrey'}\"\n                      @click=\"() => $v.form.brand.$model= index\"\n                    >\n                      <img :src=\"opt.value.brandLogo\" :alt=\"opt.value.brandName\"/>\n                    </div>\n                </div>\n              </div>\n\n            <!-- non hidden empty radio group to show the form field error message ( :state, :invalid-feedback props )  -->\n            <b-form-group v-slot=\"{ ariaDescribedby }\" :invalid-feedback=\"invalidFeedback\" :state=\"validateState('brand')\" class=\"invalid-feedback\" style=\"margin: 0\">\n            </b-form-group>\n            <!-- hidden radio group triggered from the above cards -->\n            <b-form-group label=\"Individual radios\" v-slot=\"{ ariaDescribedby }\" :label-for=\"'brand'\" style=\"visibility: hidden; height: 0; margin: 0\">\n              <b-form-radio :aria-required=\"true\" v-for=\"(opt, index) in options\" :key=\"index\" v-model=\"$v.form.brand.$model\" :aria-describedby=\"ariaDescribedby\" name=\"brand\" :value=\"index\">{{ opt.text }}</b-form-radio>\n            </b-form-group>\n\n            <!-- submit area -->\n            <div class=\"cell\">\n              <div class=\"form-group\">\n                <pg-button\n                  type=\"submit\"\n                  styleType=\"contained\"\n                  color=\"primary\"\n                  size=\"medium\"\n                  class=\"button--block\"\n                >\n                  <msg id=\"common.form.button.proceed.text\" />\n                </pg-button>\n              </div>\n            </div>\n\n          </div>\n        </b-tab>\n      </b-tabs>\n    </form>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport { validationMixin } from \"vuelidate\";\nimport { mgnlComponentMixin } from \"@wl-vue-mixins/mixins.js\";\nimport { required } from \"vuelidate/lib/validators\";\n\nexport default {\n  mixins: [validationMixin, mgnlComponentMixin],\n\n  components: {\n    PgButton,\n    PgImage,\n  },\n  name: \"FormSelectBrand\",\n\n  data() {\n    return {\n      activeTab: 0,\n      submitStatus: null, // null, \"step1\", \"ok\"\n      downloadPdfLink: null,\n      form: {\n        brand: null,\n      },\n      iframeHeight: 0,\n    };\n  },\n  validations() {\n    return { form: { brand: { required } } }\n  },\n  props: {\n    options: {\n      type: Array,\n      default: []\n    }\n  },\n  computed: {\n    invalidFeedback() {\n      return this.$msg(`common.form.validation.required-field.invalid.text`);\n    },\n  },\n  watch: { },\n  methods: {\n    validateState(name) {\n      const {$dirty, $error} = this.$v.form[name];\n      return $dirty ? !$error : null; // null, true, false\n    },\n    onSubmit() {\n      this.$v.form.$touch();\n      if (this.$v.form.$anyError) {\n        this.submitStatus = \"error\";\n        return;\n      } else {\n        this.$emit('selected-brand', this.$props.options[this.form.brand].value)\n      }\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelectBrand.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelectBrand.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormSelectBrand.vue?vue&type=template&id=f3141bce&\"\nimport script from \"./FormSelectBrand.vue?vue&type=script&lang=js&\"\nexport * from \"./FormSelectBrand.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <b-modal\n        id=\"marketingToolModalContainer\"\n        :title=\"modalTitle\"\n        :googleMapCountryZoom=\"common.googleMapCountryZoom\"\n        hide-footer\n        scrollable\n        no-fade\n        @hidden=\"resetModalState()\"\n        modal-class=\"modal--panel\"\n    >\n      <template v-slot:modal-header-close>\n        <i class=\"close__icon icon-close\" aria-hidden=\"true\"></i>\n        <span class=\"close__label\">\n            <msg :id=\"'common.modal.close.text'\"/>\n          </span>\n      </template>\n\n      <component v-bind:is=\"formComponent\" v-bind=\"formParams\"/>\n\n    </b-modal>\n    <!-- Brand selection modal  -->\n    <b-modal\n        id=\"marketingToolBrandsModalContainer\"\n        :title=\"modalTitle\"\n        hide-footer\n        scrollable\n        no-fade\n        modal-class=\"modal--panel\"\n    >\n      <template v-slot:modal-header-close>\n        <i class=\"close__icon icon-close\" aria-hidden=\"true\"></i>\n        <span class=\"close__label\">\n            <msg :id=\"'common.modal.close.text'\"/>\n          </span>\n      </template>\n\n      <form-select-brand :options=\"options\" @selected-brand=\"onBrandSelected\"></form-select-brand>\n\n    </b-modal>\n  </div>\n</template>\n<script>\n  import FormSelect from \"@wl-components/FormSelect/FormSelect\";\n  import FormSelectBrand from \"@wl-components/FormSelectBrand/FormSelectBrand\";\n\n  export default {\n\n    name: \"MarketingToolModal\",\n\n    components: {\n      FormSelectBrand,\n      FormSelect,\n      FormContactDealer: () => import(\"../FormContactDealer/FormContactDealer\"),\n      FormDownloadBrochure: () => import(\"../FormDownloadBrochure/FormDownloadBrochure\"),\n      FormCustomerRequest: () => import(\"../FormCustomerRequest/FormCustomerRequest\"),\n      FormConfigurableCustomerRequest: () => import(\"../FormConfigurableCustomerRequest/FormConfigurableCustomerRequest\"),\n      FormTestRideRequest: () => import(\"../FormTestRideRequest/FormTestRideRequest\")\n    },\n\n    data() {\n      return {\n        selectedBrand: 1,\n        active: false,\n        params: {},\n        options: []\n      }\n    },\n\n    props: {\n      common: {\n        type: Object,\n        default: () => {\n        }\n      },\n    },\n\n    computed: {\n      formComponent() {\n        if (!this.params.marketingToolId) return;\n\n        let component = \"\";\n\n        switch (this.params.marketingToolId) {\n          case \"download-brochure\":\n            component = \"form-download-brochure\"\n            break;\n          case \"test-ride-request-old\":\n            component = \"form-test-ride-request\"\n            break;\n          case \"assistance-appointment\":\n          case \"assistance-info\":\n          case \"book-appointment\": // DEPRECATO rif jira PIAGGIO-6509\n            component = \"form-contact-dealer\";\n            break;\n          case \"pre-booking\":\n          case \"stay-updated\":\n          case \"sale-appointment\":\n          case \"sale-info\":\n          case \"bp-aftersales-initiative\":\n          case \"booking-aftersales\":\n          case \"test-ride-request\":\n          case \"test-ride-request-commercial-no-campaign\":\n            component = \"form-configurable-customer-request\";\n            break;\n          default:\n            component = \"form-customer-request\";\n        }\n\n        return component;\n      },\n      formParams() {\n        let isCampaign = this.params.campaignId ? `_${this.params.campaignId}` : '';\n        switch (this.params.marketingToolId) {\n          case 'sale-info':\n          case 'sale-appointment':\n          case 'stay-updated':\n          case 'bp-aftersales-initiative':\n          case 'booking-aftersales':\n          case 'pre-booking':\n          case 'test-ride-request':\n            return {\n              ...this.common,\n              // fix PIAGGIO-5278 (tmp fix)\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'marketingToolName': this.params.marketingToolName,\n              'precompiledParameters': this.params.precompiledParameters || {}\n            };\n          case 'pre-booking-old':\n            return {\n              ...this.common,\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'campaign-id': this.params.campaignId,\n              'vehicleModel': this.params.vehicleModel,\n              'vehicleColors': this.params.vehicleColors,\n              'requestType': this.params.reason,\n              'trackingLabel': this.params.trackingLabel,\n              'interactionType': this.params.interactionType,\n              'dealerSelector': true,\n              'filterBusinessPartnerByServices': [`pre_booking${isCampaign}`],\n              'precompiledParameters': this.params.precompiledParameters || {}\n            };\n          case 'pre-order':\n            return {\n              ...this.common,\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'campaign-id': this.params.campaignId,\n              'requestType': this.params.reason,\n              'trackingLabel': this.params.trackingLabel,\n              'interactionType': this.params.interactionType,\n              'dealerSelector': true,\n              'vehicleFamilies': this.common.vehicles.families,\n              'filterBusinessPartnerByServices': [`pre_order${isCampaign}`],\n              'precompiledParameters': this.params.precompiledParameters || {}\n            };\n          case 'assistance-appointment':\n          case 'assistance-info':\n            return {\n              ...this.common,\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'service-type': this.params.marketingToolId,\n              'tracking-label': this.params.trackingLabel,\n              'interactionType': this.params.interactionType,\n              'selected-dealer': this.params.encodedDealercd,\n              'precompiledParameters': this.params.precompiledParameters || {}\n            };\n          case 'test-ride-request-old':\n            return {\n              ...this.common,\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'campaign-id': this.params.campaignId,\n              'requestType': this.params.reason,\n              'vehicleFamilies': this.common.vehicles.families,\n              'trackingLabel': this.params.trackingLabel,\n              'interactionType': this.params.interactionType,\n              'selected-dealer': this.params.encodedDealercd,\n              'precompiledParameters': this.params.precompiledParameters || {}\n            };\n          default:\n            return {\n              'country': this.common.currentCountry,\n              'lang': this.common.currentLanguage,\n              'tracking-label': this.params.trackingLabel,\n              'interactionType': this.params.interactionType,\n              'precompiledParameters': this.params.precompiledParameters || {},\n              ...this.common\n            }\n        }\n\n      },\n      modalTitle() {\n        return this.$msg(`common.modal.header.${this.params.marketingToolId}.title`);\n      },\n    },\n    methods: {\n      onBrandSelected(brand) {\n        this.common.brandCode = brand.brandCode;\n        this.common.brandFormType = brand.brandFormType;\n        this.common.brandName = brand.brandName;\n        this.common.brandNodeName = brand.brandNodeName;\n        this.common.brandNodePath = brand.brandNodePath;\n        this.$set(this.params, \"precompiledParameters\", {hasBusinessPartner: false, encodedDealerCode: brand.encodedDealerCd});\n        this.$bvModal.hide(\"marketingToolBrandsModalContainer\")\n        this.$bvModal.show(\"marketingToolModalContainer\")\n      },\n      resetModalState() {\n        this.params = {};\n      }\n    },\n    mounted() {\n      const ctx = this;\n      this.$eventHub.on(\"MarketingTool:modal\", (ctaParams) => {\n        if (!ctaParams.marketingToolId) return;\n\n        ctx.params = ctaParams;\n        const isFake = ctx.common.isFakeBrand;\n\n        if (isFake) {\n          const currentLocale = ctx.common.currentLocale;\n          const dealerCd = ctx.common.dealerCd;\n          const reason = ctaParams.reason.replace(\"request.\", \"\");\n          const campaignId = ctaParams.campaignId;\n          const service = campaignId? reason + \"_\" + campaignId : reason;\n\n          this.$http.get(\"/action/availableBrands/?brandTypeFilter=realBrand&currentLocale=\" + currentLocale + \"&dealerCd=\" + dealerCd + \"&service=\" + service)\n              .then((data) => this.options = data.data.map((brand) => ({value: brand, text: brand.brandName})));\n          ctx.$bvModal.show(\"marketingToolBrandsModalContainer\");\n        } else {\n          ctx.$bvModal.show(\"marketingToolModalContainer\");\n        }\n\n      });\n    }\n  }\n</script>\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MarketingToolModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MarketingToolModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MarketingToolModal.vue?vue&type=template&id=8bfbde20&\"\nimport script from \"./MarketingToolModal.vue?vue&type=script&lang=js&\"\nexport * from \"./MarketingToolModal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"button button--go-to-top button--primary button--medium button--contained\",class:{hidden: !_vm.halfwayScroll},attrs:{\"type\":\"button\"},on:{\"click\":_vm.scrollToTop}},[_c('i',{staticClass:\"icon icon-chevron-up\"}),_c('msg',{attrs:{\"id\":\"common.go-to-top.text\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <button @click=\"scrollToTop\" type=\"button\" class=\"button button--go-to-top button--primary button--medium button--contained\"\n          :class=\"{hidden: !halfwayScroll}\">\n    <i class=\"icon icon-chevron-up\"></i>\n    <msg id=\"common.go-to-top.text\"/>\n  </button>\n</template>\n\n<script>\n\nexport default {\n  name: \"GoToTop\",\n  components: {},\n  data() {\n    return {\n      halfPage: 10000000,\n      halfwayScroll: false,\n      scrollPosition: 0\n    };\n  },\n  mounted() {\n    window.addEventListener(\"scroll\", this.onPageScrolling);\n  },\n  updated() {\n  },\n  computed: {},\n  methods: {\n    onPageScrolling() {\n      this.halfPage = document.documentElement.offsetHeight / 2;\n      this.scrollPosition = Math.max(window.pageYOffset, document.documentElement.scrollTop, document.body.scrollTop) + window.innerHeight / 2;\n      this.halfwayScroll =this.scrollPosition > this.halfPage;\n    },\n    scrollToTop() {\n      window.scrollTo({\n        top: 0,\n        left: 0,\n        behavior: 'smooth'\n      });\n    }\n  }\n};\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GoToTop.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GoToTop.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GoToTop.vue?vue&type=template&id=54f450a8&\"\nimport script from \"./GoToTop.vue?vue&type=script&lang=js&\"\nexport * from \"./GoToTop.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"modal-overlay\",attrs:{\"id\":(\"uuid-\" + (_vm.$attrs.uuid))}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"modal-overlay\" :id=\"`uuid-${$attrs.uuid}`\" />\n</template>\n\n<script>\n\nexport default {\n  name: 'GigyaModalOverlay',\n  components: {},\n  }\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GigyaModalOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GigyaModalOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GigyaModalOverlay.vue?vue&type=template&id=22395d5e&\"\nimport script from \"./GigyaModalOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./GigyaModalOverlay.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div id=\"vue-page-loaded\" v-if=\"($root.dataLoaded || $config.editMode)\">\n    <gigya-modal-overlay v-if=\"isModalOpen\" class=\"modal-overlay\" />\n    <pg-header\n      v-if=\"!common.iframe && !common.isHeaderV2 && !common.isOverlayConfigured\"\n      :items=\"header.headerItems\"\n      :brandName=\"common.brandName\"\n      :brandNodeName=\"common.brandNodeName\"\n      :brandNodePath=\"common.brandNodePath\"\n      :services=\"header.services\"\n      :logo=\"header.logo\"\n      :logoOnTransparent=\"header.logoOnTransparent\"\n      :layout=\"header.listStyle\"\n      :hide-navigation=\"navigation.hideNavigation\"\n    />\n    <pg-header-v2\n        v-else-if=\"!common.iframe && common.isHeaderV2\"\n        :brandName=\"common.brandName\"\n        :brandNodeName=\"common.brandNodeName\"\n        :brandNodePath=\"common.brandNodePath\"\n        :customerServiceLink=\"header.customerServiceLink\"\n        :bookAppointmentLink=\"header.bookAppointmentLink\"\n        :services=\"header.services\"\n        :logo=\"header.logo\"\n        @toggle-contact=\"toggleContactUs\"\n        @header-store-service-ref=\"getStoreServiceRef\"\n        :logoOnTransparent=\"header.logoOnTransparent\"\n        :navigationMobileLogo=\"header.navigationMobileLogo\"\n        :menuItemsObj=\"mainNavigation.mainNavigationItemsV2\"\n        :common=\"common\"\n        :extraLink=\"header.extraLink\"\n        :extraLinkLabel=\"header.extraLinkLabel\"\n        :extraLinkIcon=\"header.extraLinkIcon\"\n        :extraLinkOnBlank=\"header.extraLinkOnBlank\"\n    />\n    <contacts-v2\n        :class=\"['contacts-us', {'show': isContactUsVisible}]\"\n        v-if=\"!common.iframe && common.isHeaderV2 && isContactUsVisible\"\n        :services=\"header.services\"\n        :customerServiceLink=\"header.customerServiceLink\"\n        :bookAppointmentLink=\"header.bookAppointmentLink\"\n        :storeServiceBtnWidth=\"storeServiceBtnWidth\"\n        :common=\"common\"\n    />\n    <main-navigation\n      v-if=\"!common.isHeaderV2 || !common.isMainNavigationV2 || !common.isOverlayConfigured\"\n      :menuItemsObj=\"mainNavigation.mainNavigationItems\"\n      :highlightItems=\"mainNavigation.highlightItems || []\"\n      :common=\"common\"\n    ></main-navigation>\n    <floating-shortcuts\n      v-if=\"!common.iframe && common.floatingShortcuts && common.floatingShortcuts.length > 0 && !common.isOverlayConfigured\"\n      :floatingShortcuts=\"common.floatingShortcuts\"\n      :actpageFullUrl=\"common.actpageFullUrl\"\n    />\n    <santader-fin-sim\n        v-if=\"common.santanderFinancialSimulator && common.santanderFinancialSimulator !== null && !common.isOverlayConfigured\"\n        :commonData=\"common\"\n        :modelData=\"model\"\n    ></santader-fin-sim>\n    <!-- page vue component must declare a <slot>. It works like the <jsp:doBody/> -->\n\n    <main id=\"mainContent\">\n      <homepage-overlay v-if=\"common.isOverlayConfigured\" v-bind=\"hpOverlayData\" ></homepage-overlay>\n      <slot v-else></slot>\n    </main>\n\n    <pg-footer\n      :logo=\"footer.logo\"\n      :items=\"footer.footerColumns || []\"\n      :brandName=\"common.brandName\"\n      :brandNodeName=\"common.brandNodeName\"\n      :site-service-param=\"common.siteServiceParam\"\n      :brandNodePath=\"common.brandNodePath\"\n      :languages=\"common.changeLanguages\"\n      :currentLocale=\"common.currentLocale\"\n      :socialLinks=\"common.socialLinks\"\n      :legalNote=\"footer.legalNote\"\n      :currentCountry=\"common.currentCountry\"\n      :currentLanguage=\"common.currentLanguage\"\n      :disableChangeLang=\"common.disableChangeLang\"\n      :includeCommunityFooter=\"model.includePreFooter\"\n      :communityFooterData=\"{\n        iconName: common.communityData ? common.communityData.iconNamePreFooter : null,\n        iconTitle: common.communityData ? common.communityData.iconTitlePreFooter : null,\n        contact1: common.communityData ? common.communityData.contact1PreFooter : null,\n        contact2: common.communityData ? common.communityData.contact2PreFooter : null\n      }\"\n      v-if=\"!common.iframe && !common.isOverlayConfigured\"\n      :show-flags=\"common.showFlags\"\n    ></pg-footer>\n\n    <marketing-tool-modal v-if=\"!common.iframe && !common.isOverlayConfigured\" :common=\"common\"/>\n    <!-- BISOGNA AGIRE QUI PER IL PULSANTE GOTOTOP  -->\n    <go-to-top v-if=\"model.goToTop || this.common.goToTop\"></go-to-top>\n  </div>\n\n  <pg-loader v-else></pg-loader>\n</template>\n\n<script>\n  import { mgnlComponentMixin } from \"../mixins/mixins.js\";\n  import SantaderFinSim from \"./SantanderFinSim/SantaderFinSim\";\n  import PgHeader               from \"./Header/Header.vue\";\n  import PgHeaderV2             from \"./HeaderV2/HeaderV2.vue\";\n  import ContactsV2 from \"./HeaderV2/ContactsV2.vue\";\n  import MainNavigation from \"./MainNavigation/MainNavigation.vue\";\n  import MainNavigationV2 from \"./MainNavigationV2/MainNavigationV2.vue\";\n  import PgLoader from \"./Loader/Loader.vue\";\n  import PgFooter from \"./Footer/Footer.vue\";\n  import FloatingShortcuts from \"./FloatingShortcuts/FloatingShortcuts.vue\";\n  import MarketingToolModal from \"./MarketingToolModal/MarketingToolModal\";\n  import GoToTop from \"./GoToTop/GoToTop\";\n  import HomepageOverlay from \"./HomepageOverlay/HomepageOverlay\";\n  import GigyaModalOverlay from \"./GigyaCommunity/GigyaModalOverlay.vue\";\n\n  export default {\n    mixins: [mgnlComponentMixin],\n\n    name: \"VuePageLayout\",\n\n    data() {\n      return {\n        isContactUsVisible: false,\n        storeServiceBtnWidth: null,\n        isModalOpen: false,\n      };\n    },\n    components: {\n      HomepageOverlay,\n      MainNavigation,\n      MainNavigationV2,\n      SantaderFinSim,\n      PgHeader,\n      PgHeaderV2,\n      ContactsV2,\n      PgFooter,\n      PgLoader,\n      MarketingToolModal,\n      FloatingShortcuts,\n      GoToTop,\n      GigyaModalOverlay\n    },\n    computed: {\n      navigation: function() {\n        return this.model.navigation || {};\n      },\n      header: function() {\n        return (this.navigation && this.navigation.header) || {};\n      },\n      mainNavigation: function() {\n        if(this.navigation && this.navigation.mainNavigation) {\n          if (Array.isArray(this.navigation.mainNavigation)) {\n            if(this.common.isMainNavigationV2) {\n              return \"mainNavigationItemsV2\" in this.navigation.mainNavigation[0] ? this.navigation.mainNavigation[0] : this.navigation.mainNavigation[1]\n            } else {\n              return \"mainNavigationItems\" in this.navigation.mainNavigation[0] ? this.navigation.mainNavigation[0] : this.navigation.mainNavigation[1]\n            }\n          } else {\n            return this.navigation.mainNavigation\n          }\n        } else {\n          return {}\n        }\n      },\n      hpOverlayData: function() {\n        if (this.model.main) {\n          const values = Object.values(this.model.main);\n          for (const value of values) {\n            const keys = Object.keys(value);\n            for (const key of keys) {\n              if (key === \"hpOverlayContent\") {\n                value[\"legalNote\"] = this.footer.legalNote\n                return value;\n              }\n            }\n          }\n        }\n        return { uuid: undefined, title: undefined, hpOverlayLogo: undefined, hpOverlayContent: undefined, legalNotes: this.footer.legalNote };\n      },\n      footer: function() {\n        return (\n          (this.navigation && this.navigation.footerNavigation) || {}\n        );\n      }\n    },\n\n    methods: {\n      toggleContactUs() {\n        this.isContactUsVisible = !this.isContactUsVisible;\n      },\n      getStoreServiceRef(storeService) {\n        if(storeService) {\n          this.storeServiceBtnWidth = storeService.clientWidth;\n        }\n      }\n    },\n\n    created() {\n      this.$eventHub.on('gigya-modal-overlay', (modalStatus) => {\n        this.isModalOpen = modalStatus;\n      })\n      this.$eventHub.on(\"header:isNavigationOpen\", (isNavigationOpen) => {\n        if(isNavigationOpen) {\n          this.isContactUsVisible = false;\n        }\n      });\n    }\n  };\n</script>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VuePageLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VuePageLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VuePageLayout.vue?vue&type=template&id=4bf7afd5&\"\nimport script from \"./VuePageLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./VuePageLayout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.bare)?_c('fragment',[_vm._v(_vm._s(_vm.getMessage))]):_c('fragment',[(_vm.parseHtml)?_c('span',{class:_vm.cssClass,domProps:{\"innerHTML\":_vm._s(_vm.getMessage)}}):_c('span',{class:_vm.cssClass},[_vm._v(_vm._s(_vm.getMessage))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template >\n  <fragment v-if=\"bare\">{{getMessage}}</fragment>\n  <fragment v-else>\n    <span :class=\"cssClass\" v-if=\"parseHtml\" v-html=\"getMessage\"></span>\n    <span :class=\"cssClass\" v-else>{{getMessage}}</span>\n  </fragment>\n</template>\n\n<script>\n    import { Fragment } from 'vue-fragment'\n\n    export default {\n      // this vue component is registered globally in order to manage mgnl translations\n      // to use it you only have to declare insider your template in this way: <msg id=\"piaggio.common.foo\"/>\n      name: \"Msg\",\n\n      components: {\n        Fragment\n      },\n\n      props: {\n        \"id\": {\n          type: String\n        },\n        \"parseHtml\": {\n          type: Boolean,\n          default: false\n        },\n        \"cssClass\": {\n          type: String,\n        },\n        \"bare\": {\n          type: Boolean,\n          default: false\n        },\n        \"params\": {\n          type: Array,\n          default: () => []\n        },\n        \"defaultMessage\": {\n          type: String,\n          default: ''\n        }\n      },\n\n      computed: {\n        // retrieving messages dictionary from root element data, otherwise load mock from storybook mocks\n        getMessage: function () {\n          return this.$msg(this.id, this.params) || this.defaultMessage;\n        }\n      },\n      mounted() {}\n    }\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Msg.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Msg.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Msg.vue?vue&type=template&id=328eb08f&\"\nimport script from \"./Msg.vue?vue&type=script&lang=js&\"\nexport * from \"./Msg.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","// filters collections\n\n// mgnl media filter\n//     \"uuid\" : mediaNode.getIdentifier(),\n//     \"url\" : MediaEl.url(property),\n//     \"type\" : PropertyUtil.getString(mediaNode, \"type\"),\n//     \"media_name\" : PropertyUtil.getString(mediaNode, \"media_name\"),\n//     \"title\" : PropertyUtil.getString(mediaNode, \"title\"),\n//     \"width\"\n//     \"height\"\n\nconst mgnlMedia = function (obj, attr, defaultValue = \"\") {\n  const validAttrs = [\"uuid\", \"url\", \"type\", \"media_name\", \"title\", \"width\", \"height\"];\n\n  if (!validAttrs.includes(attr) ) {\n    console.warn(`Attribute ${attr} not recongnized by mgnlMedia filter`)\n    \n    \n    return \"\"\n  }\n\n  if (!obj) return defaultValue\n\n  return obj[attr]\n}\n\nconst mgnlLink = function (obj, attr) {\n  if (!obj) return \"\"\n  return obj[attr]\n}\n\nconst subStr = function (string, begin=0, end=2) {\n  return (string || '').substring(begin, end);\n}\n\nconst strippedContent = function(string) {\n  if (string) {\n    return string.replace(/<\\/?[^>]+>/ig, \" \");\n  }\n  return;\n}\n\nconst formatPrice = function (value, priceFormattingConfig) {\n  try {\n\n    if (value === null || value === undefined) {\n      return \"\";\n    }\n\n    if (typeof value !== \"number\") {\n      value = parseFloat(value);\n    }\n\n    const decimalCount = 2\n    const negativeSign = value < 0 ? \"-\" : \"\";\n    const thousandsSeparator = priceFormattingConfig.priceThousandSep;\n    const decimalSeparator = priceFormattingConfig.priceDecimalSep;\n    const currency = priceFormattingConfig.priceCurrency;\n    const startWithCurrency = priceFormattingConfig.priceCurrencyOnStart;\n    const forceDecimal = priceFormattingConfig.forceDecimal || false;\n\n    let i = parseInt(value = Math.abs(Number(value) || 0).toFixed(decimalCount)).toString();\n    let j = (i.length > 3) ? i.length % 3 : 0;\n\n    let integerPart = (j ? i.substr(0, j) + thousandsSeparator : '') + i.substr(j).replace(/(\\d{3})(?=\\d)/g, \"$1\" + thousandsSeparator);\n    let decimalPart = (decimalCount ? Math.abs(value - i).toFixed(decimalCount).slice(2) : \"\");\n\n    let price = `${startWithCurrency ? currency : ''} ${negativeSign}${integerPart}${(decimalPart > 0 || forceDecimal) ? decimalSeparator + decimalPart : ''} ${!startWithCurrency ? currency : ''}`;\n\n    return price;\n  } catch (e) {\n    console.log(e)\n  }\n}\n\nexport { mgnlMedia, mgnlLink, subStr, strippedContent, formatPrice }\n","const MsgPlugin = {\n  install(Vue, options) {\n\n    try {\n      const { mode } = options; // mode can be \"mock\", \"mgnl\", \"vuex\"\n\n      Vue.prototype.$msg = function (msgKey, params) {\n        let messages = {};\n        if (mode == \"mock\") {\n          // mock and storybook ctx\n          messages = (this.$config && this.$config.translationsMock) || {};\n        } else if (mode == \"vuex\") {\n          // configurator ctx with vuex\n          messages = (this.$store.state && this.$store.state.translations) || {};\n        } else if(mode == \"mgnl\") {\n          // wl ctx\n          messages = (this.$root.$data && this.$root.$data['translations']) || {};\n        } else {\n          console.error(\"MsgPlugin registered with invalid 'mode' option! Valid value are: 'mock', 'mgnl', 'vuex'\")\n          return;\n        }\n\n        let labelValue = (this.$config.debugMode && msgKey) || (!!messages && messages[msgKey]) || \"\";\n\n        if (params && params.length > 0) {\n          params.forEach((param) => {\n            labelValue = labelValue.replace('|' + param.key + '|', param.value);\n          });\n        }\n\n        // returning msg or msgKey itself id debug mode is enabled and the msg doesnt exist\n        return labelValue;\n      }\n\n    } catch (e) {\n      console.error(\"MsgPlugin registered without a 'mode' option! Valid value are: 'mock', 'mgnl', 'vuex'\");\n    }\n\n  }\n}\n\nexport default MsgPlugin;\n","const gtmManager = {\n  install(Vue, options = {}) {\n\n    Vue.prototype.$analytics = {\n      pushEvent: function (evCategory, evAction, evLabel=\"\", goToLink=\"\", familyModel=\"\") {\n        window.dataLayer = window.dataLayer || [];\n\n        let state = {\n          'event': 'GAevent',\n          'eventCategory': evCategory,\n          'eventAction': evAction\n        };\n\n        if (evLabel) {\n          state['eventLabel'] = evLabel;\n        }\n\n        if (goToLink) {\n          state['eventCallback'] = function() {\n            document.location = goToLink;\n          };\n          state['eventTimeout'] = 2000;\n        }\n  \n        if (familyModel) {\n          state['familyModel'] = familyModel;\n        }\n\n        dataLayer.push(state);\n      }\n    };\n  }\n};\n\nexport default gtmManager;","import Vue                                                  from \"vue\";\nimport VueConfig                                            from \"vue-config\";\nimport EventHub                                             from \"vue-event-hub\";\nimport DebugPanel                                           from \"./components/DebugPanel.vue\";\nimport VuePageLayout                                        from \"./components/VuePageLayout.vue\";\nimport Msg                                                  from \"./components/Msg/Msg.vue\";\nimport axios                                                from \"axios\";\nimport VueAxios                                             from \"vue-axios\";\nimport SocialSharing                                        from \"vue-social-sharing\";\nimport { mgnlLink, mgnlMedia, strippedContent, subStr, formatPrice }     from \"./filters/common\";\nimport Vue2Filters                                          from \"vue2-filters\"; // https://www.npmjs.com/package/vue2-filters\nimport VueMq                                                from \"vue-mq\"; // https://github.com/AlexandreBonaventure/vue-mq\nimport whatInput                                            from \"what-input\"; // https://github.com/ten1seven/what-input\nimport Vuelidate                                            from 'vuelidate' // https://vuelidate.js.org/\nimport {\n  FormCheckboxPlugin,\n  FormGroupPlugin,\n  FormInputPlugin,\n  FormRadioPlugin,\n  FormSelectPlugin,\n  FormTextareaPlugin,\n  FormDatepickerPlugin,\n  ModalPlugin,\n  TabsPlugin\n}                                                           from \"bootstrap-vue\"; // https://bootstrap-vue.js.org/docs/components/\nimport Hooper                                               from \"hooper\"; // carousel https://github.com/baianat/hooper\n\nimport MsgPlugin          from \"./plugins/msg\";\nimport gtmManager         from \"./plugins/gtm-manager\";\nimport * as VueGoogleMaps from \"vue2-google-maps\";\nimport VueRouter from 'vue-router'\n\nimport VDragged from 'v-dragged';\n\nimport VueQRCodeComponent from 'vue-qrcode-component'\n\nconst mgnlVueConfig = window.mgnlVueConfig || {};\n\n// Setup vue configurations\nVue.config.productionTip = false;\n\n// Remove Vue Warn when custom tags are included in templates\nVue.config.ignoredElements = [ \"scf-quoting\" ];\n\n// Initializing plugins\nVue.use(VueAxios, axios);\nVue.use(VueConfig, mgnlVueConfig);\nVue.use(EventHub);\nVue.use(SocialSharing);\nVue.use(Vue2Filters);\nVue.use(MsgPlugin, {mode: mgnlVueConfig.messageMode});\nVue.use(gtmManager);\nVue.use(VueMq, {\n  breakpoints: {\n    small: 640,\n    medium: 1024,\n    large: Infinity\n  }\n});\nVue.use(whatInput);\nVue.use(TabsPlugin);\nVue.use(ModalPlugin);\nVue.use(FormCheckboxPlugin);\nVue.use(FormGroupPlugin);\nVue.use(FormInputPlugin);\nVue.use(FormRadioPlugin);\nVue.use(FormSelectPlugin);\nVue.use(FormDatepickerPlugin);\nVue.use(FormTextareaPlugin);\nVue.use(Hooper);\nVue.use(Vuelidate);\nVue.use(VueGoogleMaps, {\n  load: {\n    key: mgnlVueConfig.googleMapKey,\n    libraries: \"places\",\n    region: mgnlVueConfig.currentCountry,\n    language: mgnlVueConfig.currentLanguage\n  },\n  installComponents: false\n});\nVue.use(VueRouter);\nVue.use(VDragged);\n\n// Registering global components\nVue.component(\"msg\", Msg);\nVue.component(\"debug-panel\", DebugPanel); //TODO load only in dev mode\nVue.component('qr-code', VueQRCodeComponent)\n\n//Registering global filters\nVue.filter(\"mgnlMedia\", mgnlMedia);\nVue.filter(\"mgnlLink\", mgnlLink);\nVue.filter(\"strippedContent\", strippedContent);\nVue.filter(\"subStr\", subStr);\nVue.filter(\"formatPrice\", formatPrice);\n\nnew Vue({\n  el: \"#vue-page\",\n\n  // Declaring all vue component that correspond to mgnl components\n  components: {\n    VuePageLayout, // page layout is the vue component that represents the whole magnolia page\n    MgnlHeader: () => import(\"./components/Header/MgnlHeader.vue\"),\n    MgnlHeaderV2: () => import(\"./components/HeaderV2/MgnlHeaderV2.vue\"),\n    MgnlFooter: () => import(\"./components/Footer/MgnlFooter.vue\"),\n    MgnlFooterColumn: () => import(\"./components/Footer/MgnlFooterColumn.vue\"),\n    MgnlMainNavigation: () => import(\"./components/MainNavigation/MgnlMainNavigation.vue\"),\n    MgnlMainNavigationItem: () => import(\"./components/MainNavigation/MgnlMainNavigationItem.vue\"),\n    MgnlMainNavigationV2: () => import(\"./components/MainNavigationV2/MgnlMainNavigationV2.vue\"),\n    MgnlMainNavigationItemV2: () => import(\"./components/MainNavigationV2/MgnlMainNavigationItemV2.vue\"),\n    Editorial: () => import(\"./components/Editorial/Editorial.vue\"),\n    EditorialImmersive: () => import(\"@wl-components/Editorial/EditorialHorizontalImmersive.vue\"),\n    MgnlEditorial: () => import(\"./components/Editorial/MgnlEditorial.vue\"),\n    MgnlEditorialImmersive: () => import(\"./components/Editorial/MgnlEditorialImmersive.vue\"),\n    EditorialArea: () => import(\"./components/EditorialArea/EditorialArea.vue\"),\n    HotspotCarouselArea: () => import(\"./components/HotspotCarouselArea/HotspotCarouselArea.vue\"),\n    //MgnlEditorialArea: () => import(\"./components/EditorialArea/MgnlEditorialArea.vue\"),\n    EditorialQuote: () =>\n        import(\"./components/EditorialQuote/EditorialQuote.vue\"),\n    EditorialIcon: () => import(\"./components/EditorialIcon/EditorialIcon.vue\"),\n    EditorialTabs: () => import(\"./components/EditorialTabs/EditorialTabs.vue\"),\n    EditorialCoverImage: () =>\n        import(\"./components/EditorialCoverImage/EditorialCoverImage.vue\"),\n    CarouselV1: () => import(\"./components/CarouselV1/CarouselV1.vue\"),\n    CarouselV2: () => import(\"./components/CarouselV2/CarouselV2.vue\"),\n    CarouselV3: () => import(\"./components/CarouselV3/CarouselV3.vue\"),\n    CarouselMotoplex: () => import(\"./components/CarouselMotoplex/CarouselMotoplex.vue\"),\n    ProductPresentation: () =>\n        import(\"./components/ProductPresentation/ProductPresentation.vue\"),\n    ProductPresentationImmersive: () =>\n        import(\"./components/ProductPresentationImmersive/ProductPresentationImmersive.vue\"),\n    Hotspot: () => import(\"./components/Hotspot/MgnlHotspot.vue\"),\n    HotspotItem: () => import(\"./components/Hotspot/HotspotItem.vue\"),\n    IframeDlMap: () => import(\"./components/IframeDlMap/IframeDlMap.vue\"),\n    Introduction: () => import(\"./components/Introduction/Introduction.vue\"),\n    MgnlListingArticlesWithFeatured: () =>\n        import(\"./components/Listing/MgnlListingArticlesWithFeatured.vue\"),\n    MgnlCardPromotion: () =>\n        import(\"./components/Card-Promotion/MgnlCard-Promotion.vue\"),\n    Divider: () => import(\"./components/Divider/Divider.vue\"),\n    MgnlDynamicWrapper: () => import(\"./components/MgnlDynamicWrapper/MgnlDynamicWrapper.vue\"),\n    FloatingShortcuts: () => import(\"./components/FloatingShortcuts/FloatingShortcuts.vue\"),\n    FinancialSimulator: () => import(\"./components/FinancialSimulator/FinancialSimulator.vue\"),\n    HubLinks: () => import(\"./components/HubLinks/HubLinks.vue\"),\n    CardsWrapper: () => import(\"./components/CardWrapper/CardsWrapper.vue\"),\n    CardsWrapperCommunity: () => import(\"./components/CardWrapperCommunity/CardsWrapperCommunity.vue\"),\n    HeroSingleContent: () => import(\"./components/HeroSingleContent/HeroSingleContent.vue\"),\n    PromotionCtaList: () => import(\"./components/PromotionCtaList/PromotionCtaList.vue\"),\n    FormUpload: () => import(\"./components/FormUpload/FormUpload.vue\"),\n    EventsCalendar: () =>\n      import(\"./components/EventsCalendar/EventsCalendar.vue\"),\n    YouTubeLiveIframe: () => import(\"./components/YouTubeLiveIframe/YouTubeLiveIframe.vue\"),\n  },\n\n  comments: true, // comments attr must be true in order to let edit mode working as expected\n\n  template: \"#vue-page-tmpl\",\n\n  data: function () {\n    return {\n      pageData: {},\n      translations: {},\n      commonData: {},\n      dataLoaded: false,\n      areaModel: null\n    };\n  },\n\n  mounted: function () {\n    this.$config.editMode &&\n    this.$nextTick(() => {\n      //fix vaadin bars\n    });\n  },\n\n  created: function () {\n    // In every page the ajax variations is called async in order to popolate the root data element.\n    // This data will be retrieved through the computed properties inherited by the mgnlComponent mixin (check mixins.js)\n    let ctx = this;\n\n    let queryString = window.queryString ? window.queryString : \"\";\n\n    ctx.$http\n        .get(\n            this.$config.apiPath +\n            \"?ajax=true\" +\n            (queryString && !queryString.startsWith(\"&\") ? \"&\" : \"\") +\n            queryString\n        )\n        .then(response => {\n          ctx.pageData = response.data.pageData;\n          ctx.translations = response.data.translations;\n          ctx.commonData = response.data.commonData;\n          ctx.dataLoaded = true;\n        });\n  }\n});\n","module.exports = __webpack_public_path__ + \"img/vehicle-aprilia.dc988a89.png\";","module.exports = __webpack_public_path__ + \"img/vehicle-motoguzzi.7f6a7297.png\";","module.exports = __webpack_public_path__ + \"img/vehicle-piaggio.b3176f62.png\";","module.exports = __webpack_public_path__ + \"img/serviceXCareWarranty.3c236fcf.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.isMobile)?_c('div',{class:{'has-promo' : _vm.isPromoActive},style:(_vm.menuFloating)},[_c('ul',[_vm._l((_vm.filteredSubMenuVoices),function(service){return _c('li',{key:service.uuid,class:(\"contact-us-voice \" + (service.name))},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"linkText\":_vm.linkTextLabel(service.name)}}),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})],1)}),(_vm.customerServiceLink)?_c('li',{key:_vm.customerServiceLink.uuid,class:\"contact-us-voice customer-service\"},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.customerServiceLink,'url'),\"linkText\":_vm.linkTextLabel('customer-service')}}),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})],1):_vm._e(),(_vm.bookAppointmentLink)?_c('li',{key:_vm.bookAppointmentLink.uuid,class:\"contact-us-voice book-appointment\"},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.bookAppointmentLink,'url'),\"linkText\":_vm.linkTextLabel('book-appointment')}}),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})],1):_vm._e()],2)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <!-- This component is for the Desktop view only, contact-us mobile can be found in HeaderV2.vue -->\n  <div v-if=\"!isMobile\" :style=\"menuFloating\" :class=\"{'has-promo' : isPromoActive}\">\n    <ul>\n      <li v-for=\"service in filteredSubMenuVoices\" :key=\"service.uuid\" :class=\"`contact-us-voice ${service.name}`\">\n        <pg-button :href=\"service.link | mgnlLink('url')\" :linkText=\"linkTextLabel(service.name)\" />\n        <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n      </li>\n      <li v-if=\"customerServiceLink\" :key=\"customerServiceLink.uuid\" :class=\"`contact-us-voice customer-service`\">\n        <pg-button :href=\"customerServiceLink | mgnlLink('url')\" :linkText=\"linkTextLabel('customer-service')\" />\n        <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n      </li>\n      <li v-if=\"bookAppointmentLink\" :key=\"bookAppointmentLink.uuid\" :class=\"`contact-us-voice book-appointment`\">\n        <pg-button :href=\"bookAppointmentLink | mgnlLink('url')\" :linkText=\"linkTextLabel('book-appointment')\" />\n        <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n      </li>\n    </ul>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport {mgnlComponentMixin} from \"../../mixins/mixins\";\n\nexport default {\n  components: {PgButton},\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n  name: \"pg-contacts-v2\",\n\n  data() {\n    return {\n      contactsUs: [\"dealer-locator-dealers\", \"book-appointment\", \"dealer-locator-services\"],\n      menuFloating: '',\n      isPromoActive: false\n    }\n  },\n\n  props: {\n    commonMock: {\n      type: Object,\n      default: () => {}\n    },\n    services: {\n      type: Array,\n      default: () => []\n    },\n    customerServiceLink: {\n      type: Object,\n      default: () => {}\n    },\n    bookAppointmentLink: {\n      type: Object,\n      default: () => {}\n    },\n    storeServiceBtnWidth: {\n      type: Number,\n      default: 0,\n    }\n  },\n\n  computed: {\n    filteredSubMenuVoices() {\n      return this.services.filter(service => this.contactVoices(service.name));\n    },\n    isMobile() {\n      return window.screen.width <= 1024;\n    },\n  },\n\n  created() {\n    this.calculateMenuFloating();\n    this.$eventHub.on(\"alert:closeAlert\", () => {\n        this.isPromoActive = false\n    })\n  },\n\n  mounted() {\n    window.addEventListener(\"resize\", this.calculateMenuFloating);\n  },\n\n  methods: {\n    calculateMenuFloating() {\n      //calculate the left % when the window is > 1920px\n      const currentViewport = window.innerWidth;\n      const defLeft = this.storeServiceBtnWidth ? this.storeServiceBtnWidth + 35 : 22;\n      if(currentViewport <= 1920) {\n        this.menuFloating = `--float-contacts: ${defLeft}px`\n      } else {\n        let calcFloat = ((currentViewport - 1920 ) / 2) + defLeft;\n        this.menuFloating = `--float-contacts: ${calcFloat}px`\n      }\n    },\n    linkTextLabel(value) {\n      return this.$msg(`common.header-v2.${value}`);\n    },\n    contactVoices(service) {\n      return service ? this.contactsUs.some(voice => service === voice) : false;\n    },\n  }\n}\n\n\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContactsV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContactsV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContactsV2.vue?vue&type=template&id=4dcf5f8f&\"\nimport script from \"./ContactsV2.vue?vue&type=script&lang=js&\"\nexport * from \"./ContactsV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatch.vue?vue&type=style&index=0&id=5432656c&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatch.vue?vue&type=style&index=0&id=5432656c&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.componentIs,{tag:\"component\",class:_vm.classes,attrs:{\"href\":_vm.href},on:{\"click\":function($event){return _vm.sendAnalyticsData($event)}}},[_vm._t(\"select\"),_c('div',[_c('i',{staticClass:\"icon-brand\",attrs:{\"aria-hidden\":\"true\"}}),_c('div',{staticClass:\"card-product__img\"},[_c('pg-image',{attrs:{\"lazy-src\":_vm.item.img,\"productType\":_vm.item.productType,\"brand-code\":_vm.common.brandCode,\"category-code\":_vm.item.mainCategoryCode}}),((_vm.productCardConf[_vm.item.productType].showPromo && _vm.item.plannedPrice) || _vm.isToShowPromoLabel)?_c('i',{staticClass:\"card-product__promo\"},[_c('msg',{attrs:{\"id\":\"common.card.promo.text\"}})],1):_vm._e()],1),(_vm.productCardConf[_vm.item.productType].showColors && _vm.item.colors && !_vm.isThemeVespa)?_c('pg-swatches',{staticClass:\"card-product__swatches\",attrs:{\"colors\":_vm.orderedColoredProducts}}):_vm._e(),_c('div',{staticClass:\"custom-swatches-colors-container\"},_vm._l((_vm.orderedColoredProducts),function(color,index){return (_vm.productCardConf[_vm.item.productType].showColors && _vm.item.colors && _vm.isThemeVespa)?_c('div',{key:color.uuid,staticClass:\"custom-swatches-color\"},[_c('div',{staticClass:\"color-icon\",style:((\"background-color: \" + (color.code) + \"; border: \" + (color.code !== ('#ffffff' || '#f9ffff') ? 'unset' : '1px solid #ccc')))})]):_vm._e()}),0),_c('p',[_c('span',{staticClass:\"card-product__name\"},[_vm._v(_vm._s(_vm.getName))]),(_vm.productCardConf[_vm.item.productType].showPrice)?_c('span',{staticClass:\"card-product__price\"},[(_vm.productCardConf[_vm.item.productType].showPromo && _vm.item.discountedPrice != null)?_c('span',{staticClass:\"card-product__price__discounted\"},[_vm._v(_vm._s(_vm._f(\"formatPrice\")(_vm.item.discountedPrice,_vm.priceFormatting)))]):_vm._e(),_c('span',{staticClass:\"card-product__price__list\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatPrice\")(_vm.item.price,_vm.priceFormatting))+\" \"),_c('i',{staticClass:\"icon-divider\",attrs:{\"aria-hidden\":\"true\"}})]),(_vm.productCardConf[_vm.item.productType].showPlanned && _vm.item.plannedPrice)?_c('span',{staticClass:\"card-product__price__planned\"},[_c('msg',{attrs:{\"id\":\"common.card-product.starting-from.text\",\"params\":[{ key: 'price', value: _vm.$options.filters.formatPrice(_vm.item.plannedPrice, _vm.priceFormatting) }],\"bare\":true}})],1):_vm._e()]):_vm._e()])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.classes},[_c('ul',[_vm._l((_vm.colorsToShow),function(color){return _c('li',{key:color.uuid},[_c('pg-swatch',{attrs:{\"color\":color}})],1)}),(_vm.moreColors)?_c('li',[_c('div',{staticClass:\"swatches-color\"},[_c('i',{staticClass:\"icon-plus swatches-color__more\"},[_c('msg',{attrs:{\"id\":'common.swatches.more-colors.aria'}})],1)])]):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"classes\">\n    <ul>\n      <li v-for=\"(color) in colorsToShow\" :key=\"color.uuid\">\n        <pg-swatch :color=\"color\" />\n      </li>\n      <li v-if=\"moreColors\">\n        <div class=\"swatches-color\">\n          <i class=\"icon-plus swatches-color__more\">\n            <msg :id=\"'common.swatches.more-colors.aria'\" />\n          </i>\n        </div>\n      </li>\n    </ul>\n  </div>\n</template>\n\n<script>\nimport PgSwatch from \"../Swatch/Swatch.vue\";\nexport default {\n  name: \"PgSwatches\",\n  components: {\n    PgSwatch\n  },\n  props: {\n    colors: {\n      type: Array\n    }\n  },\n  computed: {\n    classes() {\n      return [\"swatches\"];\n    },\n    colorsToShow() {\n      return this.colors.slice(0, 5);\n    },\n    moreColors() {\n      return this.colors.length > 5;\n    }\n  },\n  methods: {\n    colorStyle(code) {\n      return \"color:\" + code;\n    }\n  }\n};\n</script>\n\n<style scoped>\n#root > * {\n  margin: 5rem;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatches.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatches.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Swatches.vue?vue&type=template&id=6041ca22&scoped=true&\"\nimport script from \"./Swatches.vue?vue&type=script&lang=js&\"\nexport * from \"./Swatches.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Swatches.vue?vue&type=style&index=0&id=6041ca22&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6041ca22\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <component :is=\"componentIs\" :href=\"href\" :class=\"classes\" @click=\"sendAnalyticsData($event)\">\n    <slot name=\"select\"></slot>\n    <div>\n      <i class=\"icon-brand\" aria-hidden=\"true\"></i>\n      <div class=\"card-product__img\">\n        <pg-image :lazy-src=\"item.img\" :productType=\"item.productType\" :brand-code=\"common.brandCode\" :category-code=\"item.mainCategoryCode\"></pg-image>\n        <i\n          class=\"card-product__promo\"\n          v-if=\"(productCardConf[item.productType].showPromo && item.plannedPrice) || isToShowPromoLabel\"\n        >\n          <msg id=\"common.card.promo.text\" />\n        </i>\n      </div>\n      <pg-swatches\n        class=\"card-product__swatches\"\n        :colors=\"orderedColoredProducts\"\n        v-if=\"productCardConf[item.productType].showColors && item.colors && !isThemeVespa\"\n      ></pg-swatches>\n      <div class=\"custom-swatches-colors-container\">\n        <div v-if=\"productCardConf[item.productType].showColors && item.colors && isThemeVespa\" class=\"custom-swatches-color\" v-for=\"(color, index) in orderedColoredProducts\" :key=\"color.uuid\">\n          <div class=\"color-icon\" :style=\"`background-color: ${color.code}; border: ${color.code !== ('#ffffff' || '#f9ffff') ? 'unset' : '1px solid #ccc'}`\" />\n        </div>\n      </div>\n      <p>\n        <span class=\"card-product__name\">{{getName}}</span>\n        <span class=\"card-product__price\" v-if=\"productCardConf[item.productType].showPrice\">\n          <span\n            class=\"card-product__price__discounted\"\n            v-if=\"productCardConf[item.productType].showPromo && item.discountedPrice != null\"\n          >{{item.discountedPrice | formatPrice(priceFormatting)}}</span>\n          <span class=\"card-product__price__list\">\n            {{item.price | formatPrice(priceFormatting)}}\n            <i class=\"icon-divider\" aria-hidden=\"true\"></i>\n          </span>\n          <span\n            class=\"card-product__price__planned\"\n            v-if=\"productCardConf[item.productType].showPlanned && item.plannedPrice\"\n          >\n            <msg\n              id=\"common.card-product.starting-from.text\"\n              :params=\"[{ key: 'price', value: $options.filters.formatPrice(item.plannedPrice, priceFormatting) }]\"\n              :bare=\"true\"\n            />\n          </span>\n        </span>\n      </p>\n    </div>\n  </component>\n</template>\n\n<script>\nimport PgImage from \"../Image/Image.vue\";\nimport PgSwatches from \"../Swatches/Swatches.vue\";\nimport PgButton from \"../Button/Button.vue\";\nimport {mgnlComponentMixin} from \"@wl-vue-mixins/mixins.js\";\nimport {arrayMove, arraySortBy} from \"@wl-vue-utils/common-utils\";\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n  name: \"CardProduct\",\n  components: {\n    PgImage,\n    PgSwatches,\n    PgButton\n  },\n  props: {\n    item: {\n      type: Object,\n      default: () => {}\n    },\n    showPromoLabel: {\n      type: Boolean,\n      default: false\n    },\n    priceFormatting: {\n      type: Object,\n      default: () => {}\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {\n        return {\n          vehicle: {\n            showPrice: false,\n            showPromo: false,\n            showPlanned: false,\n            showColors: false\n          },\n          family: {\n            showPrice: false,\n            showPromo: false,\n            showPlanned: false,\n            showColors: false\n          }\n        };\n      }\n    },\n    value: {\n      type: [String, Array],\n      default: \"\"\n    },\n    identifier: {\n      type: String,\n      default: \"uuid\"\n    },\n    select: {\n      type: String,\n      default: \"\"\n    },\n    analyticsData: {\n      type: Object,\n      default: () => {\n      }\n    }\n  },\n  computed: {\n    orderedColoredProducts() {\n      // ordering colors by colorHex and putting default color as first\n      const colors = (this.item.colors || []);\n      let orderedByHex = arraySortBy(colors, \"code\", \"desc\");\n      const currentPos = orderedByHex.findIndex((element) => element.defaultColor);\n/*      console.log(colors);\n      console.log(currentPos);*/\n\n      if (currentPos > 0) {\n        orderedByHex = arrayMove(orderedByHex, currentPos, 0);\n      }\n\n      return orderedByHex;\n    },\n    classes() {\n      let selectClass = \"\";\n\n      if (this.$slots.select !== undefined && this.value === this.item[this.identifier]) {\n        selectClass = \"is-selected\";\n      } else if (this.$slots.select !== undefined) {\n        selectClass = \"is-not-selected\";\n      }\n\n      let cardClass = \"\";\n\n      //console.log(\"productType\", this.item.productType);\n\n      switch (this.item.productType) {\n        case \"vehicle\":\n          cardClass = \"card-product--vehicle\";\n          break;\n        case \"family\":\n          cardClass = \"card-product--family\";\n          break;\n        case \"service\":\n          cardClass = \"card-product--service\";\n          break;\n        default:\n          cardClass = \"card-product--accessory\";\n          break;\n      }\n\n      return [\"card-product\", cardClass, selectClass];\n    },\n    componentIs() {\n      let component = \"a\";\n\n      //console.log(this.select);\n\n      if (this.select === \"direct\") {\n        component = \"label\";\n      } else if (this.select === \"confirm\") {\n        component = \"button\";\n      } else if (this.select === \"linksDisabled\") {\n        component = \"div\"\n      }\n\n      return component;\n    },\n    href() {\n      let href = this.item.href;\n      if (this.select === \"direct\" || this.select === \"confirm\" || this.select === \"linksDisabled\") {\n        href = false;\n      }\n      return href;\n    },\n    isToShowPromoLabel() {\n      return this.showPromoLabel && this.item.promo;\n    },\n    getName() {\n      return this.item.extendedName ? this.item.extendedName : this.item.name;\n    },\n    isThemeVespa() {\n      // Check if the body contains the class \"theme-vespa\"\n      return document.body.classList.contains('theme-vespa');\n    }\n  },\n\n  methods: {\n    sendAnalyticsData(ev) {\n      if (this.analyticsData) {\n        if (window.google_tag_manager) ev.preventDefault();\n        this.$analytics.pushEvent(this.analyticsData.evCategory, this.analyticsData.evAction, this.analyticsData.evLabel, this.href);\n      }\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card-Product.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card-Product.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Card-Product.vue?vue&type=template&id=5f24c406&\"\nimport script from \"./Card-Product.vue?vue&type=script&lang=js&\"\nexport * from \"./Card-Product.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"swatches-color tooltip\",class:{'vespa': _vm.isThemeVespa},attrs:{\"role\":\"tooltip\",\"tabindex\":\"0\"}},[_c('i',{staticClass:\"icon-swatch swatches-color__icon\",style:(_vm.colorStyle)},[_c('span',[_vm._v(_vm._s(_vm.colorLabel))])]),_c('i',{staticClass:\"icon-swatch swatches-color__darken\"}),(_vm.isThemeVespa)?_c('i',{staticClass:\"icon-swatch-active swatches-color__inactive\"}):_vm._e(),_c('i',{staticClass:\"icon-swatch-active swatches-color__active\"}),_c('span',{staticClass:\"tooltip__content tooltip__content--sm\"},[_vm._v(_vm._s(_vm.colorLabel))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"{'vespa': isThemeVespa}\" class=\"swatches-color tooltip\" role=\"tooltip\" tabindex=\"0\">\n    <i class=\"icon-swatch swatches-color__icon\" :style=\"colorStyle\">\n      <span>{{colorLabel}}</span>\n    </i>\n    <i class=\"icon-swatch swatches-color__darken\"></i>\n    <i class=\"icon-swatch-active swatches-color__inactive\" v-if=\"isThemeVespa\"></i>\n    <i class=\"icon-swatch-active swatches-color__active\"></i>\n    <span class=\"tooltip__content tooltip__content--sm\">{{colorLabel}}</span>\n  </div>\n</template>\n\n<script>\n  export default {\n    name: \"pg-swatch\",\n    props: {\n      color: {\n        type: Object,\n        default: () => {\n        }\n      },\n      label: {\n        type: String,\n        required: false\n      },\n      code: {\n        type: String,\n        required: false\n      },\n\n    },\n    computed: {\n      colorStyle() {\n        return `color:${this.code || this.color?.code || this.color?.colorHex}`;\n      },\n      colorLabel() {\n        return this.label || this.color?.label || this.color?.colorName;\n      },\n      isThemeVespa() {\n        // Check if the body contains the class \"theme-vespa\"\n        return document.body.classList.contains('theme-vespa');\n      }\n    },\n    methods: {}\n  };\n</script>\n<style scoped>\n  #root > * {\n    margin: 5rem;\n  }\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatch.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Swatch.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Swatch.vue?vue&type=template&id=5432656c&scoped=true&\"\nimport script from \"./Swatch.vue?vue&type=script&lang=js&\"\nexport * from \"./Swatch.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Swatch.vue?vue&type=style&index=0&id=5432656c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5432656c\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.classes,attrs:{\"role\":\"alert\"}},[_vm._t(\"default\"),(_vm.dismissible)?_c('pg-button',{staticClass:\"alert__close\",attrs:{\"icon\":'icon-close',\"styleType\":'icon',\"eventName\":\"alert:closeAlert\",\"event-params\":{uuid: _vm.uuid}}},[_c('msg',{attrs:{\"id\":\"common.alert.close.aria\"}})],1):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"classes\" role=\"alert\">\n    <slot></slot>\n    <pg-button\n      v-if=\"dismissible\"\n      class=\"alert__close\"\n      :icon=\"'icon-close'\"\n      :styleType=\"'icon'\"\n      eventName=\"alert:closeAlert\"\n      :event-params=\"{uuid: uuid}\"\n    >\n      <msg id=\"common.alert.close.aria\" />\n    </pg-button>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\n\nexport default {\n  name: \"pg-alert\",\n  components: {\n    PgButton\n  },\n  data() {\n    return {\n      visible: true\n    };\n  },\n  props: {\n    uuid: {\n      type: String,\n      default: \"\"\n    },\n    color: {\n      type: String,\n      default: \"\"\n    },\n    dismissible: {\n      type: Boolean,\n      default: true\n    },\n    sticky: {\n      type: Boolean,\n      default: false\n    }\n  },\n  computed: {\n    classes() {\n      return [\n        \"alert\",\n        this.color ? \"alert--\" + this.color : \"\",\n        this.dismissible ? \"alert--dismissible\" : \"\",\n        this.visible ? \"is-visible\" : \"is-hidden\",\n        this.sticky ? \"alert--sticky\" : \"\"\n      ];\n    }\n  },\n  mounted() {\n    this.$eventHub.on(\"alert:closeAlert\", ({ uuid }) => {\n      console.log(\"this.$eventHub.on\", uuid, this.visible);\n      if (uuid == this.uuid) {\n        this.visible = false;\n      }\n    });\n  },\n\n  methods: {}\n};\n</script>\n\n<style scoped>\n#root > .alert:not(.alert--sticky) {\n  margin: 50px;\n}\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Alert.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Alert.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Alert.vue?vue&type=template&id=2092edd0&scoped=true&\"\nimport script from \"./Alert.vue?vue&type=script&lang=js&\"\nexport * from \"./Alert.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Alert.vue?vue&type=style&index=0&id=2092edd0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"2092edd0\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Alert.vue?vue&type=style&index=0&id=2092edd0&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Alert.vue?vue&type=style&index=0&id=2092edd0&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/dealer-locator.da61506e.svg\";","module.exports = __webpack_public_path__ + \"img/serviceXCareMaintenance.ffb29d05.png\";","var map = {\n\t\"./accessory.png\": \"262e\",\n\t\"./contact-us.svg\": \"284f\",\n\t\"./dealer-locator.svg\": \"9998\",\n\t\"./header-v2-community-login.svg\": \"f3c7\",\n\t\"./service.png\": \"3dd3\",\n\t\"./serviceCheck.png\": \"0e93\",\n\t\"./serviceServicePack.png\": \"4bdd\",\n\t\"./serviceXCareMaintenance.png\": \"a33f\",\n\t\"./serviceXCareWarranty.png\": \"706f\",\n\t\"./vehicle-ape.png\": \"314e\",\n\t\"./vehicle-aprilia.png\": \"62e5\",\n\t\"./vehicle-motoguzzi.png\": \"6b46\",\n\t\"./vehicle-piaggio.png\": \"6ff4\",\n\t\"./vehicle-vespa.png\": \"23cf\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"a4be\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"accordion\"},_vm._l((_vm.column),function(group){return _c('div',{key:group.id,class:{'font-size-ms' : _vm.isThemeVespa}},[_c('h3',{staticClass:\"show-for-large\",class:_vm.isThemeVespa ? 'text--heading-ms' : 'text--heading-s'},[_vm._v(_vm._s(group.title))]),_c('pg-button',{staticClass:\"text--heading-s button--clear hide-for-large\",attrs:{\"aria-expanded\":_vm.isActiveElement(group.id),\"eventName\":_vm.eventName,\"event-params\":{id: group.id},\"aria-controls\":group.id}},[_vm._v(\" \"+_vm._s(group.title)+\" \"),_c('svg',{staticClass:\"accordion__trigger-Icon\",attrs:{\"width\":\"40\",\"height\":\"12\",\"stroke\":\"cornflowerblue\"}},[_c('polyline',{attrs:{\"points\":\"12,2 20,10 28,2\",\"stroke-width\":\"3\",\"fill\":\"none\"}})])]),_c('div',{staticClass:\"accordion__content\",class:{'is-visible': _vm.isActiveElement(group.id)}},[_c('ul',{attrs:{\"id\":group.id}},_vm._l((group.items),function(item){return _c('li',{key:item.uuid},[_c('a',{attrs:{\"href\":_vm._f(\"mgnlLink\")(item.link,'url'),\"target\":item.onBlank ? '_blank' : '_self',\"linkNofollow\":item.noFollow}},[_vm._v(_vm._s(item.label))])])}),0)])],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"accordion\">\n    <div :class=\"{'font-size-ms' : isThemeVespa}\" v-for=\"group in column\" :key=\"group.id\">\n      <h3 :class=\"isThemeVespa ? 'text--heading-ms' : 'text--heading-s'\" class=\"show-for-large\">{{group.title}}</h3>\n      <pg-button\n        class=\"text--heading-s button--clear hide-for-large\"\n        :aria-expanded=\"isActiveElement(group.id)\"\n        :eventName=\"eventName\"\n        :event-params=\"{id: group.id}\"\n        :aria-controls=\"group.id\"\n      >\n        {{group.title}}\n        <svg\n          width=\"40\"\n          height=\"12\"\n          stroke=\"cornflowerblue\"\n          class=\"accordion__trigger-Icon\"\n        >\n          <polyline points=\"12,2 20,10 28,2\" stroke-width=\"3\" fill=\"none\" />\n        </svg>\n      </pg-button>\n\n      <div class=\"accordion__content\" :class=\"{'is-visible': isActiveElement(group.id)}\">\n        <ul :id=\"group.id\">\n          <li v-for=\"item in group.items\" :key=\"item.uuid\">\n            <a\n              :href=\"item.link | mgnlLink('url')\"\n              :target=\"item.onBlank ? '_blank' : '_self'\"\n              :linkNofollow=\"item.noFollow\"\n            >{{ item.label }}</a>\n          </li>\n        </ul>\n      </div>\n    </div>\n  </div>\n</template>\n<script>\nimport PgButton from \"../Button/Button.vue\";\n\nexport default {\n  name: \"FooterColumn\",\n  components: {\n    PgButton\n  },\n  data() {\n    return {\n      actives: []\n    };\n  },\n  props: {\n    column: {\n      type: Array,\n      default: () => []\n    },\n    columnId: {\n      type: String\n    }\n  },\n  computed: {\n    eventName: function() {\n      return \"expandFooterGroup-\" + this.columnId;\n    },\n    isActiveElement: function() {\n      let ctx = this;\n      return function(id) {\n        return ctx.actives.includes(id);\n      };\n    },\n    isThemeVespa() {\n      // Check if the body contains the class \"theme-vespa\"\n      return document.body.classList.contains('theme-vespa');\n    }\n  },\n  created: function() {\n    let ctx = this;\n    this.$eventHub.on(ctx.eventName, function(eventParams) {\n      let index = ctx.actives.indexOf(eventParams.id);\n      if (index >= 0) {\n        ctx.actives.splice(index, 1);\n      } else {\n        ctx.$set(ctx.actives, ctx.actives.length, eventParams.id);\n      }\n    });\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FooterColumn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FooterColumn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FooterColumn.vue?vue&type=template&id=8a5cd070&\"\nimport script from \"./FooterColumn.vue?vue&type=script&lang=js&\"\nexport * from \"./FooterColumn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('hr',{staticClass:\"divider\",attrs:{\"id\":(\"uuid-\" + (_vm.$attrs['jcr-uuid']))}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <hr class=\"divider\" :id=\"`uuid-${$attrs['jcr-uuid']}`\"/>\n</template>\n\n<script>\n  export default {\n  name: \"divider\",\n  inheritAttrs: false,\n};\n</script>\n\n<style scoped>\n#root > .divider {\n  margin: 50px;\n}\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Divider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Divider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Divider.vue?vue&type=template&id=275d5408&scoped=true&\"\nimport script from \"./Divider.vue?vue&type=script&lang=js&\"\nexport * from \"./Divider.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Divider.vue?vue&type=style&index=0&id=275d5408&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"275d5408\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationV2.vue?vue&type=style&index=0&id=819fc57e&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationV2.vue?vue&type=style&index=0&id=819fc57e&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"icon-text\"},[_c('i',{class:(\"icon-text__icon icon-\" + _vm.iconName),attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"icon-text__title\"},[_vm._v(_vm._s(_vm.title))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span class=\"icon-text\">\n    <i :class=\"`icon-text__icon icon-${iconName}`\" aria-hidden=\"true\"></i>\n    <span class=\"icon-text__title\">{{title}}</span>\n  </span>\n</template>\n\n<script>\n// TODO move inside TextIcon folder ???\nexport default {\n  name: \"PgIconText\",\n  props: {\n    iconName: {\n      type: String,\n      defaultValue: \"\"\n    },\n    title: {\n      type: String,\n      defaultValue: \"\"\n    }\n  }\n};\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconText.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconText.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IconText.vue?vue&type=template&id=6ee45412&\"\nimport script from \"./IconText.vue?vue&type=script&lang=js&\"\nexport * from \"./IconText.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('input',{staticClass:\"isFirstLogin\",attrs:{\"hidden\":\"\",\"data-is-first-login\":\"false\"}}),(_vm.showPromoAlert)?_c('pg-alert',{staticStyle:{\"position\":\"fixed\",\"z-index\":\"5\",\"width\":\"100%\"},attrs:{\"color\":\"primary\"}},[_c('a',{staticClass:\"promo-alert__link\",attrs:{\"href\":(\"#\" + _vm.targetId)},on:{\"click\":function($event){$event.preventDefault();return _vm.click(_vm.targetId)}}},[_c('i',{class:\"icon-gift-fill\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.promo-alert.message.text\"}})],1)]):_vm._e(),(_vm.getCommunityHomePagePath)?_c('input',{staticClass:\"community-homepage-link\",attrs:{\"hidden\":\"\",\"data-link\":_vm.getCommunityHomePagePath}}):_vm._e(),_c('header',{ref:\"header\",class:_vm.classes(),attrs:{\"id\":\"header\",\"aria-label\":_vm.ariaLabel},on:{\"scroll\":_vm.handleScroll}},[_c('nav',[_c('div',{staticClass:\"header__logo\"},[_c('a',{staticClass:\"header__logo__on-background\",attrs:{\"href\":_vm.getCustomHomepagePath ? _vm.getCustomHomepagePath : _vm.getHomepageNodePath}},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.logo,'url'),\"alt\":_vm.logoAlt,\"aria-label\":_vm.$msg('common.header.logo-aria-label')}})],1),_c('a',{staticClass:\"header__logo__on-tranparent\",attrs:{\"href\":_vm.getCustomHomepagePath ? _vm.getCustomHomepagePath : _vm.getHomepageNodePath}},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.logoOnTransparent,'url'),\"alt\":_vm.logoAlt,\"aria-label\":_vm.$msg('common.header.logo-aria-label')}})],1)]),_c('div',{staticClass:\"header-skip-navigation\",attrs:{\"aria-label\":_vm.$msg('common.header.skip-navigation.aria-label')}},[_c('a',{staticClass:\"show-on-focus\",attrs:{\"href\":\"#mainContent\"}},[_c('msg',{attrs:{\"id\":\"common.header.skip-navigation.aria\"}})],1)]),_c('div',{staticClass:\"header__actions\"},[_c('input',{staticClass:\"screenset-login-data\",attrs:{\"hidden\":\"\",\"data-screenSet\":\"\",\"data-startScreen\":\"\"}}),((_vm.common.communityData && _vm.common.communityData.isCommunityEnabled) && (_vm.common.actpageTemplate != 'piaggio:pages/t-landing-page'))?_c('div',{staticClass:\"header__login-gigya\"},[_c('a',{staticClass:\"link_login_gigya\",attrs:{\"id\":\"account-login\",\"href\":\"#\",\"data-target\":\"\"}},[_c('span',[_vm._v(_vm._s(_vm.common.communityData.headerTitle))])])]):_vm._e(),_c('div',{staticClass:\"header__menu-services\"},[(_vm.services.length)?_c('ul',_vm._l((_vm.services),function(service){return _c('li',{key:service.uuid,class:(\"header__menu-services__\" + (service.name))},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"styleType\":'icon',\"icon\":_vm.serviceClasses(service.name)}},[_c('msg',{attrs:{\"id\":(\"common.header.\" + (service.name) + \".aria\"),\"cssClass\":\"show-for-sr\"}})],1)],1)}),0):_vm._e(),(!_vm.hideNavigation)?_c('pg-button',{staticClass:\"header__menu-services__nav\",attrs:{\"selfManageStatus\":false,\"eventName\":\"header:toggleNavigation\",\"styleType\":\"icon\",\"aria-expanded\":_vm.isNavigationOpen,\"icon\":\"icon-menu\",\"aria-controls\":\"navigation\"}},[_c('msg',{attrs:{\"id\":\"common.header.hamburger-menu.aria\"}})],1):_vm._e()],1)])])]),(_vm.isLogged && _vm.isModalOpen)?_c('div',{staticClass:\"header__login-modal\"},[_c('div',{staticClass:\"modal-heading\"},[_c('div',{staticClass:\"modal-links\"},[_c('pg-button',{staticClass:\"modal-option\",attrs:{\"href\":_vm.getCommunityHomePagePath}},[_c('msg',{attrs:{\"id\":(\"common.community.\" + (this.brandNodeName.toLowerCase()) + \".cta.private-homepage\")}})],1),_c('pg-button',{staticClass:\"modal-option\",attrs:{\"href\":_vm.getCommunityProfilePath}},[_c('msg',{attrs:{\"id\":\"common.community.cta.personal-area\"}})],1)],1),_c('pg-button',{staticClass:\"modal-close-btn\",attrs:{\"aria-controls\":\"close\",\"aria-expanded\":_vm.isModalOpen,\"eventName\":\"header:modalClose\",\"icon\":\"icon-close\",\"styleType\":\"icon\"}},[_c('msg',{attrs:{\"id\":\"common.generic.close\"}})],1)],1),_c('div',{staticClass:\"modal-separator\"}),_c('pg-button',{staticClass:\"modal-logout\",attrs:{\"eventName\":\"header:logout\"}},[_c('msg',{attrs:{\"id\":\"common.community.cta.logout\"}})],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <input hidden class=\"isFirstLogin\" data-is-first-login=\"false\"/>\n    <pg-alert v-if=\"showPromoAlert\" color=\"primary\" style=\"position:fixed;z-index:5;width: 100%;\">\n      <a class=\"promo-alert__link\" :href=\"`#${targetId}`\" @click.prevent='click(targetId)'>\n        <i :class=\"`icon-gift-fill`\" aria-hidden=\"true\"></i>\n        <msg id=\"common.promo-alert.message.text\" />\n      </a>\n    </pg-alert>\n    <input v-if=\"getCommunityHomePagePath\" hidden class=\"community-homepage-link\" :data-link=\"getCommunityHomePagePath\">\n    <header :class=\"classes()\" id=\"header\" ref=\"header\" :aria-label=\"ariaLabel\" v-on:scroll=\"handleScroll\">\n      <nav>\n        <div class=\"header__logo\">\n          <a :href=\"getCustomHomepagePath ? getCustomHomepagePath : getHomepageNodePath\" class=\"header__logo__on-background\">\n            <pg-image :lazy-src=\"logo | mgnlMedia('url')\" :alt=\"logoAlt\" :aria-label=\"$msg('common.header.logo-aria-label')\"></pg-image>\n          </a>\n          <a :href=\"getCustomHomepagePath ? getCustomHomepagePath : getHomepageNodePath\" class=\"header__logo__on-tranparent\">\n            <pg-image :lazy-src=\"logoOnTransparent | mgnlMedia('url')\" :alt=\"logoAlt\" :aria-label=\"$msg('common.header.logo-aria-label')\"></pg-image>\n          </a>\n        </div>\n        <div class=\"header-skip-navigation\" :aria-label=\"$msg('common.header.skip-navigation.aria-label')\">\n          <a class=\"show-on-focus\" href=\"#mainContent\">\n            <msg id=\"common.header.skip-navigation.aria\" />\n          </a>\n        </div>\n        <!-- div class=\"header__menu-shortcuts\" v-if=\"items.link\">\n          <ul>\n            <li v-for=\"item in items\" :key=\"item.uuid\">\n              <a :href=\"item.link | mgnlLink('url')\" :targetBlank=\"item.onBlank\">{{item.label}}</a>\n            </li>\n          </ul>\n        </div -->\n        <div class=\"header__actions\">\n          <input hidden class=\"screenset-login-data\" data-screenSet=\"\" data-startScreen=\"\">\n          <div  v-if=\"(common.communityData && common.communityData.isCommunityEnabled) && (common.actpageTemplate != 'piaggio:pages/t-landing-page')\"\n                class=\"header__login-gigya\">\n            <a id=\"account-login\" class=\"link_login_gigya\" href=\"#\" data-target=\"\">\n              <span>{{ common.communityData.headerTitle }}</span>\n            </a>\n          </div>\n          <div class=\"header__menu-services\">\n            <ul v-if=\"services.length\">\n              <li\n                  v-for=\"service in services\"\n                  :key=\"service.uuid\"\n                  :class=\"`header__menu-services__${service.name}`\"\n              >\n                <!--  {{service.name}}-->\n                <pg-button\n                    :href=\"service.link | mgnlLink('url')\"\n                    :styleType=\"'icon'\"\n                    :icon=\"serviceClasses(service.name)\"\n                >\n                  <msg :id=\"`common.header.${service.name}.aria`\" cssClass=\"show-for-sr\"/>\n                </pg-button>\n              </li>\n            </ul>\n            <pg-button\n                v-if=\"!hideNavigation\"\n                :selfManageStatus=\"false\"\n                eventName=\"header:toggleNavigation\"\n                styleType=\"icon\"\n                class=\"header__menu-services__nav\"\n                :aria-expanded=\"isNavigationOpen\"\n                icon=\"icon-menu\"\n                aria-controls=\"navigation\"\n            >\n              <msg id=\"common.header.hamburger-menu.aria\" />\n            </pg-button>\n          </div>\n        </div>\n      </nav>\n    </header>\n\n    <div v-if=\"isLogged && isModalOpen\" class=\"header__login-modal\">\n      <div class=\"modal-heading\">\n        <div class=\"modal-links\">\n          <pg-button\n              :href=\"getCommunityHomePagePath\"\n              class=\"modal-option\"\n          >\n            <msg :id=\"`common.community.${this.brandNodeName.toLowerCase()}.cta.private-homepage`\" />\n          </pg-button>\n          <pg-button\n              :href=\"getCommunityProfilePath\"\n              class=\"modal-option\"\n          >\n            <msg id=\"common.community.cta.personal-area\" />\n          </pg-button>\n        </div>\n        <pg-button\n            aria-controls=\"close\"\n            :aria-expanded=\"isModalOpen\"\n            class=\"modal-close-btn\"\n            eventName=\"header:modalClose\"\n            icon=\"icon-close\"\n            styleType=\"icon\"\n        >\n          <msg id=\"common.generic.close\" />\n        </pg-button>\n      </div>\n      <div class=\"modal-separator\"></div>\n      <pg-button\n          eventName=\"header:logout\"\n          class=\"modal-logout\"\n      >\n        <msg id=\"common.community.cta.logout\" />\n      </pg-button>\n    </div>\n  </div>\n</template>\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgAlert from \"../Alert/Alert.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport Editorial from \"../Editorial/Editorial.vue\";\nimport {mgnlComponentMixin} from \"../../mixins/mixins\";\nimport onAfterScreenLoad from \"../GigyaCommunity/gigya-script/onAfterScreenLoad\";\nimport router from '../../utils/router.js'\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n  router: router,\n  name: \"pg-header\",\n  components: {\n    Editorial,\n    PgButton,\n    PgAlert,\n    PgImage\n  },\n  data() {\n    return {\n      lastScrollTop: 0,\n      statusClass: \"\",\n      isNavigationOpen: \"false\",\n      showPromoAlert: false,\n      targetId: null,\n      isLogged: false,\n      isModalOpen: false,\n      logoutRedirect: \"\",\n      registrationRedirect: \"\",\n      loginRedirect: \"\",\n      forgotPswRedirect: \"\",\n      faqRedirect: \"\",\n      policyRedirect: \"\",\n      gigyaAfterLoadScript: onAfterScreenLoad\n    };\n  },\n  props: {\n    commonMock: {\n      type: Object,\n      default: () => {}\n    },\n    layout: {\n      type: String\n    },\n    // removed from facade, but kept to maintain old data structures in mocks and Jcr\n    items: {\n      type: Array,\n      default: () => []\n    },\n    logo: {\n      type: Object,\n      default: () => {}\n    },\n    logoOnTransparent: {\n      type: Object,\n      default: () => {}\n    },\n    services: {\n      type: Array,\n      default: () => []\n    },\n    brandNodeName: {\n      type: String\n    },\n    brandNodePath: {\n      type: String\n    },\n    homepageNodePath: {\n      type: String\n    },\n    customLogoLink: {\n      type: String\n    },\n    hideNavigation: {\n      type: Boolean,\n      default: false\n    },\n    commonHeaderAriaLabel: {\n      type: String,\n      default: ''\n    }\n  },\n  computed: {\n    getHomepageNodePath() {\n      return this.homepageNodePath ? this.homepageNodePath : this.common.homepageNodePath;\n    },\n    getCustomHomepagePath(){\n      return this.common.customLogoLink;\n    },\n    getBrandNodePath() {\n      return this.brandNodeName ? this.brandNodeName.toLowerCase() : this.common.brandNodeName;\n    },\n    getCommunityHomePagePath() {\n      if (this.common.communityData !== undefined && this.common.communityData.homePageCommunity) {\n        return this.common.communityData.homePageCommunity;\n      } else return \"\";\n    },\n    getCommunityProfilePath() {\n      if (this.common.communityData !== undefined && this.common.communityData.profileRedirectLink) {\n        return this.common.communityData.profileRedirectLink;\n      } else return \"\";\n    },\n    isPrivateTemplate() {\n      if (this.common.communityData !== undefined && this.common.communityData.isPrivateTemplate) {\n        return this.common.communityData.isPrivateTemplate;\n      } else return \"\";\n    },\n    logoAlt() {\n      return this.getBrandNodePath ? this.$msg('common.header.logo-label.text') + \" \" + this.getBrandNodePath : \"\";\n    },\n    ariaLabel() {\n      //retrieving label text from dictionary in root element data. Otherwise, load label from common mock\n      return this.$msg('common.header.aria-label.text') || this.commonHeaderAriaLabel;\n    }\n  },\n  methods: {\n    classes() {\n      return [\"header\", this.layout, this.statusClass, this.showPromoAlert && 'header--promo', this.common.isOverlayConfigured ? 'not-visible' : ''];\n    },\n    isThemeVespa() {\n      // Check if the body contains the class \"theme-vespa\"\n      return document.body.classList.contains('theme-vespa');\n    },\n    serviceClasses(service) {\n      switch (service) {\n        case \"dealer-locator\": {\n          if (this.isThemeVespa() === true) {\n            return \"icon-vespa_pin\";\n          }\n          return \"icon-pin-fill\";\n          break;\n        }\n        /*case \"personal-area\":\n          return \"icon-user-fill\";\n          break;\n        case \"search\":\n          return \"icon-search-fill\";\n          break;*/\n      }\n    },\n    handleScroll(event) {\n      let st =\n          (window && window.pageYOffset) ||\n          (document && document.documentElement.scrollTop);\n\n      if (st > this.lastScrollTop) {\n        this.statusClass = \"header--sticky\";\n      } else {\n        //console.log(\"scroll up\");\n        this.statusClass = \"header--sticky\";\n      }\n\n      if (st === 0) {\n        this.statusClass = \"\";\n      }\n\n      this.lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling\n    },\n    click(targetID) {\n      const marginToTop = 144;\n      const elTarget = document.getElementById(targetID);\n      if (elTarget) {\n        const bounding = elTarget.getBoundingClientRect();\n        const distanceToTop = Math.floor(bounding.top + window.pageYOffset - marginToTop);\n        window.scrollTo(0, distanceToTop);\n      }\n    },\n    showScreen() {\n      let screenSet = document.querySelector(\".screenset-login-data\").dataset.screenSet;\n      let startScreen = document.querySelector(\".screenset-login-data\").dataset.startScreen;\n      let errorLabel = this.$msg(`common.community.${this.brandNodeName.toLowerCase()}.error-message.invalid-login`);\n\n      gigya.accounts.showScreenSet({\n        screenSet:screenSet,\n        startScreen:startScreen,\n        customLang: {\n          'invalid_login_or_password' : '<p class=\"error-message-description\">' + errorLabel + '</p>'\n        },\n        onAfterScreenLoad: this.onAfterScreenLoad\n      });\n    },\n    onAfterScreenLoad(event) {\n      this.gigyaAfterLoadScript(event, this);\n    },\n    async loadScript() {\n      let ctx = this;\n      return new Promise((res, rej) => {\n        ctx.showScreen();\n      });\n    },\n    async loadAccountInfo(script, src, screenSet, startScreen) {\n      let ctx = this;\n      return new Promise((res, rej) => {\n        script.onload = function () {\n          res();\n          ctx.onLoadPage();\n        }\n        script.onerror = function () {\n          rej();\n        }\n      });\n    },\n    async onFirstLogin(brandName, country, response) {\n      let setAccountInfoResponse = function (response) {\n        if (response.errorCode === 400006) {\n          console.log('Error :' + response.errorMessage);\n          return false;\n        }\n      }\n\n      let fO_TheClan = response.data?.FO_TheClan ? response.data.FO_TheClan.trim() : undefined;\n      let iscrizione_TheClan = response.data.Iscrizione_TheClan;\n      let fO_ProudOwners = response.data?.FO_ProudOwners ? response.data.FO_ProudOwners.trim() : undefined;\n      let iscrizione_ProudOwners = response.data.Iscrizione_ProudOwners;\n\n      console.debug(\"TheClan \",fO_TheClan,'\\n',\"Iscrizione The Clan \", iscrizione_TheClan,'\\n',\"f0 Proud Owners \", fO_ProudOwners,'\\n',\"iscrizione Proud Owners ''\", iscrizione_ProudOwners);\n      let params = {};\n      if (brandName === \"moto-guzzi\" && country !== \"US\" && country !== \"CA\") {\n        if ((!fO_TheClan && !iscrizione_TheClan) && (fO_ProudOwners === undefined && iscrizione_ProudOwners === undefined)) {\n          params = {\n            data: {\n              FO_TheClan: \"F\",\n              Iscrizione_TheClan: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n         //params.data รจ per la prima volta che ci iscriviamo\n        localStorage.setItem(\"FO\", params.data ?  fO_TheClan : fO_ProudOwners !== undefined ? fO_ProudOwners : fO_TheClan);\n      } else if (brandName === \"moto-guzzi\" && (country === \"US\" || country === \"CA\")) {\n        if (!fO_ProudOwners && !iscrizione_ProudOwners && (fO_TheClan === undefined && iscrizione_TheClan === undefined)) {\n          params = {\n            data: {\n              FO_ProudOwners: \"F\",\n              Iscrizione_ProudOwners: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n        localStorage.setItem(\"FO\", params.data ?  fO_ProudOwners : fO_TheClan !== undefined ? fO_TheClan : fO_ProudOwners);\n      } else if (brandName === \"aprilia\") {\n        if (!response.data.FO_Bearacer && !response.data.Iscrizione_BeaRacer) {\n          params = {\n            data: {\n              FO_Bearacer: \"F\",\n              Iscrizione_BeaRacer: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n        localStorage.setItem(\"FO\", params.data ?  params.data.FO_Bearacer : response.data.FO_Bearacer);\n      }\n      gigya.accounts.setAccountInfo(params);\n    },\n    checkForRedirect(){\n      if (this.common.communityData.visibleOnlyForOwner && localStorage.FO === \"F\"){\n        this.$router.replace(this.common.communityData.listingEventsRedirectLink).then(() => {\n          this.$router.go(0);\n        });\n      }\n    },\n    onLoadPage() {\n      let ctx = this;\n      const brandName = ctx.common.brandNodeName;\n      const country = ctx.common.currentCountry;\n      let data;\n      let getAccountInfoResponse = function (response) {\n        if (response.errorCode !== 0) {\n          console.log('Error :' + response.errorMessage);\n          return false;\n        }\n        let isMobile = window.screen.width <= 767;\n        let containsLoginCookie = ctx.containsLoginCookie();\n        data = response.data;\n        ctx.onFirstLogin(brandName, country, response);\n        if (containsLoginCookie) {\n          document.getElementById('account-login').classList.add(\"logged\");\n          const userName = response.profile['firstName'].length > 28 ? response.profile['firstName'].slice(0, 28) + '...' : response.profile['firstName']\n          if (!isMobile) {\n            document.getElementById('account-login').innerHTML = '<span>' + userName + '</span>';\n          }\n          localStorage.setItem('user', JSON.stringify(response.profile));\n          localStorage.setItem('data', JSON.stringify(response.data));\n\n        } else {\n          document.getElementById('account-login').classList.remove(\"logged\");\n          if (isMobile) {\n            document.getElementById('account-login').innerHTML = 'span>' + this.headerTitle + '</span>';\n\n          }\n          localStorage.removeItem('user');\n        }\n        localStorage.setItem(\"gigyaUid\",response.UID);\n\n        let vin = \"noVin\";\n        if (brandName === \"moto-guzzi\" && country !== \"US\" && country !== \"CA\") {\n          vin = data.MembershipCode_TheClan;\n        } else if (brandName === \"moto-guzzi\" && (country === \"US\" || country === \"CA\")) {\n              vin = data.MembershipCode_ProudOwners;\n        } else if (brandName === \"aprilia\") {\n          vin = data.MembershipCode_BeaRacer;\n        }\n        localStorage.setItem(\"qrCodeVin\",vin);\n\n        if (ctx.common.communityData.isPrivateCommunityHomepagePage) {\n          ctx.hideShowCommunityCards();\n        }\n        if (ctx.common.communityData.isPrivateCommunityEventDetailPage){\n          ctx.checkForRedirect();\n        }\n      };\n\n      gigya.accounts.getAccountInfo({\n        include: 'profile, data',\n        callback: getAccountInfoResponse\n      });\n    },\n    checkResultScript() {\n      if (this.isLogged) {\n        this.isModalOpen = !this.isModalOpen;\n        this.$emit('gigya-modal-overlay', this.isModalOpen);\n      } else {\n        this.loadScript()\n            .then(() => {\n              console.log('Script loaded!');\n            })\n            .catch(() => {\n              console.error('Script loading failed! Handle this error');\n            });\n      }\n    },\n    addingClickOnModal() {\n      document.querySelector(\".link_login_gigya\").addEventListener(\"click\", this.checkResultScript);\n    },\n    removingClickOnModal() {\n      document.querySelector(\".link_login_gigya\").removeEventListener(\"click\", this.checkResultScript);\n    },\n    loadGigyaScript(ctx) {\n      const src = ctx.common.communityData.urlApiKey\n      const screenSet = ctx.common.communityData.loginScreen.screenSet;\n      const startScreen = ctx.common.communityData.loginScreen.startScreen;\n      document.querySelector(\".screenset-login-data\").dataset.screenSet = screenSet;\n      document.querySelector(\".screenset-login-data\").dataset.startScreen = startScreen;\n      const script = document.createElement('script');\n      script.type = \"text/javascript\";\n      script.className = \"gigya_import community\"\n      script.src = src;\n      document.body.appendChild(script);\n      if (this.common.communityData.isPrivateTemplate || this.containsLoginCookie) {\n        this.loadAccountInfo(script, src, screenSet, startScreen)\n            .then(() => {\n              console.log('Account Info loaded!');\n            })\n            .catch(() => {\n              console.error('Account Info loading failed! Handle this error');\n            });\n      }\n    },\n    deleteAllCookies() {\n      const cookies = document.cookie.split(\";\");\n      for (let i = 0; i < cookies.length; i++) {\n        const cookie = cookies[i];\n        const eqPos = cookie.indexOf(\"=\");\n        const name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\n        document.cookie = name + \"=;expires=Thu, 01 Jan 1970 00:00:00 GMT\";\n      }\n    },\n    containsLoginCookie() {\n      let containsLoginCookie = false;\n      let cookieList = document.cookie.split(\";\");\n      cookieList.forEach(cookie => {\n        let key = cookie.split(\"=\")[0].trim();\n        let glt = key.split(\"_\")[0];\n        if (glt === \"glt\") {\n          containsLoginCookie = true;\n        }\n      });\n      this.isLogged = containsLoginCookie;\n      return containsLoginCookie;\n    },\n    communityLoginCheck() {\n      const containsLoginCookie = this.containsLoginCookie();\n      if (!containsLoginCookie) {\n        this.deleteAllCookies();\n        this.$router.replace(this.logoutRedirect).then(() => {\n          this.$router.go(0);\n        });\n        localStorage.clear();\n      }\n    },\n    async hideShowCommunityCards(){\n      let cards = document.querySelectorAll('.community-cards');\n      cards.forEach(item => {\n        const visibility = item.dataset.visibility;\n        if (visibility === \"all\" || (visibility === \"fan-community\" && localStorage.FO === \"F\") || (visibility === \"owner-community\" && localStorage.FO === \"O\")){\n          item.removeAttribute(\"style\");\n        } else {\n          item.remove();\n        }\n      });\n    },\n\n    redirectOnEventDetail(){\n      if (localStorage.getItem(\"redirectLink\") != null) {\n        const url = localStorage.getItem(\"redirectLink\")\n        this.$router.replace(url).then(() => {\n          this.$router.go(0);\n        });\n        localStorage.removeItem(\"redirectLink\")\n      }\n    }\n  },\n  created() {\n    window && window.addEventListener(\"scroll\", this.handleScroll);\n    this.$eventHub.on(\"header:toggleNavigation\", () => {\n      this.isNavigationOpen =\n          this.isNavigationOpen === \"false\" ? \"true\" : \"false\";\n    });\n\n    this.$eventHub.on(\"header:loggedUser\", () => {\n      if (this.isLogged) {\n        this.isModalOpen = true;\n        this.$emit('gigya-modal-overlay', this.isModalOpen);\n      }\n    });\n\n    this.$eventHub.on(\"header:modalClose\", () => {\n      this.isModalOpen = false;\n    });\n\n    this.$eventHub.on(\"header:logout\", () => {\n      this.isModalOpen = false;\n      gigya.accounts.logout();\n      this.deleteAllCookies();\n      localStorage.clear();\n      this.$router.replace(this.logoutRedirect).then(() => {\n        this.$router.go(0);\n      });\n    });\n\n    this.$eventHub.on(\"alert:closeAlert\", () => {\n      this.showPromoAlert = false;\n      document.body.classList.remove(\"has-promo\");\n    });\n\n    // PIAGGIO-8402: integration with convert experiences (https://convert.elevio.help/en/articles/84999)\n    if (this.brandNodeName?.toLowerCase() === 'moto-guzzi' && this.common.currentCountry === \"IT\") {\n      console.log(\"IMPORTING CDN CONVERT EXPERIMENTS!\");\n      let convertScript = document.createElement('script');\n      convertScript.setAttribute('src', 'https://cdn-4.convertexperiments.com/js/10022390-10025600.js');\n      convertScript.setAttribute('type', 'text/javascript');\n      document.head.appendChild(convertScript);\n      console.log(\"APPENDED TO HEAD\");\n    }\n  },\n  destroyed() {\n    window && window.removeEventListener(\"scroll\", this.handleScroll);\n  },\n  mounted() {\n    if (this.common.communityData) {\n      if (this.common.communityData.isCommunityEnabled) {\n        this.registrationRedirect = this.common.communityData.registrationRedirectLink;\n        this.loginRedirect = this.common.communityData.loginRedirectLink;\n        this.forgotPswRedirect = this.common.communityData.forgotPswRedirectLink;\n        this.faqRedirect = this.common.communityData.faqRedirectLink;\n        this.logoutRedirect = this.common.communityData.logoutRedirectLink;\n        this.policyRedirect = this.common.communityData.policyRedirectLink;\n        this.loadGigyaScript(this);\n        this.addingClickOnModal(ctx);\n        if (this.common.communityData.isPrivateTemplate) {\n          this.communityLoginCheck();\n          setTimeout(this.redirectOnEventDetail, 250);\n        }\n      }\n    }\n    // PIAGGIO-8402: integration with convert experiences (https://convert.elevio.help/en/articles/84999)\n    this.$nextTick(function () {\n      if (typeof (window.convert) != 'undefined') {\n        console.log(\"CONVERT NEXT TICK ACTION\")\n        const exp = window.convert.currentData.experiments;\n        for (let expID in exp) {\n          window._conv_q = window._conv_q || [];\n          window._conv_q.push([\"executeExperiment\", expID]);\n        }\n      }\n    })\n    const ctx = this;\n    this.common.actpageTemplate && this.common.actpageTemplate.includes(\"t-model-version\") &&\n    this.$eventHub.on(\"cardPromotion:active-promo\", (targetId) => {\n      if (!this.showPromoAlert) {\n        this.targetId = targetId;\n        ctx.showPromoAlert = true;\n        document.body.classList.add(\"has-promo\");\n      }\n    })\n  },\n\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=e1956dce&\"\nimport script from \"./Header.vue?vue&type=script&lang=js&\"\nexport * from \"./Header.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isButton)?_c('button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(_vm.action),expression:\"action\"}],class:_vm.classes,attrs:{\"type\":_vm.type,\"disabled\":_vm.isDisabled || _vm.isLoading,\"aria-expanded\":_vm.ariaExpandedStatus,\"aria-pressed\":_vm.ariaPressedStatus},on:{\"click\":_vm.onClick}},[(_vm.isIcon)?_c('i',{class:_vm.iconClass,attrs:{\"title\":_vm.text}},[_c('span',{staticClass:\"show-for-sr\",attrs:{\"aria-hidden\":_vm.ariaExpandedStatus}},[_vm._t(\"default\")],2)]):_vm._t(\"default\"),_vm._t(\"visibleContent\")],2):_c('a',{class:_vm.classes,attrs:{\"href\":_vm.href,\"target\":_vm.hrefTarget,\"rel\":_vm.setRelAttr},on:{\"click\":function($event){return _vm.sendAnalyticsData($event)}}},[(_vm.isIcon)?_c('i',{class:_vm.iconClass,attrs:{\"title\":_vm.text}},[_c('span',{staticClass:\"show-for-sr\"},[_vm._t(\"default\")],2)]):_vm._t(\"default\"),_c('span',[_vm._v(_vm._s(_vm.linkText))])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <button\n     v-if=\"isButton\"\n    :type=\"type\"\n    :class=\"classes\"\n    :disabled=\"isDisabled || isLoading\"\n    @click=\"onClick\"\n    :aria-expanded=\"ariaExpandedStatus\"\n    :aria-pressed=\"ariaPressedStatus\"\n    v-b-modal=\"action\"\n  >\n    <i :class=\"iconClass\" :title=\"text\" v-if=\"isIcon\">\n      <span class=\"show-for-sr\" :aria-hidden=\"ariaExpandedStatus\">\n        <slot></slot>\n      </span>\n    </i>\n    <slot v-else></slot>\n    <slot name=\"visibleContent\"></slot>\n  </button>\n  <a v-else\n    :href=\"href\"\n    :class=\"classes\"\n    :target=\"hrefTarget\"\n    :rel=\"setRelAttr\"\n     @click=\"sendAnalyticsData($event)\"\n  >\n    <i :class=\"iconClass\" :title=\"text\" v-if=\"isIcon\">\n      <span class=\"show-for-sr\">\n        <slot></slot>\n      </span>\n    </i>\n    <slot v-else></slot>\n    <span>{{linkText}}</span>\n  </a>\n</template>\n\n<script>\n/**\n - Hello world this is a description\n **/\n\nexport default {\n  name: \"PgButton\",\n  props: {\n    htmlType: {\n      type: String,\n      default: \"button\", //button|submit|reset\n    },\n    styleType: {\n      type: String,\n      default: \"\",\n    },\n    size: {\n      type: String,\n      default: \"\",\n      //required: true\n    },\n    color: {\n      type: String,\n      default: \"\",\n      //required: true\n    },\n    text: {\n      type: String,\n      default: \"\",\n      //required: true\n    },\n    isDisabled: {\n      type: Boolean,\n      default: false,\n    },\n    ariaPressed: {\n      //type: String,\n      default: undefined,\n    },\n    ariaExpanded: {\n      //type: String,\n      default: undefined,\n    },\n    href: {\n      type: String,\n      default: \"\",\n    },\n    linkText: {\n      type: String,\n      default: \"\"\n    },\n    targetBlank: {\n      type: Boolean,\n      default: false,\n    },\n    linkNofollow: {\n      type: Boolean,\n      default: false,\n    },\n    icon: {\n      type: String,\n      default: \"\",\n    },\n    eventName: {\n      type: String,\n      default: \"\",\n    },\n    eventParams: {\n      type: Object,\n    },\n    sectionStyle: {\n      type: String,\n      default: \"\"\n    },\n    selfManageStatus: {\n      type: Boolean,\n    },\n    action: {\n      type: String,\n      default: \"\",\n      required: false,\n    },\n    isLoading: {\n      type: Boolean,\n      default: false,\n    },\n    analyticsData: {\n      type: Object,\n      default: () => {\n      }\n    }\n  },\n\n  data: function() {\n    const ctx = this;\n    return {\n      relAttr: undefined,\n      nofollow: undefined,\n      //ariaExpandedStatus: ctx.ariaExpanded,\n      //ariaPressedStatus: ctx.ariaPressed\n\n      ariaExpandedStatus:\n        ctx.ariaExpanded == undefined\n          ? ctx.ariaExpanded\n          : ctx.ariaExpanded.toString(),\n      ariaPressedStatus:\n        ctx.ariaPressed == undefined\n          ? ctx.ariaPressed\n          : ctx.ariaPressed.toString(),\n    };\n  },\n\n  watch: {\n    ariaExpanded: function(newVal, oldVal) {\n      if (!this.selfManageStatus) {\n        this.ariaExpandedStatus = newVal;\n      }\n    },\n    ariaPressed: function(newVal, oldVal) {\n      if (!this.selfManageStatus) {\n        this.ariaPressedStatus = newVal;\n      }\n    },\n  },\n\n  computed: {\n    classes() {\n      return [\n        \"button\",\n        this.styleType ? \"button--\" + this.styleType : \"\",\n        this.size ? \"button--\" + this.size : \"\",\n        this.color ? \"button--\" + this.color : \"\",\n        this.sectionStyle === \"secondary\" ? \"secondary-bg\" : \"\",\n        this.isLoading ? \"is-loading\" : \"\",\n      ];\n    },\n    isButton() {\n      return (\n        this.href === \"\" ||\n        (this.action !== \"\" && this.action !== \"no-selection\")\n      );\n    },\n    isIcon() {\n      return this.styleType == \"icon\";\n    },\n    iconClass() {\n      return this.icon;\n    },\n    type() {\n      return this.htmlType !== \"\" ? this.htmlType : false;\n    },\n    hrefTarget() {\n      return this.targetBlank ? \"_blank\" : undefined;\n    },\n    setRelAttr() {\n      let attribute;\n      if (this.linkNofollow) {\n        attribute = \"nofollow \";\n      }\n      if (this.targetBlank) {\n        attribute += \"noopener\";\n      }\n      return attribute ? (this.relAttr = attribute) : undefined;\n    },\n  },\n\n  methods: {\n    async onClick() {\n      //\n      if (this.eventParams) {\n        console.log(\"Event params: \", this.eventParams);\n        console.log(\"Event name: \", this.eventName);\n      }\n      this.$eventHub.emit(this.eventName, this.eventParams);\n\n      if (this.selfManageStatus) {\n        switch (this.ariaExpandedStatus) {\n          case \"true\":\n            this.ariaExpandedStatus = \"false\";\n            break;\n          case \"false\":\n            this.ariaExpandedStatus = \"true\";\n            break;\n        }\n\n        switch (this.ariaPressedStatus) {\n          case \"true\":\n            this.ariaPressedStatus = \"false\";\n            break;\n          case \"false\":\n            this.ariaPressedStatus = \"true\";\n            break;\n        }\n      }\n\n      if (this.analyticsData) {\n        this.$analytics.pushEvent(this.analyticsData.evCategory, this.analyticsData.evAction, this.analyticsData.evLabel);\n      }\n    },\n    sendAnalyticsData(ev) {\n      if (this.analyticsData && !this.targetBlank) {\n        if (window.google_tag_manager) ev.preventDefault();\n        this.$analytics.pushEvent(this.analyticsData.evCategory, this.analyticsData.evAction, this.analyticsData.evLabel, this.href);\n      } else if (this.analyticsData && this.targetBlank) {\n        this.$analytics.pushEvent(this.analyticsData.evCategory, this.analyticsData.evAction, this.analyticsData.evLabel);\n      }\n    }\n  },\n};\n</script>\n\n<style scoped>\n#root {\n  background-color: lightgray;\n  padding: 2rem;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Button.vue?vue&type=template&id=1be28890&scoped=true&\"\nimport script from \"./Button.vue?vue&type=script&lang=js&\"\nexport * from \"./Button.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Button.vue?vue&type=style&index=0&id=1be28890&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1be28890\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"tooltip\",attrs:{\"tabindex\":\"0\",\"role\":\"tooltip\"}},[_c('i',{staticClass:\"icon-info-fill\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"tooltip__content\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span class=\"tooltip\" tabindex=\"0\" role=\"tooltip\">\n    <i class=\"icon-info-fill\" aria-hidden=\"true\"></i>\n    <span class=\"tooltip__content\">\n      <slot></slot>\n    </span>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"pg-tooltip\",\n  props: {\n    text: {\n      type: String,\n      default: \"\"\n    }\n  }\n};\n</script>\n\n<style>\n.sb {\n  padding: 50px;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=0ada88bc&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{ref:\"allFocusable\",staticClass:\"navigation\",class:{ 'is-visible': _vm.visible || _vm.isEditInterface },attrs:{\"id\":\"navigation\",\"aria-label\":_vm.secondaryAriaLabel}},[_c('div',{staticClass:\"graphic-line\"}),_c('div',{staticClass:\"navigation__structure-div\"},[_c('div',{staticClass:\"navigation__search\"}),_c('div',{staticClass:\"main-navigation-index\",attrs:{\"aria-label\":_vm.$msg('common.secondary.navigation-modal-aria-label')}},[_c('a',{staticClass:\"main-navigation-description show-on-focus\",attrs:{\"href\":\"#\"}},[_c('msg',{attrs:{\"id\":\"common.secondary.navigation-modal-text\"}})],1)]),_c('div',{staticClass:\"navigation__change-lan-cou show-for-large\"},[_c('change-language-country',{attrs:{\"uuid\":'inMainNavigation',\"brandName\":_vm.common.brandName,\"brandNodeName\":_vm.common.brandNodeName,\"site-service-param\":_vm.common.siteServiceParam,\"languages\":_vm.common.changeLanguages,\"currentLocale\":_vm.common.currentLocale,\"disableChangeLang\":_vm.common.disableChangeLang,\"currentCountry\":_vm.common.currentCountry,\"show-flags\":_vm.common.showFlags}})],1),_c('div',{staticClass:\"navigation__content-wrapper\"},[_c('div',{staticClass:\"navigation__content\"},[_c('div',{staticClass:\"navigation__menu\"},[_c('ul',{attrs:{\"aria-label\":\"Main navigation\"}},_vm._l((_vm.menuItemsObj),function(item,index){return _c('li',{key:item.uuid},[(item.nestedItems || item['menu-tabs-area'])?_c('pg-button',{class:'navigation__menu__item',attrs:{\"aria-expanded\":_vm.activeElement(item.uuid, index).toString(),\"event-name\":\"expandNested\",\"event-params\":{ uuid: item.uuid },\"aria-controls\":'nav-submenu-' + item.uuid,\"analytics-data\":_vm.analyticsData(item)}},[_vm._v(\" \"+_vm._s(item.label)+\" \"),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})]):_c('pg-button',{class:'navigation__menu__item',attrs:{\"href\":_vm._f(\"mgnlLink\")(item.url,'url'),\"targetBlank\":!!item.onBlank,\"analytics-data\":_vm.analyticsData(item)}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])],1)}),0)]),(_vm.hasHighlightItems)?_c('div',{staticClass:\"navigation__highlights\",class:_vm.isHighlightOrBackgroundVisible},_vm._l((_vm.highlightItems),function(item){return _c('card-highlight',{key:item.uuid,attrs:{\"href\":_vm._f(\"mgnlLink\")(item.link,'url'),\"text\":item.text,\"cta\":item.label,\"targetBlank\":item.targetBlank,\"img\":_vm._f(\"mgnlMedia\")(item.image,'url')}})}),1):(_vm.hasPosterImage)?_c('div',{staticClass:\"navigation__background\",class:_vm.isHighlightOrBackgroundVisible},[_c('div',[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.posterImage,'url')}})],1)]):_vm._e(),_c('div',{staticClass:\"navigation__change-lan-cou hide-for-large\"},[_c('change-language-country',{attrs:{\"uuid\":'inMainNavigationMenu',\"brandName\":_vm.common.brandName,\"brandNodeName\":_vm.common.brandNodeName,\"site-service-param\":_vm.common.siteServiceParam,\"languages\":_vm.common.changeLanguages,\"currentLocale\":_vm.common.currentLocale,\"disableChangeLang\":_vm.common.disableChangeLang,\"currentCountry\":_vm.common.currentCountry,\"show-flags\":_vm.common.showFlags}})],1),(!_vm.isEditInterface)?_vm._l((_vm.menuItemsObj),function(item,index){return _c('main-navigation-item',{key:item.uuid,attrs:{\"item\":item,\"index\":index,\"highlightItems\":item.highlightItems,\"posterImage\":item.posterImage,\"isActiveElement\":_vm.activeElement(item.uuid, index),\"productCardConf\":_vm.common.productCardConf}})}):[_vm._t(\"default\")]],2)])]),_c('div',{staticClass:\"close-main-navigation\",attrs:{\"aria-label\":_vm.$msg('common.secondary.navigation-modal-close')}},[(!_vm.hideNavigation)?_c('pg-button',{staticClass:\"show-on-focus\",attrs:{\"selfManageStatus\":false,\"eventName\":\"header:toggleNavigation\",\"styleType\":\"icon\",\"aria-expanded\":_vm.isNavigationOpen,\"icon\":\"icon-menu\",\"aria-controls\":\"navigation\"}},[_c('msg',{attrs:{\"id\":\"common.header.hamburger-menu.aria\"}})],1):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <nav\n      id=\"navigation\"\n      class=\"navigation\"\n      :class=\"{ 'is-visible': visible || isEditInterface }\"\n      :aria-label=\"secondaryAriaLabel\"\n      ref=\"allFocusable\"\n  >\n    <div class=\"graphic-line\"><!-- --></div>\n    <div class=\"navigation__structure-div\">\n        <div class=\"navigation__search\">\n          <!-- search -->\n        </div>\n      <div class=\"main-navigation-index\" :aria-label=\"$msg('common.secondary.navigation-modal-aria-label')\">\n        <a href=\"#\" class=\"main-navigation-description show-on-focus\"><msg id=\"common.secondary.navigation-modal-text\" /></a>\n      </div>\n        <div class=\"navigation__change-lan-cou show-for-large\">\n          <change-language-country\n              :uuid=\"'inMainNavigation'\"\n              :brandName=\"common.brandName\"\n              :brandNodeName=\"common.brandNodeName\"\n              :site-service-param=\"common.siteServiceParam\"\n              :languages=\"common.changeLanguages\"\n              :currentLocale=\"common.currentLocale\"\n              :disableChangeLang=\"common.disableChangeLang\"\n              :currentCountry=\"common.currentCountry\"\n              :show-flags=\"common.showFlags\"\n          />\n        </div>\n        <div class=\"navigation__content-wrapper\">\n          <div class=\"navigation__content\">\n            <div class=\"navigation__menu\">\n              <ul aria-label=\"Main navigation\">\n                <li v-for=\"(item, index) in menuItemsObj\" v-bind:key=\"item.uuid\">\n                  <pg-button\n                      :class=\"'navigation__menu__item'\"\n                      :aria-expanded=\"activeElement(item.uuid, index).toString()\"\n                      event-name=\"expandNested\"\n                      :event-params=\"{ uuid: item.uuid }\"\n                      :aria-controls=\"'nav-submenu-' + item.uuid\"\n                      :analytics-data=\"analyticsData(item)\"\n                      v-if=\"item.nestedItems || item['menu-tabs-area']\"\n                  >\n                    {{ item.label }}\n                    <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n                  </pg-button>\n                  <pg-button\n                      :class=\"'navigation__menu__item'\"\n                      :href=\"item.url | mgnlLink('url')\"\n                      :targetBlank=\"!!item.onBlank\"\n                      :analytics-data=\"analyticsData(item)\"\n                      v-else\n                  >\n                    {{ item.label }}\n                  </pg-button>\n                </li>\n              </ul>\n            </div>\n            <div\n                class=\"navigation__highlights\"\n                :class=\"isHighlightOrBackgroundVisible\"\n                v-if=\"hasHighlightItems\"\n            >\n              <card-highlight\n                  :href=\"item.link | mgnlLink('url')\"\n                  :text=\"item.text\"\n                  :cta=\"item.label\"\n                  :targetBlank=\"item.targetBlank\"\n                  :img=\"item.image | mgnlMedia('url')\"\n                  v-for=\"item in highlightItems\"\n                  :key=\"item.uuid\"\n              ></card-highlight>\n            </div>\n            <div\n                class=\"navigation__background\"\n                :class=\"isHighlightOrBackgroundVisible\"\n                v-else-if=\"hasPosterImage\"\n            >\n              <div>\n                <pg-image :lazy-src=\"posterImage | mgnlMedia('url')\"></pg-image>\n              </div>\n            </div>\n            <div class=\"navigation__change-lan-cou hide-for-large\">\n              <change-language-country\n                  :uuid=\"'inMainNavigationMenu'\"\n                  :brandName=\"common.brandName\"\n                  :brandNodeName=\"common.brandNodeName\"\n                  :site-service-param=\"common.siteServiceParam\"\n                  :languages=\"common.changeLanguages\"\n                  :currentLocale=\"common.currentLocale\"\n                  :disableChangeLang=\"common.disableChangeLang\"\n                  :currentCountry=\"common.currentCountry\"\n                  :show-flags=\"common.showFlags\"\n              />\n            </div>\n            <template v-if=\"!isEditInterface\">\n              <main-navigation-item\n                  v-for=\"(item, index) in menuItemsObj\"\n                  :key=\"item.uuid\"\n                  :item=\"item\"\n                  :index=\"index\"\n                  :highlightItems=\"item.highlightItems\"\n                  :posterImage=\"item.posterImage\"\n                  :isActiveElement=\"activeElement(item.uuid, index)\"\n                  :productCardConf=\"common.productCardConf\"\n              />\n            </template>\n            <template v-else>\n              <slot></slot>\n            </template>\n          </div>\n        </div>\n      </div>\n    <div class=\"close-main-navigation\" :aria-label=\"$msg('common.secondary.navigation-modal-close')\">\n      <pg-button\n          v-if=\"!hideNavigation\"\n          :selfManageStatus=\"false\"\n          eventName=\"header:toggleNavigation\"\n          styleType=\"icon\"\n          class=\"show-on-focus\"\n          :aria-expanded=\"isNavigationOpen\"\n          icon=\"icon-menu\"\n          aria-controls=\"navigation\"\n      >\n        <msg id=\"common.header.hamburger-menu.aria\" />\n      </pg-button>\n    </div>\n  </nav>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport CardHighlight from \"../Card-Highlight/Card-Highlight.vue\";\nimport ChangeLanguageCountry from \"../ChangeLanguageCountry/ChangeLanguageCountry.vue\";\nimport MainNavigationItem from \"./MainNavigationItem\";\n\nexport default {\n  name: \"MainNavigation\",\n\n  components: {\n    PgButton,\n    PgImage,\n    ChangeLanguageCountry,\n    CardHighlight,\n    MainNavigationItem\n  },\n\n  data() {\n    return {\n      visible: false,\n      currentActive: null,\n      isNavigationOpen: true,\n    };\n  },\n\n  props: {\n    common: {\n      type: Object,\n    },\n    menuItemsObj: {\n      type: Array,\n      default: () => [],\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({}),\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false,\n    },\n    hideNavigation: {\n      type: Boolean,\n      default: false\n    },\n  },\n\n  computed: {\n    activeElement() {\n      const ctx = this;\n      return function (uuid, index) {\n        let conditionEquality = ctx.currentActive === uuid;\n        let conditionDefault =\n            ctx.highlightItems.length == 0 &&\n            Object.keys(ctx.posterImage).length == 0 &&\n            !ctx.currentActive &&\n            this.$mq == \"large\" &&\n            index == 0;\n        return conditionEquality || conditionDefault;\n      };\n    },\n\n    isHighlightOrBackgroundVisible() {\n      return this.currentActive === null ? \"is-active\" : \"\";\n    },\n\n    hasHighlightItems() {\n      return this.highlightItems && this.highlightItems.length > 0;\n    },\n\n    hasPosterImage() {\n      return this.posterImage && Object.keys(this.posterImage).length > 0;\n    },\n    secondaryAriaLabel() {\n      return this.$msg('common.secondary.aria-label.text') //TODO add fallback in case msg not configured\n    }\n  },\n  methods: {\n    isHidden(el) {\n      if (\n          window.getComputedStyle(el).visibility === \"hidden\" ||\n          el.offsetParent === null\n      ) {\n        return true;\n      }\n    },\n    handleKeyboard(event) {\n      // A11Y KEYBOARD ESC + MODAL TRAP\n\n      const allFocusableList = this.$refs.allFocusable.querySelectorAll(\n          'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n      );\n\n      let allFocusableListVisible = [];\n\n      allFocusableList.forEach((element) => {\n        if (!this.isHidden(element)) {\n          allFocusableListVisible.push(element);\n        }\n      });\n\n      const last = allFocusableListVisible.length - 1;\n\n      /* console.log(\n        \"handleKeyboard\",\n        event.key,\n        event.target,\n        firstfocusableList[0],\n        lastfocusableList[last]\n      );*/\n\n      if (event.key === \"Escape\") {\n        //this.$modal.hide(\"mymyodal\")\n        if (this.visible) {\n          this.$eventHub.emit(\"header:toggleNavigation\");\n        }\n      }\n\n      /*console.log(\n        \"first\",\n        allFocusableListVisible[0],\n        \"last\",\n        allFocusableListVisible[last]\n      );\n      */\n\n      if (\n          event.key === \"Tab\" &&\n          event.shiftKey === false &&\n          event.target === allFocusableListVisible[last]\n      ) {\n        event.preventDefault();\n        allFocusableListVisible[0].focus();\n      } else if (\n          event.key === \"Tab\" &&\n          event.shiftKey === true &&\n          event.target === allFocusableListVisible[0]\n      ) {\n        event.preventDefault();\n        allFocusableListVisible[last].focus();\n      }\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'menu',\n        evAction: 'menu_principale',\n        evLabel: el.label.trim()\n      }\n    }\n  },\n  created() {\n    document.addEventListener(\"keydown\", this.handleKeyboard);\n    const ctx = this;\n\n    this.$eventHub.on(\"header:toggleNavigation\", function () {\n      const bodyEl = document.body;\n      const inertEls = document.querySelectorAll(\"#mainContent, #footer\");\n\n      ctx.visible = !ctx.visible;\n\n      ctx.visible\n          ? bodyEl.classList.add(\"hidden-scroll\", \"main-navigation-open\")\n          : bodyEl.classList.remove(\"hidden-scroll\", \"main-navigation-open\");\n\n      for (var i = 0; i < inertEls.length; i++) {\n        var inertEl = inertEls[i];\n\n        ctx.visible\n            ? inertEl.setAttribute(\"hidden\", true)\n            : inertEl.removeAttribute(\"hidden\");\n      }\n    });\n\n    this.$eventHub.on(\"expandNested\", function (eventParams) {\n      //console.log(eventParams);\n      const navigationEl = document.getElementById(\"navigation\");\n\n      let active = eventParams && eventParams.uuid;\n      ctx.currentActive = ctx.currentActive != active ? active : null;\n\n      if (ctx.$mq == \"small\") {\n        ctx.currentActive\n            ? navigationEl.classList.add(\n            \"overflow-hidden\",\n            \"main-navigation-open\"\n            )\n            : navigationEl.classList.remove(\n            \"overflow-hidden\",\n            \"main-navigation-open\"\n            );\n      }\n    });\n\n  },\n\n  destroyed() {\n    document.removeEventListener(\"keyup\", this.close);\n  },\n};\n</script>\n<style scoped>\n#root > .navigation {\n  display: flex;\n  top: 0;\n  height: 100vh;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainNavigation.vue?vue&type=template&id=4d4e764c&scoped=true&\"\nimport script from \"./MainNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./MainNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MainNavigation.vue?vue&type=style&index=0&id=4d4e764c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4d4e764c\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-highlight-v2\",on:{\"click\":_vm.goToLink}},[_c('div',{staticClass:\"card-highlight-container\"},[_c('div',{class:['card-highlight-v2__img', {'overlay-active' : _vm.gradient}]},[_c('pg-image',{attrs:{\"lazy-src\":_vm.img}})],1),_c('div',{staticClass:\"card-highlight-v2__content\"},[(_vm.text)?_c('h2',{staticClass:\"card-highlight__text\"},[_vm._v(_vm._s(_vm.text))]):_vm._e(),(_vm.cta)?_c('a',{attrs:{\"href\":_vm.href,\"target\":_vm.targetBlank === true ? '_blank' : '_self'}},[_c('h3',{staticClass:\"text--heading-s text--primary card-highlight__cta\"},[_vm._v(_vm._s(_vm.cta))]),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"card-highlight-v2\" @click=\"goToLink\">\n    <div class=\"card-highlight-container\">\n      <div :class=\"['card-highlight-v2__img', {'overlay-active' : gradient}]\">\n        <pg-image :lazy-src=\"img\"></pg-image>\n      </div>\n      <div class=\"card-highlight-v2__content\">\n        <h2 v-if=\"text\" class=\"card-highlight__text\">{{ text }}</h2>\n        <a v-if=\"cta\" :href=\"href\" :target=\"targetBlank === true ? '_blank' : '_self'\">\n          <h3 class=\"text--heading-s text--primary card-highlight__cta\">{{ cta }}</h3>\n          <i aria-hidden=\"true\" class=\"icon-arrow-dx\"></i>\n        </a>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport router from '@wl-vue-utils/router.js'\n\nexport default {\n  router: router,\n  name: \"CardHighlightV2\",\n  components: {\n    PgButton,\n    PgImage,\n  },\n  props: {\n    href: {\n      type: String,\n      default: \"\"\n    },\n    img: {\n      type: String,\n      default: \"\"\n    },\n    text: {\n      type: String,\n      default: \"\"\n    },\n    cta: {\n      type: String,\n      default: \"\"\n    },\n    targetBlank: {\n      type: Boolean,\n      default: false\n    },\n    gradient: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  methods: {\n    goToLink() {\n      this.$router.replace(this.href).then(() => {\n        this.$router.go(0);\n      })\n    }\n  },\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CardHighlightV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CardHighlightV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CardHighlightV2.vue?vue&type=template&id=4a962a05&\"\nimport script from \"./CardHighlightV2.vue?vue&type=script&lang=js&\"\nexport * from \"./CardHighlightV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigation.vue?vue&type=style&index=0&id=4d4e764c&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigation.vue?vue&type=style&index=0&id=4d4e764c&scoped=true&lang=css&\"","import Vue from 'vue'\nimport VueRouter from 'vue-router'\n\nVue.use(VueRouter)\n\n//routes from mgnl\nfunction fetchMgnlRoutes() {\n\n    return [\n        { path: 'CardsWrapper', component: () => import('@wl-components/CardWrapper/CardsWrapper.vue') },\n        { path: 'CardsWrapperCommunity', component: () => import('@wl-components/CardWrapperCommunity/CardsWrapperCommunity.vue') },\n        { path: 'CardHighlightV2', component: () => import('@wl-components/MainNavigationV2/CardHighlightV2.vue') },\n        { path: 'CarouselVehiclePremium', component: () => import('@wl-components/CarouselVehiclePremium/CarouselVehiclePremium.vue') },\n        { path: 'Editorial', component: () => import('@wl-components/Editorial/Editorial.vue') },\n        { path: 'FamilyShowcase', component: () => import('@wl-components/FamilyShowcase/FamilyShowcase.vue') },\n        { path: 'HomepageOverlay', component: () => import('@wl-components/HomepageOverlay/HomepageOverlay.vue') },\n        { path: 'Header', component: () => import('@wl-components/Header/Header.vue') },\n        { path: 'HeaderV2', component: () => import('@wl-components/HeaderV2/HeaderV2.vue') },\n        { path: 'ListingEvents', component: () => import('@wl-components/ListingEvents/ListingEvents.vue') },\n        { path: 'ProductPresentationImmersive', component: () => import('@wl-components/ProductPresentationImmersive/ProductPresentationImmersive.vue') },\n        { path: 'RecallCampaign', component: () => import('@wl-components/RecallCampaign/RecallCampaign.vue') },\n        { path: 'SendVNKeyboard', component: () => import('@wl-components/SendVINKeyboard/SendVINKeyboard.vue') },\n        { path: 'IframeDlMap', component: () => import('@wl-components/IframeDlMap/IframeDlMap.vue') },\n        { path: 'FiltersBar', component: () => import('@wl-components/Listing/FiltersBar.vue') },\n        { path: 'DealerLocatorDetails', component: () => import('@wl-components/DealerLocatorDetail/DealerLocatorDetail.vue') },\n    ];\n}\n\nconst router = new VueRouter({\n    routes: fetchMgnlRoutes(),\n    mode: 'history'\n});\n\nrouter.beforeEach((to, from, next) => {\n    // Get the target URL, and handle both relative and absolute URLs\n    let targetUrl = to.fullPath;\n    console.log('targetUrl',targetUrl);\n    const match = targetUrl.match(/(https?:\\/\\/|www\\.)/);\n    if (match && match.index !== undefined) {\n        // Prendi la parte dell'URL a partire da \"http\" o \"www\"\n        targetUrl = targetUrl.slice(match.index);\n        console.log('targetUrl',targetUrl);\n\n        if (targetUrl.startsWith('www')){\n            targetUrl = 'https://' + targetUrl;\n        }\n\n        window.location.href = targetUrl;\n    } else {\n         next(); // Navigazione interna\n    }\n\n\n  });\n\nexport default router;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"NavMenuNested\",class:[\"navigation-v2__menu-nested v2\", { open: _vm.isActiveElement }],style:(_vm.setHeight),attrs:{\"id\":'nav-submenu-' + _vm.item.uuid}},[(_vm.secondLevelNavigationComponent)?_c(_vm.secondLevelNavigationComponent,{key:_vm.item.uuid,tag:\"component\",attrs:{\"item\":_vm.item,\"highlightItems\":_vm.item.highlightItems,\"posterImage\":_vm.item.posterImage,\"productCardConf\":_vm.productCardConf}}):(_vm.isEditInterface && !_vm.item.nestedItems)?_c('div',[(_vm.item.link)?_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.item.link,'url')}},[_vm._v(_vm._s(_vm.item.label))]):_c('h2',{staticClass:\"navigation__menu-nested__title\"},[_vm._v(_vm._s(_vm.item.label))])],1):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"navigation__menu-nested-container\"},[_c('div',{class:_vm.nestedClasses(_vm.item.productSelect)},[_c('pg-button',{staticClass:\"navigation-v2__menu-nested__back\",attrs:{\"aria-expanded\":false,\"event-params\":{ uuid: _vm.item.uuid },\"event-name\":\"expandNestedV2\"}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_c('h2',{staticClass:\"navigation__menu-nested__back-label\"},[_vm._v(_vm._s(_vm.item.label))])]),(_vm.item.nestedItems.length > 0)?_c('ul',{staticClass:\"nested-items-list\",class:[_vm.getNestedItemsLength(_vm.item.nestedItems.length), {'view-all-active' : _vm.viewAllLink}],attrs:{\"aria-label\":_vm.item.label}},_vm._l((_vm.item.nestedItems),function(subitem){return _c('li',{key:subitem.uuid},[_c('a',{staticClass:\"navigation__menu-nested__item\",attrs:{\"href\":_vm._f(\"mgnlLink\")(subitem.url,'url'),\"target\":_vm.target(subitem.onBlank),\"rel\":_vm.rel(subitem.noFollow, subitem.onBlank),\"linkNofollow\":subitem.noFollow}},[_vm._v(_vm._s(subitem.label))]),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})])}),0):_vm._e(),(_vm.viewAllLink)?_c('a',{staticClass:\"navigation__menu-nested__view-all-link\",attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.item.viewAllLink,'url')}},[_c('msg',{attrs:{\"id\":\"common.header-v2.view-all-links\"}}),_c('i',{staticClass:\"icon-arrow-dx\",attrs:{\"aria-hidden\":\"true\"}})],1):_vm._e()],1),(_vm.hasHighlightItems)?_c('div',{staticClass:\"navigation__highlights-v2\"},_vm._l((_vm.item.highlightItems),function(hlitem){return _c('card-highlight-v2',{key:hlitem.uuid,class:hlitem.ctaLinkStyle,attrs:{\"href\":_vm._f(\"mgnlLink\")(hlitem.link,'url'),\"text\":hlitem.text,\"cta\":hlitem.label,\"img\":_vm._f(\"mgnlMedia\")(hlitem.image,'url'),\"gradient\":hlitem.imageGradient}})}),1):(_vm.hasPosterImage)?_c('div',{staticClass:\"navigation__background\"},[_c('div',[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.posterImage,'url')}})],1)]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"navigation__menu-nested-container\">\n    <div :class=\"nestedClasses(item.productSelect)\">\n      <pg-button\n          :aria-expanded=\"false\"\n          :event-params=\"{ uuid: item.uuid }\"\n          class=\"navigation-v2__menu-nested__back\"\n          event-name=\"expandNestedV2\"\n      >\n        <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n        <h2 class=\"navigation__menu-nested__back-label\">{{ item.label }}</h2>\n      </pg-button>\n      <!--h2 class=\"navigation__menu-nested__title\">{{item.label}}</h2-->\n\n      <ul class=\"nested-items-list\" :class=\"[getNestedItemsLength(item.nestedItems.length), {'view-all-active' : viewAllLink}]\" :aria-label=\"item.label\" v-if=\"item.nestedItems.length > 0\">\n        <li v-for=\"subitem in item.nestedItems\" v-bind:key=\"subitem.uuid\">\n          <a\n              :href=\"subitem.url | mgnlLink('url')\"\n              :target=\"target(subitem.onBlank)\"\n              :rel=\"rel(subitem.noFollow, subitem.onBlank)\"\n              :linkNofollow=\"subitem.noFollow\"\n              class=\"navigation__menu-nested__item\"\n          >{{ subitem.label }}</a>\n          <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n        </li>\n      </ul>\n      <a\n          v-if=\"viewAllLink\"\n          :href=\"item.viewAllLink | mgnlLink('url')\"\n          class=\"navigation__menu-nested__view-all-link\"\n      >\n        <msg :id=\"`common.header-v2.view-all-links`\"></msg>\n        <i class=\"icon-arrow-dx\" aria-hidden=\"true\"></i>\n      </a>\n    </div>\n    <div v-if=\"hasHighlightItems\" class=\"navigation__highlights-v2\">\n      <card-highlight-v2\n          v-for=\"hlitem in item.highlightItems\"\n          :class=\"hlitem.ctaLinkStyle\"\n          :href=\"hlitem.link | mgnlLink('url')\"\n          :text=\"hlitem.text\"\n          :cta=\"hlitem.label\"\n          :img=\"hlitem.image | mgnlMedia('url')\"\n          :key=\"hlitem.uuid\"\n          :gradient=\"hlitem.imageGradient\"\n      ></card-highlight-v2>\n    </div>\n    <div v-else-if=\"hasPosterImage\" class=\"navigation__background\">\n      <div>\n        <pg-image :lazy-src=\"posterImage | mgnlMedia('url')\"></pg-image>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport CardHighlightV2  from \"./CardHighlightV2.vue\";\n\nexport default {\n  name: \"NavigationItemEditorialV2\",\n\n  components: {\n    PgButton,\n    CardHighlightV2,\n    PgImage\n  },\n\n  props: {\n    item: {\n      type: Object,\n      default: () => {}\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {}\n    },\n    index: {\n      type: Number,\n      default: 0\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    }\n  },\n  computed: {\n    viewAllLink() {\n      return this.item.viewAllLink !== undefined && this.item.viewAllLink.url.length !== 0;\n    },\n    isMobile() {\n      return window.screen.width <= 1024;\n    },\n    hasHighlightItems() {\n      return this.highlightItems && this.highlightItems.length > 0;\n    },\n    hasPosterImage() {\n      return this.posterImage && Object.keys(this.posterImage).length > 0;\n    }\n  },\n\n  methods: {\n    getNestedItemsLength(nestedItemsLength) {\n      if(nestedItemsLength <= 4) {\n        return \"small\";\n      } else if (nestedItemsLength <= 6) {\n        return \"medium\";\n      } else if (nestedItemsLength <= 8) {\n        return \"long\";\n      } else if (nestedItemsLength <= 10) {\n        return \"x-long\";\n      } else {\n        return \"\";\n      }\n    },\n    target: function(isBlank) {\n      return isBlank ? \"_blank\" : \"_self\";\n    },\n    rel: function(noFollow, targetBlank) {\n      const attribute = targetBlank ? \"noopener \" : \"\";\n\n      return noFollow ? attribute + \"nofollow\" : attribute;\n    },\n    nestedClasses: function(isProduct) {\n      return [\"navigation__menu-nested__menu\", isProduct ? \"navigation__menu-nested__menu--product\" : \"\"];\n    },\n    analyticsData(el) {\n      return {\n        evCategory: \"menu\",\n        evAction: \"menu_principale\",\n        evLabel: `${this.item.label || \"No Campaign\"} | ${el.name}`\n      };\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationItemEditorialV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationItemEditorialV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavigationItemEditorialV2.vue?vue&type=template&id=91b13234&\"\nimport script from \"./NavigationItemEditorialV2.vue?vue&type=script&lang=js&\"\nexport * from \"./NavigationItemEditorialV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"product-list-nested\"},[_c('div',{ref:\"navigationNested\",staticClass:\"navigation-v2__menu-nested__menu navigation__menu-nested__menu--product\"},[(!_vm.isNavTabsChild)?[_c('pg-button',{staticClass:\"navigation-v2__menu-nested__back\",attrs:{\"aria-expanded\":false,\"event-name\":\"expandNestedV2\",\"event-params\":{uuid: _vm.item.uuid}}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_c('h2',{staticClass:\"navigation__menu-nested__back-label\"},[_vm._v(_vm._s(_vm.item.label))])])]:_vm._e(),_c('div',{staticClass:\"listing\"},[_c('ul',{ref:\"listingItems\",staticClass:\"listing__items\",attrs:{\"aria-label\":_vm.item.label}},_vm._l((_vm.itemsToShow(_vm.item.nestedItems)),function(subitem){return _c('li',{key:subitem.uuid,staticClass:\"listing__item\"},[_c('card-product',{attrs:{\"item\":subitem,\"productCardConf\":_vm.productCardConf,\"analyticsData\":_vm.analyticsData(subitem)}})],1)}),0)])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"product-list-nested\">\n    <div class=\"navigation-v2__menu-nested__menu navigation__menu-nested__menu--product\" ref=\"navigationNested\">\n      <template v-if=\"!isNavTabsChild\">\n        <pg-button\n            class=\"navigation-v2__menu-nested__back\"\n            :aria-expanded=\"false\"\n            event-name=\"expandNestedV2\"\n            :event-params=\"{uuid: item.uuid}\"\n        >\n          <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n          <h2 class=\"navigation__menu-nested__back-label\">{{ item.label }}</h2>\n        </pg-button>\n      </template>\n      <div class=\"listing\">\n        <ul :aria-label=\"item.label\" class=\"listing__items\" ref=\"listingItems\">\n          <li\n              v-for=\"subitem in itemsToShow(item.nestedItems)\"\n              v-bind:key=\"subitem.uuid\"\n              class=\"listing__item\"\n          >\n            <card-product\n                :item=\"subitem\"\n                :productCardConf=\"productCardConf\"\n                :analyticsData=\"analyticsData(subitem)\"\n            ></card-product>\n          </li>\n        </ul>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport CardProduct from \"../Card-Product/Card-Product.vue\";\nimport PgImage from \"../Image/Image.vue\";\n\nexport default {\n  name: \"NavigationProductListV2\",\n\n  components: {\n    PgButton,\n    PgImage,\n    CardProduct\n  },\n\n  props: {\n    item: {\n      type: Object\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {\n      }\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    },\n    isNavTabsChild: {\n      type: Boolean,\n      default: false\n    }\n  },\n  methods: {\n    itemsToShow: function (items) {\n      return items.slice(0, 16);\n    },\n    target: function (isBlank) {\n      return isBlank ? \"_blank\" : \"_self\";\n    },\n    rel: function (noFollow, targetBlank) {\n      const attribute = targetBlank ? \"noopener \" : \"\";\n\n      return noFollow ? attribute + \"nofollow\" : attribute;\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'menu',\n        evAction: 'menu_principale',\n        evLabel: `${this.item.label || 'No Campaign'} | ${el.name}`\n      }\n    }\n  },\n  computed: {\n    hasHighlightItems() {\n      return this.highlightItems && this.highlightItems.length > 0;\n    },\n    hasPosterImage() {\n      return this.posterImage && Object.keys(this.posterImage).length > 0;\n    },\n    isMobile() {\n      return window.screen.width <= 1024;\n    },\n  },\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationProductListV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationProductListV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavigationProductListV2.vue?vue&type=template&id=204005db&\"\nimport script from \"./NavigationProductListV2.vue?vue&type=script&lang=js&\"\nexport * from \"./NavigationProductListV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"[`navigation-v2__menu-nested v2`, { open: isActiveElement }]\" :id=\"'nav-submenu-' + item.uuid\"\n       ref=\"NavMenuNested\"\n       :style=\"setHeight\"\n  >\n    <!-- eslint-disable vue/require-component-is -->\n    <component\n        :is=\"secondLevelNavigationComponent\"\n        v-if=\"secondLevelNavigationComponent\"\n        :key=\"item.uuid\"\n        :item=\"item\"\n        :highlightItems=\"item.highlightItems\"\n        :posterImage=\"item.posterImage\"\n        :productCardConf=\"productCardConf\"\n    />\n    <!-- eslint-enable vue/require-component-is -->\n    <div v-else-if=\"isEditInterface && !item.nestedItems\">\n      <pg-button v-if=\"item.link\" :href=\"item.link | mgnlLink('url')\">{{ item.label }}</pg-button>\n      <h2 v-else class=\"navigation__menu-nested__title\">{{ item.label }}</h2>\n    </div>\n    <slot></slot>\n    <!--div :class=\"['navigation-v2__content-nested-overlay', {'visible' : activeOverlay}]\"></div-->\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport NavigationItemEditorialV2 from \"./NavigationItemEditorialV2.vue\";\nimport NavigationProductListV2 from \"./NavigationProductListV2.vue\";\n\nexport default {\n  name: \"MainNavigationItemV2\",\n\n  components: {\n    PgButton,\n    NavigationItemEditorialV2,\n    NavigationProductListV2\n  },\n\n  data() {\n    return {\n      setHeight: '',\n    }\n  },\n\n  props: {\n    item: {\n      type: Object,\n      default: () => {}\n    },\n    productCardConf: {\n      type: Object,\n      default: () => {}\n    },\n    index: {\n      type: Number,\n      default: 0\n    },\n    isActiveElement: {\n      type: Boolean,\n      default: false\n    },\n    highlightItems: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    posterImage: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    isEditInterface: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  computed: {\n    secondLevelNavigationComponent() {\n      if ((this.item.nestedItems && this.item.productSelect) || this.item[\"menu-tabs-area\"]?.length === 1) {\n        return \"NavigationProductListV2\";\n      } else if (this.item.nestedItems) {\n        return \"NavigationItemEditorialV2\";\n      } else {\n        return false; // this return false is to work around the eslint-error\n      }\n    }\n  },\n\n  methods: {\n    setModalHeight() {\n      //in order to fix the animation, the height should have a value but the items number will change\n      //in this case if the listing items are > 6 the height will be fit-content. (note that will break the animation)\n      //TODO we need to calculate the height of listing__items in order to set a value for the height\n      const minHeight = 292;\n      if ((this.item.nestedItems && this.item.productSelect) || this.item[\"menu-tabs-area\"]?.length === 1) {\n        const multiplier = Math.ceil(this.item.nestedItems.length / 6);\n        /* listingItemRef will be 0, the component is mounted when you click on the voice menรน */\n        //const listingItemRef = this.$refs.NavMenuNested.childNodes[0].childNodes[0].childNodes[1].childNodes[0].clientHeight;\n        this.setHeight = multiplier > 1 ? `--multiply-height: fit-content` : `--multiply-height: ${minHeight}px`\n      } else {\n        this.setHeight = `--multiply-height: ${minHeight}px`\n      }\n    }\n  },\n\n  mounted() {\n    window.screen.width > 1024 && this.setModalHeight();\n    this.isActiveElement = false;\n    this.$eventHub.on(\"showContacts\", (showContacts) => {\n      if(showContacts) {\n        this.isActiveElement = false;\n      }\n    });\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationItemV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainNavigationItemV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainNavigationItemV2.vue?vue&type=template&id=c88d8eb2&\"\nimport script from \"./MainNavigationItemV2.vue?vue&type=script&lang=js&\"\nexport * from \"./MainNavigationItemV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('pg-button',{key:_vm.ctaObj.uuid,attrs:{\"href\":_vm.ctaLink(_vm.ctaObj),\"color\":_vm.color,\"styleType\":_vm.ctaObj.listStyle || _vm.styleType,\"sectionStyle\":_vm.sectionStyle,\"size\":_vm.size,\"targetBlank\":_vm.ctaObj.onBlank,\"linkNofollow\":_vm.ctaObj.noFollow,\"eventName\":_vm.eventName(_vm.ctaObj),\"eventParams\":_vm.ctaParams(_vm.ctaObj),\"analyticsData\":_vm.analyticsData,\"type\":_vm.type}},[_vm._v(\" \"+_vm._s(_vm.ctaObj.label)+\" \"),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <pg-button\n      :href=\"ctaLink(ctaObj)\"\n      :color=\"color\"\n      :styleType=\"ctaObj.listStyle || styleType\"\n      :sectionStyle=\"sectionStyle\"\n      :size=\"size\"\n      :targetBlank=\"ctaObj.onBlank\"\n      :linkNofollow=\"ctaObj.noFollow\"\n      :key=\"ctaObj.uuid\"\n      :eventName=\"eventName(ctaObj)\"\n      :eventParams=\"ctaParams(ctaObj)\"\n      :analyticsData=\"analyticsData\"\n      :type=\"type\"\n  >\n    {{ctaObj.label}}\n    <slot/>\n  </pg-button>\n</template>\n\n<script>\n  import PgButton from \"../Button/Button.vue\";\n\n  export default {\n\n    name: \"AdvancedButtonWrapper\",\n    components: {\n      PgButton,\n    },\n    props: {\n      color: {\n        type: String,\n        default: \"\"\n      },\n      ctaObj: {\n        type: Object,\n        default: () => {\n        }\n      },\n      sectionStyle: {\n        type: String,\n        default: \"\"\n      },\n      size: {\n        type: String,\n        default: \"\"\n      },\n      styleType: {\n        type: String,\n        default: \"\"\n      },\n      analyticsData: {\n        type: Object,\n        default: () => {\n        }\n      },\n      htmlType: {\n        type: String,\n        default: \"button\"\n      }\n    },\n    computed: {\n      eventName() {\n        return ctaObj => {\n          if (ctaObj.behaviour == 'link' || ctaObj.behaviour === undefined) return;\n          return `MarketingTool:${ctaObj.behaviour}`;\n        }\n      },\n      ctaLink() {\n        return ctaObj => {\n          if (ctaObj.document) {\n            return this.$options.filters.mgnlMedia(ctaObj.document, \"url\");\n          } else {\n            return this.$options.filters.mgnlLink(ctaObj.link, \"url\");\n          }\n        }\n      },\n      ctaParams() {\n        return ctaObj => {\n          const params = {...ctaObj};\n          // cleaning properties not needed\n          delete params.link;\n          delete params.document;\n          delete params.listStyle;\n          delete params.onBlank;\n          delete params.noFollow;\n          delete params.label;\n          delete params.uuid;\n\n          return params;\n        }\n      },\n      type() {\n        return this.htmlType !== \"\" ? this.htmlType : false;\n      }\n    }\n  };\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Advanced-Button-Wrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Advanced-Button-Wrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Advanced-Button-Wrapper.vue?vue&type=template&id=79d6537b&\"\nimport script from \"./Advanced-Button-Wrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./Advanced-Button-Wrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Divider.vue?vue&type=style&index=0&id=275d5408&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Divider.vue?vue&type=style&index=0&id=275d5408&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visibility || _vm.$config.editMode)?_c('div',{ref:(\"id-\" + _vm.uuid),class:_vm.classes},[_c('div',{class:[_vm.alignContent, _vm.verticalAlign]},[(_vm.upperSubtitle && !_vm.hideUpperSubtitle)?_c(_vm.subheadingTag,{tag:\"component\",staticClass:\"editorial__subheading editorial__subheading--upper text--heading-s\"},[_vm._v(_vm._s(_vm.upperSubtitle)+\" \")]):_vm._e(),(_vm.title)?_c(_vm.headingTag,{tag:\"component\",class:_vm.headingClass},[_vm._v(_vm._s(_vm.title))]):_vm._e(),(_vm.subtitle)?_c(_vm.subheadingTag,{tag:\"component\",class:_vm.subHeadingBoldClasses},[_vm._v(_vm._s(_vm.subtitle)+\" \")]):_vm._e(),_c('div',{staticClass:\"editorial__text text--body\",class:[_vm.isTextOnTwoColumns, { 'text-only' : !_vm.image }],domProps:{\"innerHTML\":_vm._s(_vm.text)}}),(_vm.ctaLinks && _vm.ctaLinks.length > 0)?_c('p',{staticClass:\"editorial__cta motoplex--custom margin-top__btn-m margin-bottom__btn-m\"},_vm._l((_vm.ctaLinks),function(ctaObj){return _c('span',{key:ctaObj.uuid},[_c('advanced-button-wrapper',{attrs:{\"cta-obj\":ctaObj,\"color\":\"primary\",\"styleType\":\"text\",\"size\":\"medium\",\"sectionStyle\":_vm.sectionStyle,\"analyticsData\":_vm.analyticsData(ctaObj)}})],1)}),0):_vm._e()],1),(_vm.image)?_c('figure',{class:\"editorial__figure\" + _vm.alignImage},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.image,'url'),\"alt\":_vm.altImage}})],1):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"visibility || $config.editMode\" :class=\"classes\" :ref=\"`id-${uuid}`\">\n    <div :class=\"[alignContent, verticalAlign]\">\n      <component\n          :is=\"subheadingTag\"\n          class=\"editorial__subheading editorial__subheading--upper text--heading-s\"\n          v-if=\"upperSubtitle && !hideUpperSubtitle\"\n      >{{ upperSubtitle }}\n      </component>\n      <component :is=\"headingTag\" :class=\"headingClass\" v-if=\"title\">{{ title }}</component>\n      <component\n          :is=\"subheadingTag\"\n          :class=\"subHeadingBoldClasses\"\n          v-if=\"subtitle\"\n      >{{ subtitle }}\n      </component>\n      <div :class=\"[isTextOnTwoColumns, { 'text-only' : !image }]\" class=\"editorial__text text--body\" v-html=\"text\"></div>\n      <p v-if=\"ctaLinks && ctaLinks.length > 0\" class=\"editorial__cta motoplex--custom margin-top__btn-m margin-bottom__btn-m\">\n        <span v-for=\"ctaObj in ctaLinks\" :key=\"ctaObj.uuid\">\n          <advanced-button-wrapper :cta-obj=\"ctaObj\" color=\"primary\" styleType=\"text\" size=\"medium\" :sectionStyle=\"sectionStyle\" :analyticsData=\"analyticsData(ctaObj)\"/>\n        </span>\n      </p>\n    </div>\n    <figure v-if=\"image\" :class=\"`editorial__figure` + alignImage\">\n      <pg-image :lazy-src=\"image | mgnlMedia('url')\" :alt=\"altImage\"></pg-image>\n    </figure>\n  </div>\n</template>\n\n<script>\nimport AdvancedButtonWrapper from \"../Advanced-Button-Wrapper/Advanced-Button-Wrapper\";\nimport PgImage from \"../Image/Image.vue\";\nimport router from '@wl-vue-utils/router.js'\n\nexport default {\n  router: router,\n  name: \"Editorial\",\n  data() {\n    return {\n      actionParam: null\n    }\n  },\n  components: {\n    AdvancedButtonWrapper,\n    PgImage\n  },\n  props: {\n    uuid: {\n      type: String\n    },\n    upperSubtitle: {\n      type: String\n    },\n    hideUpperSubtitle: {\n      type: Boolean\n    },\n    title: {\n      type: String\n    },\n    subtitle: {\n      type: String\n    },\n    subtitleBold: {\n      type: Boolean\n    },\n    text: {\n      type: String\n    },\n    ctaLinks: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    image: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    altImage: {\n      type: String,\n      defaultValue: \"\",\n      required: false\n    },\n    layout: {\n      type: String\n    },\n    headingStyle: {\n      type: String\n    },\n    imageStyle: {\n      type: String\n    },\n    sectionStyle: {\n      type: String\n    },\n    textOnTwoColumns: {\n      type: Boolean\n    },\n    verticalTextAlign: {\n      type: Boolean\n    },\n    alignContentToCenter: {\n      type: Boolean,\n      default: false\n    },\n    alignImageToCenter: {\n      type: Boolean,\n      default: false\n    },\n    actpageFullUrl: {\n      type: String,\n    },\n    visibility: {\n      type: Boolean,\n      default: true\n    }\n  },\n  computed: {\n    classes() {\n      return [\n        \"editorial editorial--\" + this.layout,\n        \"editorial--image-\" + this.imageStyle\n      ];\n    },\n    alignContent() {\n      return Boolean(this.alignContentToCenter)\n          ? \"editorial__content editorial__content--align-center\"\n          : \"editorial__content\";\n    },\n    verticalAlign() {\n      return Boolean(this.verticalTextAlign) ? \" vertical-align\" : \"\"\n    },\n    alignImage() {\n      return Boolean(this.alignImageToCenter) ? \" image-center\" : \"\";\n    },\n    headingClass() {\n      return this.headingStyle === \"large\"\n          ? \"editorial__title text--heading-l\"\n          : \"editorial__title text--heading-m\";\n    },\n    headingTag() {\n      return this.headingStyle === \"large\" ? \"h2\" : \"h3\"; //simplified heading hierarchy for accessibility purpose\n    },\n    subheadingTag() {\n      return this.headingStyle === \"large\" ? \"p\" : \"p\"; //simplified heading hierarchy for accessibility purpose\n    },\n    subHeadingBoldClasses() {\n      return [\n        'editorial__subheading',\n        this.subtitleBold ? \"editorial__bold\" : ''\n      ]\n    },\n    isTextOnTwoColumns() {\n      return this.textOnTwoColumns ? \"editorial__text--two-columns\" : \"\";\n    }\n  },\n  methods: {\n    isInViewport(elem) {\n      const rect = elem.getBoundingClientRect();\n      const html = document.documentElement;\n      return (\n          rect.top >= 0 &&\n          rect.left >= 0 &&\n          rect.bottom <= (window.innerHeight || html.clientHeight) &&\n          rect.right <= (window.innerWidth || html.clientWidth)\n      );\n    },\n    scrollToAnchor(targetId) {\n\n      if (targetId == `id-${this.uuid}`) {\n        const anchor = this.$refs[targetId];\n\n        if (!anchor) return;\n        const marginToTop = 144;\n        const bounding = anchor.getBoundingClientRect();\n        let distanceToTop = Math.floor(bounding.top - marginToTop);\n\n        if (window.pageYOffset === 0) {\n          distanceToTop -= 62;\n        }\n\n        anchor.parentElement.tabIndex = -1;\n        anchor.parentElement.focus();\n\n        window.scrollBy({top: distanceToTop, left: 0, behavior: \"smooth\"});\n\n      }\n    },\n    onPageScrolling() {\n      const ctx = this;\n      window.requestAnimationFrame(() => {\n        // Run scroll functions\n        const anchor = document.getElementById(`uuid-${ctx.uuid}`);\n        if (ctx.isInViewport(anchor)) {\n          ctx.$eventHub.emit('editorial:elementInViewport', ctx.uuid);\n        }\n      });\n    },\n    analyticsData(el) {\n      return {\n        evCategory: 'call_to_action',\n        evAction: el.document?.url || el.link?.url || el.trackingLabel,\n        evLabel: `${el.campaignId || 'No Campaign'} | ${this.actpageFullUrl}`\n      }\n    }\n  },\n  mounted() {\n    // Listen for message events\n    this.$eventHub.on(\"anchor:scrollTo\", (targetId) => {\n      this.scrollToAnchor(targetId);\n    });\n    // Listen for scroll events\n    if (this.upperSubtitle) {\n      window.addEventListener(\"scroll\", this.onPageScrolling);\n    }\n    // Accrocchiata per mettere uno snippet automatico a tutte le landing dragone su questo componente\n    if (this.$route.fullPath.toLowerCase().indexOf(\"landing-page\") !== -1 && this.$route.fullPath.toLowerCase().indexOf(\"dragon\") !== -1) {\n      console.log(\"CUSTOM STYLE FOR LANDING DRAGONE\")\n      const css = \".theme-vespa .editorial__title {\" +\n          \"    margin-bottom: 1.5rem !important;\" +\n          \"    margin-top: 1.5rem !important;\" +\n          \"}\" +\n          \"\" +\n          \".theme-vespa .editorial__text{\" +\n          \"    line-height: 36px !important;\" +\n          \"    font-size: 24px !important;\" +\n          \"}\" +\n          \"\" +\n          \".theme-vespa .section.section-editorial {\" +\n          \"    padding-top: 2rem !important;\" +\n          \"    padding-bottom: 2rem !important;\" +\n          \"}\"\n      this.styleTag = document.createElement('style');\n      this.styleTag.appendChild(document.createTextNode(css));\n      document.head.appendChild(this.styleTag);\n    }\n  },\n  destroyed() {\n    window.removeEventListener(\"scroll\", this.onPageScrolling);\n  }\n};\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Editorial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Editorial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Editorial.vue?vue&type=template&id=78a0bd5c&\"\nimport script from \"./Editorial.vue?vue&type=script&lang=js&\"\nexport * from \"./Editorial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.disableChangeLang)?_c('div',{staticClass:\"change-language-country\"},_vm._l((_vm.languages),function(language,index){return _c('div',{key:language.uuid},[(index === 0)?_c('pg-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:((\"modal-multi-\" + _vm.uuid)),expression:\"`modal-multi-${uuid}`\"}],staticClass:\"change-language-country_country\",attrs:{\"size\":\"medium\",\"color\":\"primary\",\"style-type\":\"text\",\"eventName\":\"PgChangeLanguageCountry:changeCountry\",\"aria-label\":_vm.$msg('common.change-language-country.flag.aria'),\"eventParams\":{ uuid: _vm.uuid }}},[_c('msg',{attrs:{\"id\":\"common.change-language-country.country.aria\"}})],1):_vm._e(),(index === 0)?_c('b-modal',{attrs:{\"id\":(\"modal-multi-\" + _vm.uuid),\"title\":_vm.$msg('common.change-language-country.flag.aria'),\"size\":\"xl\",\"hide-footer\":\"\",\"scrollable\":\"\",\"centered\":\"\",\"modal-class\":\"modal--dialog\"},scopedSlots:_vm._u([{key:\"modal-header-close\",fn:function(){return [_c('i',{staticClass:\"close__icon icon-close\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"close__label\"},[_c('msg',{attrs:{\"id\":'common.modal.close.text'}})],1)]},proxy:true}],null,true)},[_c('countries',{attrs:{\"site-service-param\":_vm.siteServiceParam,\"show-flags\":_vm.showFlags}})],1):_vm._e(),(language.locale !== _vm.currentLocale )?_c('a',{staticClass:\"change-language-country_language\",attrs:{\"href\":language.pageUri,\"aria-label\":_vm.$msg('common.change-language-country.lang.aria'),\"title\":_vm.$msg('common.change-language-country.lang.aria')}},[_vm._v(_vm._s(_vm._f(\"uppercase\")(_vm._f(\"subStr\")(language.locale))))]):_c('span',{staticClass:\"change-language-country_language\"},[_vm._v(_vm._s(_vm._f(\"uppercase\")(_vm._f(\"subStr\")(language.locale))))])],1)}),0):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"change-language-country\" v-if=\"!disableChangeLang\">\n    <div v-for=\"(language, index) in languages\" :key=\"language.uuid\">\n      <pg-button\n          v-if=\"index === 0\"\n          class=\"change-language-country_country\"\n          size=\"medium\"\n          color=\"primary\"\n          style-type=\"text\"\n          v-b-modal=\"`modal-multi-${uuid}`\"\n          eventName=\"PgChangeLanguageCountry:changeCountry\"\n          :aria-label=\"$msg('common.change-language-country.flag.aria')\"\n          :eventParams=\"{ uuid }\"\n      >\n<!--        <i :class=\"flagIcon(currentCountry)\" aria-hidden=\"true\"></i>-->\n        <msg id=\"common.change-language-country.country.aria\"/>\n      </pg-button>\n\n      <!-- First modal -->\n      <b-modal v-if=\"index === 0\"\n               :id=\"`modal-multi-${uuid}`\"\n               :title=\"$msg('common.change-language-country.flag.aria')\"\n               size=\"xl\"\n               hide-footer\n               scrollable\n               centered\n               modal-class=\"modal--dialog\"\n      >\n\n        <template v-slot:modal-header-close>\n          <i class=\"close__icon icon-close\" aria-hidden=\"true\"></i>\n          <span class=\"close__label\">\n            <msg :id=\"'common.modal.close.text'\"/>\n          </span>\n        </template>\n\n        <countries\n            :site-service-param=\"siteServiceParam\"\n            :show-flags=\"showFlags\"\n        />\n\n      </b-modal>\n\n\n      <a\n          :href=\"language.pageUri\"\n          :aria-label=\"$msg('common.change-language-country.lang.aria')\"\n          :title=\"$msg('common.change-language-country.lang.aria')\"\n          v-if=\"language.locale !== currentLocale \"\n          class=\"change-language-country_language\"\n      >{{ language.locale | subStr | uppercase}}</a>\n      <span\n          class=\"change-language-country_language\"\n          v-else\n      >{{ language.locale | subStr | uppercase}}</span>\n    </div>\n  </div>\n</template>\n\n\n<script>\n  import PgButton from \"../Button/Button.vue\";\n  import Loader from \"../Loader/Loader.vue\";\n  import Countries from \"../Countries/Countries\";\n\n  export default {\n    name: \"PgChangeLanguageCountry\",\n    data() {\n      return {\n        countries: [],\n        loading: true\n      }\n    },\n    components: {\n      PgButton,\n      Loader,\n      Countries\n    },\n    props: {\n      uuid: {\n        type: String,\n        defaultValue: 'changeLang'\n      },\n      showFlags: {\n        type: Boolean\n      },\n      siteServiceParam: {\n        type: String\n      },\n      languages: {\n        type: Array,\n        default: () => []\n      },\n      currentLocale: {\n        type: String\n      },\n      currentCountry: {\n        type: String\n      },\n      disableChangeLang: {\n        type: Boolean,\n        default: false\n      },\n    },\n    computed: {\n      flagIcon: function () {\n        const filters = this.$options.filters;\n        return function (string) {\n          if (!string) return false;\n          return \"flag-icon flag-icon-\" + filters.subStr(string.toLowerCase());\n        };\n      },\n    }\n  };\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangeLanguageCountry.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangeLanguageCountry.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChangeLanguageCountry.vue?vue&type=template&id=73b60383&\"\nimport script from \"./ChangeLanguageCountry.vue?vue&type=script&lang=js&\"\nexport * from \"./ChangeLanguageCountry.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/header-v2-community-login.6dc710c9.svg\";","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=style&index=0&id=1be28890&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=style&index=0&id=1be28890&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-highlight\"},[_c('div',[_c('a',{attrs:{\"href\":_vm.href,\"target\":_vm.targetBlank === true ? '_blank' : '_self'}},[_c('div',{staticClass:\"card-highlight__img\"},[_c('pg-image',{attrs:{\"lazy-src\":_vm.img}})],1),_c('div',{staticClass:\"card-highlight__content\"},[_c('h3',{staticClass:\"text--heading-s text--primary card-highlight__text\"},[_vm._v(_vm._s(_vm.text))]),_c('div',{staticClass:\"card-highlight__cta\"},[_c('span',[_vm._v(_vm._s(_vm.cta))]),_c('i',{staticClass:\"icon-\"})])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"card-highlight\">\n    <div>\n      <a :href=\"href\" :target=\"targetBlank === true ? '_blank' : '_self' \">\n        <div class=\"card-highlight__img\">\n          <pg-image :lazy-src=\"img\"></pg-image>\n        </div>\n        <div class=\"card-highlight__content\">\n          <h3 class=\"text--heading-s text--primary card-highlight__text\">{{text}}</h3>\n          <div class=\"card-highlight__cta\">\n            <span>{{cta}}</span>\n            <i class=\"icon-\"></i>\n          </div>\n        </div>\n      </a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgImage from \"../Image/Image.vue\";\n\nexport default {\n  name: \"CardHighlight\",\n  components: {\n    PgButton,\n    PgImage,\n  },\n  props: {\n    href: {\n      type: String,\n      default: \"\"\n    },\n    img: {\n      type: String,\n      default: \"\"\n    },\n    text: {\n      type: String,\n      default: \"\"\n    },\n    cta: {\n      type: String,\n      default: \"\"\n    },\n    targetBlank: {\n      type: Boolean,\n      default: false\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card-Highlight.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card-Highlight.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Card-Highlight.vue?vue&type=template&id=7f32cb58&\"\nimport script from \"./Card-Highlight.vue?vue&type=script&lang=js&\"\nexport * from \"./Card-Highlight.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('input',{staticClass:\"isFirstLogin\",attrs:{\"hidden\":\"\",\"data-is-first-login\":\"false\"}}),(_vm.showPromoAlert)?_c('pg-alert',{staticClass:\"header-v2-promo-alert\",style:(_vm.headerPosition),attrs:{\"color\":\"primary\"}},[_c('a',{staticClass:\"promo-alert__link\",attrs:{\"href\":(\"#\" + _vm.targetId)},on:{\"click\":function($event){$event.preventDefault();return _vm.click(_vm.targetId)}}},[_c('i',{class:\"icon-gift-fill\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.promo-alert.message.text\"}})],1)]):_vm._e(),(_vm.getCommunityHomePagePath)?_c('input',{staticClass:\"community-homepage-link\",attrs:{\"hidden\":\"\",\"data-link\":_vm.getCommunityHomePagePath}}):_vm._e(),_c('div',{class:['header-v2-placeholder', {'visible' : _vm.placeHolderVisibility}]}),_c('header',{ref:\"header-v2\",class:_vm.classes(),style:(_vm.headerPosition),attrs:{\"id\":\"header-v2\",\"aria-label\":_vm.ariaLabel},on:{\"scroll\":_vm.handleScroll}},[_c('nav',{class:{'nav-open' : _vm.isNavigationOpen}},[_c('div',{staticClass:\"header__actions v2\"},[_c('div',{staticClass:\"header__menu-services\"},[(_vm.services.length && !_vm.isMobile)?_c('ul',{staticClass:\"header__menu-items\"},[_vm._l((_vm.filteredServices),function(service){return _c('li',{key:service.uuid,ref:((service.name) + \"Service\"),refInFor:true,class:(\"header__menu-services__\" + (service.name))},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"linkText\":_vm.linkTextLabel(service.name),\"targetBlank\":service.link.target}},[_c('i',{class:_vm.serviceClasses(service.name),attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":(\"common.header-v2.\" + (service.name)),\"cssClass\":\"show-for-sr\"}})],1)],1)}),(_vm.filteredSubMenuVoices.length > 0)?_c('li',{class:\"header__menu-services__contact-us\",on:{\"click\":function($event){return _vm.$emit('toggle-contact')}}},[_c('i',{class:\"icon-contact-us\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.header-v2.contact-us\"}}),_c('i',{class:['icon-arrow-down', {'rotate': _vm.showContacts}]})],1):_vm._e()],2):_vm._e(),(!_vm.hideNavigation && _vm.isMobile && _vm.services.length)?_c('pg-button',{staticClass:\"header-v2__menu-services__nav\",attrs:{\"selfManageStatus\":false,\"eventName\":\"header:toggleNavigationV2\",\"aria-expanded\":_vm.isNavigationOpen,\"aria-controls\":\"navigation\"}},[_c('span',{staticClass:\"custom-burger-icon\"})]):_vm._e()],1)]),_c('div',{staticClass:\"header__logo\"},[(!_vm.isNavigationOpen)?_c('a',{staticClass:\"header__logo__on-background\",attrs:{\"href\":_vm.getCustomHomepagePath ? _vm.getCustomHomepagePath : _vm.getHomepageNodePath}},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.logo,'url'),\"alt\":_vm.logoAlt,\"aria-label\":_vm.$msg('common.header.logo-aria-label')}})],1):_vm._e(),(!_vm.isNavigationOpen)?_c('a',{staticClass:\"header__logo__on-tranparent\",attrs:{\"href\":_vm.getCustomHomepagePath ? _vm.getCustomHomepagePath : _vm.getHomepageNodePath}},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.logoOnTransparent,'url'),\"alt\":_vm.logoAlt,\"aria-label\":_vm.$msg('common.header.logo-aria-label')}})],1):_vm._e(),(_vm.isNavigationOpen && _vm.isMobile)?_c('a',{staticClass:\"header__logo__on-navigation-mobile\",attrs:{\"href\":_vm.getCustomHomepagePath ? _vm.getCustomHomepagePath : _vm.getHomepageNodePath}},[_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.navigationMobileLogo,'url'),\"alt\":_vm.logoAlt,\"aria-label\":_vm.$msg('common.header.logo-aria-label')}})],1):_vm._e()]),_c('div',{staticClass:\"header-skip-navigation\",attrs:{\"aria-label\":_vm.$msg('common.header.skip-navigation.aria-label')}},[_c('a',{staticClass:\"show-on-focus\",attrs:{\"href\":\"#mainContent\"}},[_c('msg',{attrs:{\"id\":\"common.header.skip-navigation.aria\"}})],1)]),_c('div',{staticClass:\"header-right-container\"},[(_vm.extraLink)?_c('div',{staticClass:\"header-v2-right-item\"},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.extraLink,'url'),\"linkText\":_vm.extraLinkLabel,\"targetBlank\":_vm.extraLinkOnBlank}},[_c('i',{class:(\"icon-\" + _vm.extraLinkIcon),attrs:{\"aria-hidden\":\"true\"}})])],1):_vm._e(),_c('div',{staticClass:\"header-v2__community-login\"},[_c('input',{staticClass:\"screenset-login-data\",attrs:{\"hidden\":\"\",\"data-screenSet\":\"\",\"data-startScreen\":\"\"}}),((_vm.common.communityData && _vm.common.communityData.isCommunityEnabled) && (_vm.common.actpageTemplate !== 'piaggio:pages/t-landing-page'))?_c('div',{staticClass:\"header-v2__login-gigya\"},[_c('a',{staticClass:\"link_login_gigya\",attrs:{\"id\":\"account-login\",\"href\":\"#\",\"data-target\":\"\"}},[_c('span',[_vm._v(_vm._s(_vm.common.communityData.headerTitle))]),_c('i',{class:\"icon-header-v2-community-login\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e()]),_vm._l((_vm.filteredServices),function(service){return (service.name === 'dealer-locator' && _vm.isMobile)?_c('div',{key:service.uuid,class:(\"header__menu-services__\" + (service.name))},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url')}},[_c('i',{class:_vm.serviceClasses(service.name),attrs:{\"aria-hidden\":\"true\"}})])],1):_vm._e()})],2),(_vm.isMobile)?_c('span',{staticClass:\"horizontal-rule\"}):_vm._e()]),(_vm.common.isMainNavigationV2 && !_vm.isMobile)?_c('main-navigation-v2',{attrs:{\"menuItemsObj\":_vm.menuItemsObj,\"common\":_vm.common,\"customerServiceLink\":_vm.customerServiceLink,\"services\":_vm.services}}):_vm._e(),(_vm.isMobile)?_c('div',{class:[\"header__actions v2 mobile\", {\"visible\": _vm.isNavigationOpen}]},[(_vm.common.isMainNavigationV2)?_c('main-navigation-v2',{attrs:{\"menuItemsObj\":_vm.menuItemsObj,\"common\":_vm.common,\"customerServiceLink\":_vm.customerServiceLink,\"services\":_vm.services}}):_vm._e(),_c('div',{staticClass:\"header__menu-services\"},[(_vm.services.length)?_c('ul',{staticClass:\"header__menu-items\"},[_vm._l((_vm.filteredServices),function(service){return _c('li',{key:service.uuid,class:(\"header__menu-services__\" + (service.name))},[(service.name !== 'store')?_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"linkText\":_vm.linkTextLabel(service.name)}},[_c('i',{class:_vm.serviceClasses(service.name),attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":(\"common.header-v2.\" + (service.name)),\"cssClass\":\"show-for-sr\"}})],1):_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"linkText\":_vm.linkTextLabel(service.name),\"target\":service.link.target && service.name === 'store' ? '_blank' : ''}},[_c('i',{class:\"icon-store-mb\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":(\"common.header-v2.\" + (service.name)),\"cssClass\":\"show-for-sr\"}})],1)],1)}),(_vm.filteredSubMenuVoices.length > 0)?_c('li',{class:[\"header__menu-services__contact-us\", {'active': _vm.showContacts}],on:{\"click\":function($event){return _vm.showSubMenu()}}},[_c('i',{class:\"icon-contact-us\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.header-v2.contact-us\"}}),_c('i',{class:['icon-arrow-down', {'rotate': _vm.showContacts}]}),_c('ul',{class:['contacts', {'show': _vm.showContacts}]},[_c('li',{staticClass:\"contact-us-back-button\"},[_c('pg-button',{staticClass:\"navigation-v2__menu-nested__back contact-us\",on:{\"click\":function($event){return _vm.showSubMenu()}}},[_c('i',{staticClass:\"icon-arrow-sx\",attrs:{\"aria-hidden\":\"true\"}}),_c('msg',{attrs:{\"id\":\"common.header-v2.contact-us\"}})],1)],1),_vm._l((_vm.filteredSubMenuVoices),function(service){return _c('li',{key:service.uuid,class:(\"contact-us-voice \" + (service.name))},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(service.link,'url'),\"linkText\":_vm.linkTextLabel(service.name)}})],1)}),(_vm.customerServiceLink)?_c('li',{key:_vm.customerServiceLink.uuid,class:\"contact-us-voice customer-service\"},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.customerServiceLink,'url'),\"linkText\":_vm.linkTextLabel('customer-service')}})],1):_vm._e(),(_vm.bookAppointmentLink)?_c('li',{key:_vm.bookAppointmentLink.uuid,class:\"contact-us-voice book-appointment\"},[_c('pg-button',{attrs:{\"href\":_vm._f(\"mgnlLink\")(_vm.bookAppointmentLink,'url'),\"linkText\":_vm.linkTextLabel('book-appointment')}})],1):_vm._e()],2)],1):_vm._e()],2):_vm._e()])],1):_vm._e()],1),(_vm.isLogged && _vm.isModalOpen)?_c('div',{staticClass:\"header__login-modal\"},[_c('div',{staticClass:\"modal-heading\"},[_c('div',{staticClass:\"modal-links\"},[_c('pg-button',{staticClass:\"modal-option\",attrs:{\"href\":_vm.getCommunityHomePagePath}},[_c('msg',{attrs:{\"id\":(\"common.community.\" + (this.brandNodeName.toLowerCase()) + \".cta.private-homepage\")}})],1),_c('pg-button',{staticClass:\"modal-option\",attrs:{\"href\":_vm.getCommunityProfilePath}},[_c('msg',{attrs:{\"id\":\"common.community.cta.personal-area\"}})],1)],1),_c('pg-button',{staticClass:\"modal-close-btn\",attrs:{\"aria-controls\":\"close\",\"aria-expanded\":_vm.isModalOpen,\"eventName\":\"header:modalClose\",\"icon\":\"icon-close\",\"styleType\":\"icon\"}},[_c('msg',{attrs:{\"id\":\"common.generic.close\"}})],1)],1),_c('div',{staticClass:\"modal-separator\"}),_c('pg-button',{staticClass:\"modal-logout\",attrs:{\"eventName\":\"header:logout\"}},[_c('msg',{attrs:{\"id\":\"common.community.cta.logout\"}})],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <input hidden class=\"isFirstLogin\" data-is-first-login=\"false\"/>\n    <pg-alert v-if=\"showPromoAlert\" class=\"header-v2-promo-alert\" color=\"primary\" :style=\"headerPosition\">\n      <a class=\"promo-alert__link\" :href=\"`#${targetId}`\" @click.prevent='click(targetId)'>\n        <i :class=\"`icon-gift-fill`\" aria-hidden=\"true\"></i>\n        <msg id=\"common.promo-alert.message.text\" />\n      </a>\n    </pg-alert>\n    <input v-if=\"getCommunityHomePagePath\" hidden class=\"community-homepage-link\" :data-link=\"getCommunityHomePagePath\">\n    <div :class=\"['header-v2-placeholder', {'visible' : placeHolderVisibility}]\"></div>\n    <header :class=\"classes()\" id=\"header-v2\" ref=\"header-v2\" :aria-label=\"ariaLabel\" v-on:scroll=\"handleScroll\" :style=\"headerPosition\">\n      <!-- Desktop View -->\n      <nav :class=\"{'nav-open' : isNavigationOpen}\">\n        <div class=\"header__actions v2\">\n          <div class=\"header__menu-services\">\n            <ul class=\"header__menu-items\" v-if=\"services.length && !isMobile\">\n              <li\n                  v-for=\"service in filteredServices\"\n                  :key=\"service.uuid\"\n                  :class=\"`header__menu-services__${service.name}`\"\n                  :ref=\"`${service.name}Service`\"\n              >\n                <pg-button\n                    :href=\"service.link | mgnlLink('url')\"\n                    :linkText=\"linkTextLabel(service.name)\"\n                    :targetBlank=\"service.link.target\"\n                >\n                  <i :class=\"serviceClasses(service.name)\" aria-hidden=\"true\"></i>\n                  <msg :id=\"`common.header-v2.${service.name}`\" cssClass=\"show-for-sr\"/>\n                </pg-button>\n              </li>\n              <li\n                  v-if=\"filteredSubMenuVoices.length > 0\"\n                  :class=\"`header__menu-services__contact-us`\"\n                  @click=\"$emit('toggle-contact')\"\n              >\n                <i :class=\"`icon-contact-us`\" aria-hidden=\"true\"></i>\n                <msg :id=\"`common.header-v2.contact-us`\"/>\n                <i :class=\"['icon-arrow-down', {'rotate': showContacts}] \"></i>\n              </li>\n            </ul>\n            <pg-button\n                v-if=\"!hideNavigation && isMobile && services.length\"\n                :selfManageStatus=\"false\"\n                eventName=\"header:toggleNavigationV2\"\n                class=\"header-v2__menu-services__nav\"\n                :aria-expanded=\"isNavigationOpen\"\n                aria-controls=\"navigation\"\n            >\n              <span class=\"custom-burger-icon\"></span>\n            </pg-button>\n          </div>\n        </div>\n        <div class=\"header__logo\">\n          <a v-if=\"!isNavigationOpen\" :href=\"getCustomHomepagePath ? getCustomHomepagePath : getHomepageNodePath\" class=\"header__logo__on-background\">\n            <pg-image :lazy-src=\"logo | mgnlMedia('url')\" :alt=\"logoAlt\" :aria-label=\"$msg('common.header.logo-aria-label')\"></pg-image>\n          </a>\n          <a v-if=\"!isNavigationOpen\" :href=\"getCustomHomepagePath ? getCustomHomepagePath : getHomepageNodePath\" class=\"header__logo__on-tranparent\">\n            <pg-image :lazy-src=\"logoOnTransparent | mgnlMedia('url')\" :alt=\"logoAlt\" :aria-label=\"$msg('common.header.logo-aria-label')\"></pg-image>\n          </a>\n          <a v-if=\"isNavigationOpen && isMobile\" :href=\"getCustomHomepagePath ? getCustomHomepagePath : getHomepageNodePath\" class=\"header__logo__on-navigation-mobile\">\n            <pg-image :lazy-src=\"navigationMobileLogo | mgnlMedia('url')\" :alt=\"logoAlt\" :aria-label=\"$msg('common.header.logo-aria-label')\"></pg-image>\n          </a>\n        </div>\n        <div class=\"header-skip-navigation\" :aria-label=\"$msg('common.header.skip-navigation.aria-label')\">\n          <a class=\"show-on-focus\" href=\"#mainContent\">\n            <msg id=\"common.header.skip-navigation.aria\" />\n          </a>\n        </div>\n        <div class=\"header-right-container\">\n\n          <div v-if=\"extraLink\" class=\"header-v2-right-item\">\n            <pg-button :href=\"extraLink | mgnlLink('url')\"\n            :linkText=\"extraLinkLabel\"\n            :targetBlank=\"extraLinkOnBlank\">\n              <i :class=\"`icon-${extraLinkIcon}`\" aria-hidden=\"true\"></i>\n            </pg-button>\n          </div>\n\n          <div class=\"header-v2__community-login\">\n            <input hidden class=\"screenset-login-data\" data-screenSet=\"\" data-startScreen=\"\">\n            <div  v-if=\"(common.communityData && common.communityData.isCommunityEnabled) && (common.actpageTemplate !== 'piaggio:pages/t-landing-page')\"\n                  class=\"header-v2__login-gigya\">\n              <a id=\"account-login\" class=\"link_login_gigya\" href=\"#\" data-target=\"\">\n                <span>{{ common.communityData.headerTitle }}</span>\n                <i :class=\"`icon-header-v2-community-login`\" aria-hidden=\"true\"></i>\n              </a>\n            </div>\n          </div>\n          <div  v-for=\"service in filteredServices\" v-if=\"service.name === 'dealer-locator' && isMobile\"\n                :key=\"service.uuid\"\n                :class=\"`header__menu-services__${service.name}`\">\n            <pg-button :href=\"service.link | mgnlLink('url')\" >\n              <i :class=\"serviceClasses(service.name)\" aria-hidden=\"true\"></i>\n            </pg-button>\n          </div>\n        </div>\n        <span v-if=\"isMobile\" class=\"horizontal-rule\"></span>\n      </nav>\n      <!-- main navigation V2 will be activated only if also header V2 is activated -->\n      <main-navigation-v2\n          v-if=\"common.isMainNavigationV2 && !isMobile\"\n          :menuItemsObj=\"menuItemsObj\"\n          :common=\"common\"\n          :customerServiceLink=\"customerServiceLink\"\n          :services=\"services\" />\n      <!-- End Desktop View -->\n\n      <!-- Submenu Mobile View -->\n      <div :class='[\"header__actions v2 mobile\", {\"visible\": isNavigationOpen}]' v-if=\"isMobile\">\n        <!-- main navigation V2 will be activated only if also header V2 is activated -->\n        <main-navigation-v2\n            v-if=\"common.isMainNavigationV2\"\n            :menuItemsObj=\"menuItemsObj\"\n            :common=\"common\"\n            :customerServiceLink=\"customerServiceLink\"\n            :services=\"services\" />\n        <div class=\"header__menu-services\">\n          <ul class=\"header__menu-items\" v-if=\"services.length\">\n            <!--\n            <li class=\"header__menu-services__gigya-login\">\n              <div class=\"header-v2__community-login\">\n                <input hidden class=\"screenset-login-data\" data-screenSet=\"\" data-startScreen=\"\">\n                <div  v-if=\"(common.communityData && common.communityData.isCommunityEnabled) && (common.actpageTemplate != 'piaggio:pages/t-landing-page')\"\n                      class=\"header-v2__login-gigya\">\n                  <a id=\"account-login-nav\" class=\"link_login_gigya\" href=\"#\" data-target=\"\">\n                    <i :class=\"`icon-header-v2-community-login`\" aria-hidden=\"true\"></i>\n                    <span>{{ common.communityData.headerTitle }}</span>\n                  </a>\n                </div>\n              </div>\n            </li>\n            -->\n            <li\n                v-for=\"service in filteredServices\"\n                :key=\"service.uuid\"\n                :class=\"`header__menu-services__${service.name}`\"\n            >\n              <pg-button\n                  v-if=\"service.name !== 'store'\"\n                  :href=\"service.link | mgnlLink('url')\"\n                  :linkText=\"linkTextLabel(service.name)\"\n              >\n                <i :class=\"serviceClasses(service.name)\" aria-hidden=\"true\"></i>\n                <msg :id=\"`common.header-v2.${service.name}`\" cssClass=\"show-for-sr\"/>\n              </pg-button>\n              <pg-button\n                  v-else\n                  :href=\"service.link | mgnlLink('url')\"\n                  :linkText=\"linkTextLabel(service.name)\"\n                  :target=\"service.link.target && service.name === 'store' ? '_blank' : ''\"\n              >\n                <i :class=\"`icon-store-mb`\" aria-hidden=\"true\"></i>\n                <msg :id=\"`common.header-v2.${service.name}`\" cssClass=\"show-for-sr\"/>\n              </pg-button>\n            </li>\n            <li\n                v-if=\"filteredSubMenuVoices.length > 0\"\n                :class=\"[`header__menu-services__contact-us`, {'active': showContacts}]\"\n                @click=\"showSubMenu()\"\n            >\n              <i :class=\"`icon-contact-us`\" aria-hidden=\"true\"></i>\n              <msg :id=\"`common.header-v2.contact-us`\"/>\n              <i :class=\"['icon-arrow-down', {'rotate': showContacts}] \"></i>\n              <ul :class=\"['contacts', {'show': showContacts}]\">\n                <li class=\"contact-us-back-button\">\n                  <pg-button\n                      class=\"navigation-v2__menu-nested__back contact-us\"\n                      @click=\"showSubMenu()\"\n                  >\n                    <i class=\"icon-arrow-sx\" aria-hidden=\"true\"></i>\n                    <msg :id=\"`common.header-v2.contact-us`\"/>\n                  </pg-button>\n                </li>\n                <li v-for=\"service in filteredSubMenuVoices\" :key=\"service.uuid\"\n                    :class=\"`contact-us-voice ${service.name}`\">\n                  <pg-button :href=\"service.link | mgnlLink('url')\" :linkText=\"linkTextLabel(service.name)\" />\n                </li>\n                <li v-if=\"customerServiceLink\" :key=\"customerServiceLink.uuid\"\n                    :class=\"`contact-us-voice customer-service`\">\n                  <pg-button :href=\"customerServiceLink | mgnlLink('url')\"\n                             :linkText=\"linkTextLabel('customer-service')\" />\n                </li>\n                <li v-if=\"bookAppointmentLink\" :key=\"bookAppointmentLink.uuid\"\n                    :class=\"`contact-us-voice book-appointment`\">\n                  <pg-button :href=\"bookAppointmentLink | mgnlLink('url')\"\n                             :linkText=\"linkTextLabel('book-appointment')\" />\n                </li>\n              </ul>\n            </li>\n          </ul>\n        </div>\n      </div>\n      <!-- End Mobile View -->\n    </header>\n\n    <div v-if=\"isLogged && isModalOpen\" class=\"header__login-modal\">\n      <div class=\"modal-heading\">\n        <div class=\"modal-links\">\n          <pg-button\n              :href=\"getCommunityHomePagePath\"\n              class=\"modal-option\"\n          >\n            <msg :id=\"`common.community.${this.brandNodeName.toLowerCase()}.cta.private-homepage`\" />\n          </pg-button>\n          <pg-button\n              :href=\"getCommunityProfilePath\"\n              class=\"modal-option\"\n          >\n            <msg id=\"common.community.cta.personal-area\" />\n          </pg-button>\n        </div>\n        <pg-button\n            aria-controls=\"close\"\n            :aria-expanded=\"isModalOpen\"\n            class=\"modal-close-btn\"\n            eventName=\"header:modalClose\"\n            icon=\"icon-close\"\n            styleType=\"icon\"\n        >\n          <msg id=\"common.generic.close\" />\n        </pg-button>\n      </div>\n      <div class=\"modal-separator\"></div>\n      <pg-button\n          eventName=\"header:logout\"\n          class=\"modal-logout\"\n      >\n        <msg id=\"common.community.cta.logout\" />\n      </pg-button>\n    </div>\n  </div>\n</template>\n\n<script>\nimport PgButton from \"../Button/Button.vue\";\nimport PgAlert from \"../Alert/Alert.vue\";\nimport PgImage from \"../Image/Image.vue\";\nimport {mgnlComponentMixin} from \"../../mixins/mixins\";\nimport onAfterScreenLoad from \"../GigyaCommunity/gigya-script/onAfterScreenLoad\";\nimport MainNavigationV2 from \"../MainNavigationV2/MainNavigationV2.vue\";\nimport router from '@wl-vue-utils/router.js'\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n  name: \"pg-header-v2\",\n  router: router,\n  components: {\n    MainNavigationV2,\n    PgButton,\n    PgAlert,\n    PgImage\n  },\n  data() {\n    return {\n      placeHolderVisibility: false,\n      headerPosition: \"\",\n      isNavigationExpanded: false,\n      headerVoices: [\"dealer-locator\", \"store\"],\n      contactsUs: [\"dealer-locator-dealers\", \"book-appointment\", \"dealer-locator-services\"],\n      showContacts: false,\n      lastScrollTop: 0,\n      statusClass: \"\",\n      isNavigationOpen: false,\n      showPromoAlert: false,\n      targetId: null,\n      isLogged: false,\n      isModalOpen: false,\n      logoutRedirect: \"\",\n      registrationRedirect: \"\",\n      loginRedirect: \"\",\n      forgotPswRedirect: \"\",\n      faqRedirect: \"\",\n      policyRedirect: \"\",\n      gigyaAfterLoadScript: onAfterScreenLoad,\n      loadUserName: false,\n    };\n  },\n  props: {\n    commonMock: {\n      type: Object,\n      default: () => {}\n    },\n    logo: {\n      type: Object,\n      default: () => {}\n    },\n    logoOnTransparent: {\n      type: Object,\n      default: () => {}\n    },\n    navigationMobileLogo: {\n      type: Object,\n      default: () => {}\n    },\n    customerServiceLink: {\n      type: Object,\n      default: () => {}\n    },\n    bookAppointmentLink: {\n      type: Object,\n      default: () => {}\n    },\n    services: {\n      type: Array,\n      default: () => []\n    },\n    brandNodeName: {\n      type: String,\n      default: '',\n    },\n    brandNodePath: {\n      type: String,\n      default: '',\n    },\n    homepageNodePath: {\n      type: String,\n      default: '',\n    },\n    customLogoLink: {\n      type: String,\n      default: '',\n    },\n    hideNavigation: {\n      type: Boolean,\n      default: false\n    },\n    commonHeaderAriaLabel: {\n      type: String,\n      default: ''\n    },\n    menuItemsObj: {\n      type: Array,\n      default: () => [],\n    },\n    extraLink: {\n      type: Object,\n      default: () => {}\n    },\n    extraLinkLabel: {\n      type: String,\n      default: '',\n    },\n    extraLinkIcon: {\n      type: String,\n      default: '',\n    },\n    extraLinkOnBlank: {\n      type: Boolean,\n      default: false\n    }\n  },\n  computed: {\n    header: function() {\n      return (this.navigation && this.navigation.header) || {};\n    },\n    mainNavigation: function() {\n      return (\n          (this.navigation && this.navigation.mainNavigation) || {}\n      );\n    },\n    getHomepageNodePath() {\n      return this.homepageNodePath ? this.homepageNodePath : this.common.homepageNodePath;\n    },\n    getCustomHomepagePath(){\n      return this.common.customLogoLink;\n    },\n    getBrandNodePath() {\n      return this.brandNodeName.toLowerCase() ? this.brandNodeName.toLowerCase() : this.common.brandNodeName;\n    },\n    getCommunityHomePagePath() {\n      if (this.common.communityData !== undefined && this.common.communityData.homePageCommunity) {\n        return this.common.communityData.homePageCommunity;\n      } else return \"\";\n    },\n    getCommunityProfilePath() {\n      if (this.common.communityData !== undefined && this.common.communityData.profileRedirectLink) {\n        return this.common.communityData.profileRedirectLink;\n      } else return \"\";\n    },\n    isPrivateTemplate() {\n      if (this.common.communityData !== undefined && this.common.communityData.isPrivateTemplate) {\n        return this.common.communityData.isPrivateTemplate;\n      } else return \"\";\n    },\n    logoAlt() {\n      return this.getBrandNodePath ? this.$msg('common.header.logo-label.text') + \" \" + this.getBrandNodePath : \"\";\n    },\n    ariaLabel() {\n      //retrieving label text from dictionary in root element data. Otherwise, load label from common mock\n      return this.$msg('common.header.aria-label.text') || this.commonHeaderAriaLabel;\n    },\n    isMobile() {\n      return window.screen.width <= 1024;\n    },\n    filteredServices() {\n      return this.services.filter(service => this.headerServices(service.name));\n    },\n    filteredSubMenuVoices() {\n      return this.services.filter(service => this.contactVoices(service.name));\n    }\n  },\n\n  watch: {\n    isNavigationOpen(value) {\n      value && !this.isMobile ? document.body.style.overflow = \"hidden\" : document.body.style.overflow = \"scroll\";\n      this.headerPositioning();\n    },\n  },\n\n  methods: {\n    headerPositioning() {\n      if(window.scrollY === 0) {\n        if(this.isNavigationOpen || this.isNavigationExpanded) {\n          this.placeHolderVisibility = true;\n          this.headerPosition = `--header-position: fixed`;\n        } else {\n          setTimeout(() => {\n            this.headerPosition = `--header-position: sticky`;\n            this.placeHolderVisibility = false;\n          }, 550)\n        }\n      } else {\n        this.placeHolderVisibility = true;\n        this.headerPosition = `--header-position: fixed`;\n      }\n    },\n    classes() {\n      return [\"header v2\", this.layout, this.statusClass, this.showPromoAlert && 'header--promo'];\n    },\n    isThemeVespa() {\n      // Check if the body contains the class \"theme-vespa\"\n      return document.body.classList.contains('theme-vespa');\n    },\n    headerServices(serviceName) {\n      return serviceName ? this.headerVoices.some(voice => serviceName === voice) : false;\n    },\n    contactVoices(service) {\n      return service ? this.contactsUs.some(voice => service === voice) : false;\n    },\n    linkTextLabel(value) {\n      if(value === 'store') {\n        return this.common.brandName.toLowerCase() === (\"moto guzzi\" || \"moto-guzzi\")\n            ? this.$msg(`common.header-v2.${value}`)\n            : this.$msg(`common.header-v2.${value}.${this.common.brandName.toLowerCase()}`);\n      } else {\n        return this.$msg(`common.header-v2.${value}`);\n      }\n    },\n    showSubMenu() {\n      this.showContacts = !this.showContacts;\n      if(this.showContacts) {\n        this.$eventHub.$emit(\"showContacts\", this.showContacts);\n      }\n    },\n    serviceClasses(service) {\n      switch (service) {\n        case \"dealer-locator\": {\n          if (this.isThemeVespa() === true) {\n            return \"icon-vespa_pin\";\n          }\n          return \"icon-dealer-locator\";\n          break;\n        }\n        case \"store\":\n          return \"icon-store\";\n          break;\n      }\n    },\n    handleScroll(event) {\n      let st =\n          (window && window.pageYOffset) ||\n          (document && document.documentElement.scrollTop);\n\n      if (st > this.lastScrollTop) {\n        this.statusClass = \"header--sticky\";\n      } else {\n        //console.log(\"scroll up\");\n        this.statusClass = \"header--sticky\";\n      }\n\n      if (st === 0) {\n        this.statusClass = \"\";\n      }\n\n      this.lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling\n    },\n    click(targetID) {\n      const marginToTop = 144;\n      const elTarget = document.getElementById(targetID);\n      if (elTarget) {\n        const bounding = elTarget.getBoundingClientRect();\n        const distanceToTop = Math.floor(bounding.top + window.pageYOffset - marginToTop);\n        window.scrollTo(0, distanceToTop);\n      }\n    },\n    showScreen() {\n      let screenSet = document.querySelector(\".screenset-login-data\").dataset.screenSet;\n      let startScreen = document.querySelector(\".screenset-login-data\").dataset.startScreen;\n      let errorLabel = this.$msg(`common.community.${this.brandNodeName.toLowerCase()}.error-message.invalid-login`);\n\n      gigya.accounts.showScreenSet({\n        screenSet:screenSet,\n        startScreen:startScreen,\n        customLang: {\n          'invalid_login_or_password' : '<p class=\"error-message-description\">' + errorLabel + '</p>'\n        },\n        onAfterScreenLoad: this.onAfterScreenLoad\n      });\n    },\n    onAfterScreenLoad(event) {\n      this.gigyaAfterLoadScript(event, this);\n    },\n    async loadScript() {\n      let ctx = this;\n      return new Promise((res, rej) => {\n        ctx.showScreen();\n      });\n    },\n    async loadAccountInfo(script, src, screenSet, startScreen) {\n      let ctx = this;\n      return new Promise((res, rej) => {\n        script.onload = function () {\n          res();\n          ctx.onLoadPage();\n        }\n        script.onerror = function () {\n          rej();\n        }\n      });\n    },\n    async onFirstLogin(brandName, country, response) {\n      let setAccountInfoResponse = function (response) {\n        if (response.errorCode === 400006) {\n          console.log('Error :' + response.errorMessage);\n          return false;\n        }\n      }\n\n      let fO_TheClan = response.data?.FO_TheClan ? response.data.FO_TheClan.trim() : undefined;\n      let iscrizione_TheClan = response.data.Iscrizione_TheClan;\n      let fO_ProudOwners = response.data?.FO_ProudOwners ? response.data.FO_ProudOwners.trim() : undefined;\n      let iscrizione_ProudOwners = response.data.Iscrizione_ProudOwners;\n\n      console.debug(\"TheClan \",fO_TheClan,'\\n',\"Iscrizione The Clan \", iscrizione_TheClan,'\\n',\"f0 Proud Owners \", fO_ProudOwners,'\\n',\"iscrizione Proud Owners ''\", iscrizione_ProudOwners);\n      let params = {};\n      if (brandName === \"moto-guzzi\" && country !== \"US\" && country !== \"CA\") {\n        if ((!fO_TheClan && !iscrizione_TheClan) && (fO_ProudOwners === undefined && iscrizione_ProudOwners === undefined)) {\n          params = {\n            data: {\n              FO_TheClan: \"F\",\n              Iscrizione_TheClan: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n        //params.data รจ per la prima volta che ci iscriviamo\n        localStorage.setItem(\"FO\", params.data ?  fO_TheClan : fO_ProudOwners !== undefined ? fO_ProudOwners : fO_TheClan);\n      } else if (brandName === \"moto-guzzi\" && (country === \"US\" || country === \"CA\")) {\n        if (!fO_ProudOwners && !iscrizione_ProudOwners && (fO_TheClan === undefined && iscrizione_TheClan === undefined)) {\n          params = {\n            data: {\n              FO_ProudOwners: \"F\",\n              Iscrizione_ProudOwners: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n        localStorage.setItem(\"FO\", params.data ?  fO_ProudOwners : fO_TheClan !== undefined ? fO_TheClan : fO_ProudOwners);\n      } else if (brandName === \"aprilia\") {\n        if (!response.data.FO_Bearacer && !response.data.Iscrizione_Bearacer) {\n          params = {\n            data: {\n              FO_Bearacer: \"F\",\n              Iscrizione_Bearacer: true\n            },\n            callback: setAccountInfoResponse\n          }\n        }\n        localStorage.setItem(\"FO\", params.data ?  params.data.FO_Bearacer : response.data.FO_Bearacer);\n      }\n      gigya.accounts.setAccountInfo(params);\n    },\n    checkForRedirect(){\n      if (this.common.communityData.visibleOnlyForOwner && localStorage.FO === \"F\"){\n        this.$router.replace(this.common.communityData.listingEventsRedirectLink).then(() => {\n          this.$router.go(0);\n        });\n      }\n    },\n    onLoadPage() {\n      let ctx = this;\n      const brandName = ctx.common.brandNodeName;\n      const country = ctx.common.currentCountry;\n      let data;\n      let getAccountInfoResponse = function (response) {\n        if (response.errorCode !== 0) {\n          console.log('Error :' + response.errorMessage);\n          return false;\n        }\n        let isMobile = window.screen.width <= 1024;\n        let containsLoginCookie = ctx.containsLoginCookie();\n        data = response.data;\n        ctx.onFirstLogin(brandName, country, response);\n        const accountLogin = document.getElementById(\"account-login\");\n        const accountLoginNav = document.getElementById(\"account-login-nav\");\n        const headerTitle = accountLogin.querySelector(\"span\");\n        const headerNavTitle = accountLoginNav ? accountLoginNav.querySelector(\"span\") : '';\n        const userNameSpan = document.createElement(\"span\");\n        const icon = accountLogin.querySelector(\"i\");\n        if (containsLoginCookie) {\n          // eslint-disable-line no-unused-expressions\n          if (accountLogin) {\n            accountLogin.classList.add(\"logged\");\n          }\n          if (accountLoginNav) {\n            accountLoginNav.classList.add(\"logged\");\n          }\n          const userName =\n              response.profile.firstName.length > 28\n                  ? response.profile.firstName.slice(0, 28) + \"...\"\n                  : response.profile.firstName;\n          if (isMobile) {\n            if (headerTitle) {\n              accountLogin.removeChild(headerTitle);\n              if (accountLoginNav) {\n                accountLoginNav.removeChild(headerNavTitle);\n              }\n            }\n            userNameSpan.textContent = userName;\n            accountLogin.insertBefore(userNameSpan, icon);\n            if (accountLoginNav) {\n              accountLoginNav.appendChild(userNameSpan);\n            }\n          }\n          if (!isMobile) {\n            if (headerTitle) {\n              accountLogin.removeChild(headerTitle);\n            }\n            userNameSpan.textContent = userName;\n            accountLogin.insertBefore(userNameSpan, icon);\n          }\n          localStorage.setItem(\"user\", JSON.stringify(response.profile));\n          localStorage.setItem(\"data\", JSON.stringify(response.data));\n        } else {\n          // eslint-disable no-unused-expressions\n          accountLogin.classList.remove(\"logged\");\n          if (accountLoginNav) {\n            accountLoginNav.classList.remove(\"logged\");\n          }\n          localStorage.removeItem(\"user\");\n        }\n        localStorage.setItem(\"gigyaUid\",response.UID);\n\n        let vin = \"noVin\";\n        if (brandName === \"moto-guzzi\" && country !== \"US\" && country !== \"CA\") {\n          vin = data.MembershipCode_TheClan;\n        } else if (brandName === \"moto-guzzi\" && (country === \"US\" || country === \"CA\")) {\n          vin = data.MembershipCode_ProudOwners;\n        } else if (brandName === \"aprilia\") {\n          vin = data.MembershipCode_BeaRacer;\n        }\n        localStorage.setItem(\"qrCodeVin\",vin);\n\n        if (ctx.common.communityData.isPrivateCommunityHomepagePage) {\n          ctx.hideShowCommunityCards();\n        }\n        if (ctx.common.communityData.isPrivateCommunityEventDetailPage){\n          ctx.checkForRedirect();\n        }\n      };\n\n      gigya.accounts.getAccountInfo({\n        include: 'profile, data',\n        callback: getAccountInfoResponse\n      });\n    },\n    checkResultScript() {\n      if (this.isLogged) {\n        this.isModalOpen = !this.isModalOpen;\n        this.$emit('gigya-modal-overlay', this.isModalOpen);\n      } else {\n        this.loadScript()\n            .then(() => {\n              console.log('Script loaded!');\n            })\n            .catch(() => {\n              console.error('Script loading failed! Handle this error');\n            });\n      }\n    },\n    addingClickOnModal() {\n      document.querySelector(\".link_login_gigya\").addEventListener(\"click\", this.checkResultScript);\n    },\n    removingClickOnModal() {\n      document.querySelector(\".link_login_gigya\").removeEventListener(\"click\", this.checkResultScript);\n    },\n    loadGigyaScript(ctx) {\n      const src = ctx.common.communityData.urlApiKey\n      const screenSet = ctx.common.communityData.loginScreen.screenSet;\n      const startScreen = ctx.common.communityData.loginScreen.startScreen;\n      document.querySelector(\".screenset-login-data\").dataset.screenSet = screenSet;\n      document.querySelector(\".screenset-login-data\").dataset.startScreen = startScreen;\n      const script = document.createElement('script');\n      script.type = \"text/javascript\";\n      script.className = \"gigya_import community\"\n      script.src = src;\n      document.body.appendChild(script);\n      if (this.common.communityData.isPrivateTemplate || this.containsLoginCookie) {\n        this.loadAccountInfo(script, src, screenSet, startScreen)\n            .then(() => {\n              console.log('Account Info loaded!');\n            })\n            .catch(() => {\n              console.error('Account Info loading failed! Handle this error');\n            });\n      }\n    },\n    deleteAllCookies() {\n      const cookies = document.cookie.split(\";\");\n      for (let i = 0; i < cookies.length; i++) {\n        const cookie = cookies[i];\n        const eqPos = cookie.indexOf(\"=\");\n        const name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\n        document.cookie = name + \"=;expires=Thu, 01 Jan 1970 00:00:00 GMT\";\n      }\n    },\n    containsLoginCookie() {\n      let containsLoginCookie = false;\n      let cookieList = document.cookie.split(\";\");\n      cookieList.forEach(cookie => {\n        let key = cookie.split(\"=\")[0].trim();\n        let glt = key.split(\"_\")[0];\n        if (glt === \"glt\") {\n          containsLoginCookie = true;\n        }\n      });\n      this.isLogged = containsLoginCookie;\n      return containsLoginCookie;\n    },\n    communityLoginCheck() {\n      const containsLoginCookie = this.containsLoginCookie();\n      if (!containsLoginCookie) {\n        this.deleteAllCookies();\n        this.$router.replace(this.logoutRedirect).then(() => {\n          this.$router.go(0);\n        });\n        localStorage.clear();\n      }\n    },\n    async hideShowCommunityCards(){\n      let cards = document.querySelectorAll('.community-cards');\n      cards.forEach(item => {\n        const visibility = item.dataset.visibility;\n        if (visibility === \"all\" || (visibility === \"fan-community\" && localStorage.FO === \"F\") || (visibility === \"owner-community\" && localStorage.FO === \"O\")){\n          item.removeAttribute(\"style\");\n        } else {\n          item.remove();\n        }\n      });\n    },\n\n    redirectOnEventDetail(){\n      if (localStorage.getItem(\"redirectLink\") != null) {\n        const url = localStorage.getItem(\"redirectLink\")\n        this.$router.replace(url).then(() => {\n          this.$router.go(0);\n        });\n        localStorage.removeItem(\"redirectLink\")\n      }\n    },\n\n    storeServiceWidth() {\n      let storeService = this.$refs.storeService\n      if(storeService && storeService[0]) {\n        storeService = storeService[0];\n        this.$emit(\"header-store-service-ref\", storeService);\n      }\n    }\n  },\n  created() {\n    window && window.addEventListener(\"scroll\", this.handleScroll);\n    this.$eventHub.on(\"header:toggleNavigationV2\", () => {\n      this.isNavigationOpen = !this.isNavigationOpen;\n      this.showContacts ? this.showContacts = !this.showContacts : ''\n    });\n\n    this.$eventHub.on(\"header:loggedUser\", () => {\n      if (this.isLogged) {\n        this.isModalOpen = true;\n        this.$emit('gigya-modal-overlay', this.isModalOpen);\n      }\n    });\n\n    this.$eventHub.on(\"header:modalClose\", () => {\n      this.isModalOpen = false;\n    });\n\n    this.$eventHub.on(\"header:logout\", () => {\n      this.isModalOpen = false;\n      gigya.accounts.logout();\n      this.deleteAllCookies();\n      localStorage.clear();\n      this.$router.replace(this.logoutRedirect).then(() => {\n        this.$router.go(0);\n      });\n    });\n\n    this.$eventHub.on(\"alert:closeAlert\", () => {\n      this.showPromoAlert = false;\n      document.body.classList.remove(\"has-promo\");\n    });\n\n    // PIAGGIO-8402: integration with convert experiences (https://convert.elevio.help/en/articles/84999)\n    if (this.brandNodeName.toLowerCase() === 'moto-guzzi' && this.common.currentCountry === \"IT\") {\n      console.log(\"IMPORTING CDN CONVERT EXPERIMENTS!\");\n      let convertScript = document.createElement('script');\n      convertScript.setAttribute('src', 'https://cdn-4.convertexperiments.com/js/10022390-10025600.js');\n      convertScript.setAttribute('type', 'text/javascript');\n      document.head.appendChild(convertScript);\n      console.log(\"APPENDED TO HEAD\");\n    }\n    this.storeServiceWidth();\n  },\n  destroyed() {\n    window && window.removeEventListener(\"scroll\", this.handleScroll);\n  },\n\n  beforeDestroy() {\n    document.body.style.overflow = '';\n    window.removeEventListener('scroll', this.headerPositioning);\n  },\n\n  mounted() {\n    this.headerPositioning();\n    this.storeServiceWidth();\n    window.addEventListener('scroll', this.headerPositioning);\n    this.$eventHub.on(\"header:isNavigationOpen\", (isNavigationOpen) => {\n      this.isNavigationExpanded = isNavigationOpen;\n      this.headerPositioning();\n      if(this.showContacts) {\n        this.showContacts = false;\n      }\n    });\n    // PIAGGIO-8402: integration with convert experiences (https://convert.elevio.help/en/articles/84999)\n    this.$nextTick(function () {\n      if (typeof (window.convert) != 'undefined') {\n        console.log(\"CONVERT NEXT TICK ACTION\")\n        const exp = window.convert.currentData.experiments;\n        for (let expID in exp) {\n          window._conv_q = window._conv_q || [];\n          window._conv_q.push([\"executeExperiment\", expID]);\n        }\n      }\n    })\n    const ctx = this;\n    this.common.actpageTemplate && this.common.actpageTemplate.includes(\"t-model-version\") &&\n    this.$eventHub.on(\"cardPromotion:active-promo\", (targetId) => {\n      if (!this.showPromoAlert) {\n        this.targetId = targetId;\n        ctx.showPromoAlert = true;\n        document.body.classList.add(\"has-promo\");\n      }\n    })\n    if (this.common.communityData) {\n      if (this.common.communityData.isCommunityEnabled) {\n        this.registrationRedirect = this.common.communityData.registrationRedirectLink;\n        this.loginRedirect = this.common.communityData.loginRedirectLink;\n        this.forgotPswRedirect = this.common.communityData.forgotPswRedirectLink;\n        this.faqRedirect = this.common.communityData.faqRedirectLink;\n        this.logoutRedirect = this.common.communityData.logoutRedirectLink;\n        this.policyRedirect = this.common.communityData.policyRedirectLink;\n        this.loadGigyaScript(this);\n        this.addingClickOnModal(ctx);\n        if (this.common.communityData.isPrivateTemplate) {\n          this.communityLoginCheck();\n          setTimeout(this.redirectOnEventDetail, 250);\n        }\n      }\n    }\n  },\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderV2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderV2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HeaderV2.vue?vue&type=template&id=1b59a4c0&\"\nimport script from \"./HeaderV2.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderV2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}