{"version":3,"sources":["webpack:///./src/components/CollapsableContent/CollapsableContent.vue","webpack:///src/components/CollapsableContent/CollapsableContent.vue","webpack:///./src/components/CollapsableContent/CollapsableContent.vue?06d9","webpack:///./src/components/CollapsableContent/CollapsableContent.vue?7a76","webpack:///./src/components/CollapsableContent/index.js","webpack:///./src/components/StickyMenuBar/StickyMenuBar.vue","webpack:///src/components/StickyMenuBar/StickyMenuBar.vue","webpack:///./src/components/StickyMenuBar/StickyMenuBar.vue?0320","webpack:///./src/components/StickyMenuBar/StickyMenuBar.vue?2478","webpack:///./src/components/StickyMenuBar/index.js","webpack:///./src/components/PopinCollection/PopinCollection.vue","webpack:///./src/components/PopinCollection/popin/leftCol/CollectionTitle.vue","webpack:///src/components/PopinCollection/popin/leftCol/CollectionTitle.vue","webpack:///./src/components/PopinCollection/popin/leftCol/CollectionTitle.vue?6796","webpack:///./src/components/PopinCollection/popin/leftCol/CollectionTitle.vue?6553","webpack:///./src/components/PopinCollection/popin/leftCol/ProductList.vue","webpack:///src/components/PopinCollection/popin/leftCol/ProductList.vue","webpack:///./src/components/PopinCollection/popin/leftCol/ProductList.vue?1d41","webpack:///./src/components/PopinCollection/popin/leftCol/ProductList.vue?5eb6","webpack:///./src/components/PopinCollection/popin/rightCol/ProductHeader.vue","webpack:///./src/components/PopinCollection/popin/rightCol/template/CoffeeHeader.vue","webpack:///src/components/PopinCollection/popin/rightCol/template/CoffeeHeader.vue","webpack:///./src/components/PopinCollection/popin/rightCol/template/CoffeeHeader.vue?6b13","webpack:///./src/components/PopinCollection/popin/rightCol/template/CoffeeHeader.vue?7fbb","webpack:///./src/components/PopinCollection/popin/rightCol/template/ImgHeader.vue","webpack:///src/components/PopinCollection/popin/rightCol/template/ImgHeader.vue","webpack:///./src/components/PopinCollection/popin/rightCol/template/ImgHeader.vue?35e4","webpack:///./src/components/PopinCollection/popin/rightCol/template/ImgHeader.vue?f2d1","webpack:///src/components/PopinCollection/popin/rightCol/ProductHeader.vue","webpack:///./src/components/PopinCollection/popin/rightCol/ProductHeader.vue?3d0d","webpack:///./src/components/PopinCollection/popin/rightCol/ProductHeader.vue?7e49","webpack:///./src/components/PopinCollection/popin/rightCol/ProductSection.vue","webpack:///src/components/PopinCollection/popin/rightCol/ProductSection.vue","webpack:///./src/components/PopinCollection/popin/rightCol/ProductSection.vue?a4f4","webpack:///./src/components/PopinCollection/popin/rightCol/ProductSection.vue?725b","webpack:///./src/components/PopinCollection/popin/rightCol/ProductFooter.vue","webpack:///src/components/PopinCollection/popin/rightCol/ProductFooter.vue","webpack:///./src/components/PopinCollection/popin/rightCol/ProductFooter.vue?8788","webpack:///./src/components/PopinCollection/popin/rightCol/ProductFooter.vue?59e6","webpack:///src/components/PopinCollection/PopinCollection.vue","webpack:///./src/components/PopinCollection/PopinCollection.vue?bf3f","webpack:///./src/components/PopinCollection/PopinCollection.vue?14e1","webpack:///./src/components/PopinCollection/index.js","webpack:///./src/components/PopinCollection/popin/rightCol/ProductHeader.vue?1962","webpack:///./src/components/SlideShow/SlideShow.vue?75a2","webpack:///./src/components/RangesSwiper/RangesSwiper.vue","webpack:///src/components/RangesSwiper/RangesSwiper.vue","webpack:///./src/components/RangesSwiper/RangesSwiper.vue?3138","webpack:///./src/components/RangesSwiper/RangesSwiper.vue?f2bf","webpack:///./src/components/RangesSwiper/index.js","webpack:///./src/components/ItemsCollection/ItemsCollection.vue","webpack:///./src/components/ItemsCollection/components/SingleBackgroundSlot.vue","webpack:///./src/components/Coffee/Coffee.vue","webpack:///src/components/Coffee/Coffee.vue","webpack:///./src/components/Coffee/Coffee.vue?a26d","webpack:///./src/components/Coffee/Coffee.vue?7b19","webpack:///./src/components/Coffee/index.js","webpack:///src/components/ItemsCollection/components/SingleBackgroundSlot.vue","webpack:///./src/components/ItemsCollection/components/SingleBackgroundSlot.vue?ea0f","webpack:///./src/components/ItemsCollection/components/SingleBackgroundSlot.vue?bba0","webpack:///src/components/ItemsCollection/ItemsCollection.vue","webpack:///./src/components/ItemsCollection/ItemsCollection.vue?4691","webpack:///./src/components/ItemsCollection/ItemsCollection.vue?3b02","webpack:///./src/components/ItemsCollection/index.js","webpack:///./src/components/AccessoryRange/AccessoryRange.vue?e9fe","webpack:///./src/components/Testimonials/Testimonial.vue?9726","webpack:///./src/components/AccessoryTile/AccessoryTile.vue?bb19","webpack:///./src/components/CollapsableContent/CollapsableContent.vue?489f","webpack:///./src/assets/js/mixins/tracking.js","webpack:///./src/components/PopinCollection/popin/leftCol/ProductList.vue?c080","webpack:///./src/components/BgTable/BgTable.vue","webpack:///src/components/BgTable/BgTable.vue","webpack:///./src/components/BgTable/BgTable.vue?c1d0","webpack:///./src/components/BgTable/BgTable.vue?88d8","webpack:///./src/main.js","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapsible.vue?3027","webpack:///./src/plugins/bootstrap.js","webpack:///./src/components/StickyMenuBar/StickyMenuBar.vue?26b2","webpack:///./src/components/ReadMoreAccordion/ReadMoreAccordion.vue?1eb7","webpack:///./src/components/Coffee/Coffee.vue?0b17","webpack:///./src/components/Ranges/Ranges.vue","webpack:///src/components/Ranges/Ranges.vue","webpack:///./src/components/Ranges/Ranges.vue?2169","webpack:///./src/components/Ranges/Ranges.vue?482a","webpack:///./src/components/Ranges/index.js","webpack:///./src/components/Testimonials/Testimonials.vue?5a3e","webpack:///./src/components/ItemsCollection/components/SingleBackgroundSlot.vue?c250","webpack:///./src/components/PopinCollection/popin/rightCol/template/CoffeeHeader.vue?7ca5","webpack:///./src/components/Testimonials/Testimonials.vue","webpack:///./src/components/SlideShow/SlideShow.vue","webpack:///./src/components/SlideShow/js/pad.js","webpack:///src/components/SlideShow/SlideShow.vue","webpack:///./src/components/SlideShow/SlideShow.vue?e7a9","webpack:///./src/components/SlideShow/SlideShow.vue?b6f6","webpack:///./src/components/SlideShow/SlideShowSlide.vue","webpack:///src/components/SlideShow/SlideShowSlide.vue","webpack:///./src/components/SlideShow/SlideShowSlide.vue?41cd","webpack:///./src/components/SlideShow/SlideShowSlide.vue?5fea","webpack:///./src/components/Testimonials/Testimonial.vue","webpack:///src/components/Testimonials/Testimonial.vue","webpack:///./src/components/Testimonials/Testimonial.vue?5ca1","webpack:///./src/components/Testimonials/Testimonial.vue?a738","webpack:///src/components/Testimonials/Testimonials.vue","webpack:///./src/components/Testimonials/Testimonials.vue?9cc3","webpack:///./src/components/Testimonials/Testimonials.vue?1d7b","webpack:///./src/components/Testimonials/index.js","webpack:///./src/assets/js/mixins/mobileBar.js","webpack:///./src/components/BgTable/index.js","webpack:///./src/components/PopinCollection/popin/rightCol/ProductSection.vue?e7ef","webpack:///./src/components/PopinCollection/PopinCollection.vue?1d34","webpack:///./src/components/RangesSwiper/RangesSwiper.vue?3e12","webpack:///./src/components/Ranges/Ranges.vue?da5f","webpack:///./src/components/AccessoryRange/AccessoryRange.vue","webpack:///./src/components/AccessoryTile/AccessoryTile.vue","webpack:///src/components/AccessoryTile/AccessoryTile.vue","webpack:///./src/components/AccessoryTile/AccessoryTile.vue?8619","webpack:///./src/components/AccessoryTile/AccessoryTile.vue?d9bc","webpack:///./src/components/AccessoryTile/index.js","webpack:///src/components/AccessoryRange/AccessoryRange.vue","webpack:///./src/components/AccessoryRange/AccessoryRange.vue?3793","webpack:///./src/components/AccessoryRange/AccessoryRange.vue?7c98","webpack:///./src/components/AccessoryRange/index.js","webpack:///./src/components/ItemsCollection/ItemsCollection.vue?e08e","webpack:///./src/components/ReadMoreAccordion/ReadMoreAccordion.vue","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapseButton.vue","webpack:///src/components/ReadMoreAccordion/ReadMoreCollapseButton.vue","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapseButton.vue?5ad7","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapseButton.vue?9557","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapsible.vue","webpack:///src/components/ReadMoreAccordion/ReadMoreCollapsible.vue","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapsible.vue?15e7","webpack:///./src/components/ReadMoreAccordion/ReadMoreCollapsible.vue?200f","webpack:///src/components/ReadMoreAccordion/ReadMoreAccordion.vue","webpack:///./src/components/ReadMoreAccordion/ReadMoreAccordion.vue?24c9","webpack:///./src/components/ReadMoreAccordion/ReadMoreAccordion.vue?1fb9","webpack:///./src/components/ReadMoreAccordion/index.js","webpack:///./src/components/BgTable/BgTable.vue?3e05"],"names":["render","_vm","this","_c","_self","staticClass","class","jsonKey","json","textPosition","v_opened","isOpen","attrs","dataLabel","id","on","toggleArea","domProps","_s","buttonTitle","content","headline","_e","content1","_t","content2","small","staticRenderFns","props","data","$root","_json","created","titleClose","methods","titleOpen","component","CollapsableContent","ref","style","customStyle","$breakpoint","isS","_l","menus","menu","index","key","activeButton","link","menuLink","txt","$event","setActiveMenu","menuExists","handleClick","name","components","Heading","Grid","GridItem","Cta","type","Array","Boolean","default","String","swiper","sectionsIds","mounted","setSticky","Swiper","scrollbar","el","hide","slidesPerView","spaceBetween","pagination","clickable","getSectionsIds","setActiveMenuByScrollPosition","destroyed","window","removeEventListener","_link$split","split","_link$split2","_slicedToArray","anchor","replace","hasOwnProperty","$json","_menuLink$split","_menuLink$split2","minus","deferred","Deferred","scrollToObj","scrollTo","scrollDuration","indexOf","document","querySelector","getBoundingClientRect","Error","$refs","sticky_menu_bar","isIE","isEdge","height","top","pos","position","outerHeight","pageYOffset","initialTimestamp","performance","now","currentTime","initialScroll","deltaScroll","viewportHeight","innerHeight","bodyHeight","body","clientHeight","Math","abs","finalTimestamp","step","currentTimestamp","moveStep","requestAnimationFrame","setTimeout","resolve","promise","trackingLabel","Tracking","customEvent","category","action","label","$landing","trackingLabelPrefix","interaction","menuPosition","offset","addEventListener","dataLayer","isMosaic","classList","add","remove","sectionsIdsTemp","forEach","temp","push","throttle","i","length","section","offsetTop","slideTo","passive","StickyMenuBar","voice","close","$emit","model","value","popinOpened","callback","$$v","expression","header","slot","currentItem","addToCart","intensity","list","tracking","val","popin","slide","line","lineAPI","back","unslide","shortName","description","Paragraph","collection","product","g_opened","sku","zoneClick","images","icon","capsuleProperties","_b","constants","MODIFIER_MINI","trackingProductClickLabel","productClick","prop","AddToCart","computed","products","param","g_coffeeHeader","isCoffeeTemplate","g_ImgHeader","CoffeeHeader","ImgHeader","tag","directives","rawName","commons","folder","ext","modifiers","cup","getCupSize","coffeesOL","cupOL","coffeesVL","cupVL","coffee","coffees","img","url","compatibilities","product_compatibility","compatibility","getImgUrl","project","Visual","beforeMount","Vue","then","m","bundled","mixins","getProductAndClean","Popin","LeftCol","RightCol","NaturalScroll","InnerScroll","CollectionTitle","ProductList","ProductHeader","ProductSection","ProductFooter","Object","required","needTracking","isTracked","watch","getDefaultItem","open","arguments","undefined","$trackingLandingLabel","parseHTML","textContent","findPopinItem","find","item","lineFromAPI","technologies","pop","console","log","PopinCollection","collections","capsules","nativeOn","clickTile","popinHeader","config","popinList","handleChange","Tile","landing","currentCollection","tile","slidesPerview","title","isM","rangeSwiperContainer","width","documentElement","clientWidth","centeredSlides","simulateTouch","paginationClickable","nextButton","prevButton","centerPagination","goToMiddleItem","collectionChange","$set","openPopin","activeIndex","currentItemParam","toUpperCase","slice","$nextTick","goToSlide","nbItems","middleItem","round","swiperPagination","swiperPaginationWidth","offsetWidth","left","RangesSwiper","itemsCollection","backgroundImage","subHeader","swiperOption","activeProduct","_v","ofText","isItemCollection","alt","Coffee","Slide","currentParagram","activatedProduct","firstInit","defaultSwiperOption","nextTick","initialSlide","virtualTranslate","$touch","onSlideChangeEnd","SingleBackgroundSlot","BgTable","videoOpen","ItemsCollection","options","productionTip","isMobile","isClassic","require","_ref","App","centralLandingAlias","sectionTrackingLabels","trackingLabelTxt","use","VueLanding","skipMutationKeys","additionalBrands","globalTracking","h","prototype","b","a","c","Number","ceil","floor","Ranges","contrast","totalSlides","_uid","_f","currentSlideIndex","string","size","swiperOptions","slideToClickedSlide","runCallbacksOnInit","filters","pad","toString","$slots","filter","child","componentOptions","assign","container","beforeDestroy","destroy","avatar","suffix","backgroundPosition","backgroundSize","backgroundRepeat","full_name","jobTitle","quote","job","Zone","Testimonial","SlideShow","SlideShowSlide","Testimonials","targetNode","getElementById","updateBreadcrumb","state","breadcrumb","toggle","mutationsList","observer","mutation","target","contains","MutationObserver","attributes","attributeFilter","observe","event","disconnect","accessories","accessory","getImage","getLink","getName","getText","cta","link_mobile","useResponsiveImg","desc","AccessoryTile","defaultSwiperOptions","AccessoryRange","titleOpened","titleClosed","items","g_open","feature","_this$feature","ReadMoreCollapseButton","ReadMoreCollapsible","ReadMoreAccordion"],"mappings":"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","file":"js/chunk-common.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('section',{staticClass:\"vue_collapsableContent v_sectionLight\",class:['v_' + _vm.jsonKey, 'v_section' + _vm.json.textPosition, { v_opened: _vm.isOpen }],attrs:{\"data-label\":_vm.json.dataLabel,\"id\":_vm.json.id}},[_c('h2',{attrs:{\"aria-hidden\":\"true\"}},[_c('button',{attrs:{\"tabindex\":\"-1\"},on:{\"click\":_vm.toggleArea}},[_c('div',[_c('span',{domProps:{\"textContent\":_vm._s(_vm.buttonTitle)}})]),_c('i',{staticClass:\"fn_more\"})])]),_c('div',{staticClass:\"v_sectionRestrict\"},[_c('div',{staticClass:\"v_sectionContent\"},[_c('div',{staticClass:\"v_text\"},[(_vm.json.content.headline)?_c('p',{staticClass:\"v_headline\",attrs:{\"data-wow\":\"\"},domProps:{\"innerHTML\":_vm._s(_vm.json.content.headline)}}):_vm._e(),(_vm.json.content.content1)?_c('div',{staticClass:\"v_wysiwyg content1\",attrs:{\"data-wow\":\"\"},domProps:{\"innerHTML\":_vm._s(_vm.json.content.content1)}}):_vm._e(),_vm._t(\"default\"),(_vm.json.content.content2)?_c('div',{staticClass:\"v_wysiwyg content2\",attrs:{\"data-wow\":\"\"},domProps:{\"innerHTML\":_vm._s(_vm.json.content.content2)}}):_vm._e(),(_vm.json.content.small)?_c('div',{staticClass:\"v_wysiwyg content-small\",attrs:{\"data-wow\":\"\"}},[_c('small',{domProps:{\"innerHTML\":_vm._s(_vm.json.content.small)}})]):_vm._e()],2)])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import sass/collapsableContent\n</style>\n\n<template>\n <section\n :class=\"['v_' + jsonKey, 'v_section' + json.textPosition, { v_opened: isOpen }]\"\n :data-label=\"json.dataLabel\"\n :id=\"json.id\"\n class=\"vue_collapsableContent v_sectionLight\">\n <h2 aria-hidden=\"true\">\n <button\n @click=\"toggleArea\"\n tabindex=\"-1\">\n <div><span v-text=\"buttonTitle\"></span></div>\n <i class=\"fn_more\"></i>\n </button>\n </h2>\n <div class=\"v_sectionRestrict\">\n <div class=\"v_sectionContent\">\n <div class=\"v_text\">\n <p\n class=\"v_headline\"\n data-wow\n v-html=\"json.content.headline\"\n v-if=\"json.content.headline\"></p>\n <div\n class=\"v_wysiwyg content1\"\n data-wow\n v-html=\"json.content.content1\"\n v-if=\"json.content.content1\"></div>\n <slot></slot>\n <div\n class=\"v_wysiwyg content2\"\n data-wow\n v-html=\"json.content.content2\"\n v-if=\"json.content.content2\"></div>\n <div\n class=\"v_wysiwyg content-small\"\n data-wow\n v-if=\"json.content.small\">\n <small v-html=\"json.content.small\"></small>\n </div>\n </div>\n </div>\n </div>\n </section>\n</template>\n\n<script>\n// import 'nespresso-library/src/core/landing'\n\n/*\nconst readMoreMap = {\n moreHarmonicsIngredients: 'Blend composition',\n moreTerroirRoasting: 'Terroir specific',\n moreCapturingFreshness: 'Capturing freshness'\n}\n*/\n\nexport default {\n props: ['jsonKey'],\n data () {\n return {\n json: this.$root._json[this.jsonKey],\n isOpen: false,\n buttonTitle: null\n }\n },\n created () {\n this.buttonTitle = this.json.titleClose\n },\n methods: {\n toggleArea () {\n this.isOpen = !this.isOpen\n if (this.isOpen === true) {\n this.buttonTitle = this.json.titleOpen\n } else {\n this.buttonTitle = this.json.titleClose\n }\n }\n }\n /*\n watch: {\n isOpen (value) {\n if (value && !this.tracked) {\n this.tracked = true\n window.landing.tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `Find your Grand Cru - ${readMoreMap[this.jsonKey]} - Read more`,\n interaction: 0\n })\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!./CollapsableContent.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!./CollapsableContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CollapsableContent.vue?vue&type=template&id=060b4178&\"\nimport script from \"./CollapsableContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CollapsableContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CollapsableContent.vue?vue&type=style&index=0&id=060b4178&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 CollapsableContent from './CollapsableContent'\n\nexport default CollapsableContent\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:\"sticky_menu_bar\",staticClass:\"sticky_menu_bar v_swiper\",style:(_vm.customStyle)},[(!_vm.$breakpoint.isS)?_c('Grid',{staticClass:\"g_\",attrs:{\"type\":\"ul\"}},_vm._l((_vm.menus),function(menu,index){return _c('GridItem',{key:index},[(_vm.menuExists(menu.link))?_c('Cta',{class:['g_h4', (_vm.activeButton === true && menu.link === _vm.menuLink)?'txt_gold':''],attrs:{\"content\":menu.txt,\"type\":\"button\"},on:{\"click\":function($event){return _vm.handleClick(menu.link)}}}):_vm._e()],1)}),1):_c('div',{staticClass:\"v_swiperOverflow\"},[_c('div',{staticClass:\"swiper-container menu-swiper-container\"},[_c('div',{staticClass:\"divider\"}),_c('div',{staticClass:\"swiper-wrapper\"},_vm._l((_vm.menus),function(menu,index){return _c('div',{key:index,staticClass:\"swiper-slide\"},[(false)?_c('div',[_c('img'),_c('Heading',{attrs:{\"level\":2},domProps:{\"innerHTML\":_vm._s(_vm.business.title)}}),_c('Paragraph',{attrs:{\"content\":_vm.business.subtitle,\"size\":\"L\"}})],1):_c('Cta',{class:['g g_h4', (_vm.activeButton===true && menu.link === _vm.menuLink)?'txt_gold':''],attrs:{\"content\":menu.txt,\"scrollTo\":menu.link,\"type\":\"button\"},on:{\"click\":function($event){return _vm.setActiveMenu(menu.link)}}})],1)}),0),_c('div',{staticClass:\"swiper-scrollbar\"})])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import sass/stickyMenuBar\n</style>\n\n<template>\n <div\n :style=\"customStyle\"\n ref=\"sticky_menu_bar\"\n class=\"sticky_menu_bar v_swiper\">\n <Grid\n class=\"g_\"\n type=\"ul\"\n v-if=\"!$breakpoint.isS\">\n <GridItem\n :key=\"index\"\n v-for=\"(menu, index) in menus\">\n <Cta\n :class=\"['g_h4', (activeButton === true && menu.link === menuLink)?'txt_gold':'']\"\n :content=\"menu.txt\"\n @click=\"handleClick(menu.link)\"\n type=\"button\"\n v-if=\"menuExists(menu.link)\" />\n </GridItem>\n </Grid>\n <div\n class=\"v_swiperOverflow\"\n v-else>\n <div class=\"swiper-container menu-swiper-container\">\n <div class=\"divider\"></div>\n <div class=\"swiper-wrapper\">\n <div\n :key=\"index\"\n class=\"swiper-slide\"\n v-for=\"(menu, index) in menus\">\n <div v-if=\"false\">\n <img />\n <Heading\n :level=\"2\"\n v-html=\"business.title\" />\n <Paragraph\n :content=\"business.subtitle\"\n size=\"L\" />\n </div>\n <Cta\n :class=\"['g g_h4', (activeButton===true && menu.link === menuLink)?'txt_gold':'']\"\n :content=\"menu.txt\"\n :scrollTo=\"menu.link\"\n @click=\"setActiveMenu(menu.link)\"\n type=\"button\"\n v-else />\n </div>\n </div>\n <!-- Add Scrollbar -->\n <div class=\"swiper-scrollbar\"></div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n// Lib\nimport 'core-js/fn/array/fill'\nimport throttle from 'nespresso-library/src/utils/throttle'\nimport { outerHeight, position, offset } from 'gaspard'\n// Component\nimport Heading from 'gvue/src/core/Heading'\nimport { Grid, GridItem } from 'gvue/src/core/Grid'\nimport Cta from 'gvue/src/core/Cta'\n\nimport Swiper from 'nespresso-components/swiper/swiper.core'\nimport isIE, { isEdge } from 'nespresso-library/src/utils/userAgent.js'\nimport dataLayer from 'nespresso-library/src/core/dataLayer'\nimport Tracking from 'nespresso-library/src/core/tracking'\nimport Deferred from 'nespresso-library/src/utils/deferred'\n\nexport default {\n name: 'StickyMenuBar',\n components: {\n Heading,\n Grid,\n GridItem,\n Cta\n },\n props: {\n menus: {\n type: Array\n }\n },\n data () {\n return {\n activeButton: {\n type: Boolean,\n default: false\n },\n menuLink: {\n type: String,\n default: ''\n },\n swiper: {\n default: null\n },\n sectionsIds: {\n type: Array,\n default: []\n },\n customStyle: {\n type: String,\n default: ''\n }\n }\n },\n mounted () {\n this.setSticky()\n this.swiper = new Swiper('.menu-swiper-container', {\n scrollbar: {\n el: '.swiper-scrollbar',\n hide: true\n },\n slidesPerView: 'auto',\n spaceBetween: 0,\n pagination: {\n el: '.swiper-pagination',\n clickable: true\n }\n })\n this.getSectionsIds(this.menus)\n this.setActiveMenuByScrollPosition(this.sectionsIds, this.menus)\n },\n destroyed () {\n window.removeEventListener('scroll', function () {\n })\n },\n methods: {\n menuExists (link) {\n let [anchor] = link.split(',')\n anchor = anchor.replace('#', '')\n if (anchor.hasOwnProperty('hide')) {\n return !this.$json[anchor].hide\n } else {\n return true\n }\n },\n handleClick (menuLink) {\n const [anchor, minus] = menuLink.split(',')\n // scrollTo.default(anchor[0] !== '#' ? '#' + anchor : anchor, minus)\n\n const deferred = new Deferred()\n let scrollTo = anchor\n let scrollDuration = minus\n //\n // Set a default for where we're scrolling to\n //\n let scrollToObj\n const type = typeof scrollTo\n if (['string', 'object'].indexOf(type) > -1) {\n scrollToObj = scrollTo\n if (type === 'string') {\n // Assuming this is a selector we can use to find an element\n scrollToObj = document.querySelector(scrollTo)\n }\n\n if (scrollToObj && typeof scrollToObj.getBoundingClientRect === 'function') {\n const menu = this.$refs.sticky_menu_bar\n // const menuPosition = offset(menu).top\n let el = document.querySelector('.g_nav')\n // On IE and Edge element g_nav is not sticky\n if (isIE() || isEdge()) {\n el = document.querySelector('.Header__top-wrapper')\n }\n let height = 140\n let top = 0\n if (el) {\n const pos = position(el)\n top = pos.top\n height = outerHeight(el, true) + top\n }\n scrollTo = window.pageYOffset + scrollToObj.getBoundingClientRect().top - outerHeight(menu, true) - height\n } else {\n throw new Error(`error: No element found with the selector \"${scrollTo}\"`)\n }\n } else if (typeof scrollTo !== 'number') {\n // If it's nothing above and not an integer, we assume top of the window\n scrollTo = 0\n }\n\n //\n // Set a default for the duration\n //\n if (typeof scrollDuration !== 'number' || scrollDuration < 0) {\n scrollDuration = 500\n }\n\n // Declarations\n let initialTimestamp = window.performance.now()\n let currentTime = 0\n let initialScroll = window.pageYOffset\n let deltaScroll = initialScroll - scrollTo\n let viewportHeight = window.innerHeight\n let bodyHeight = document.body.clientHeight\n\n // Set scrollDuration indexed on the amount of scroll\n if (deltaScroll <= viewportHeight) {\n // scrollDuration = Math.abs(scrollDuration * Math.sin(Math.abs(deltaScroll) / viewportHeight * Math.PI / 2))\n // scrollDuration = scrollDuration\n } else {\n scrollDuration = Math.abs(scrollDuration + scrollDuration * (Math.abs(deltaScroll) / (bodyHeight - viewportHeight)))\n }\n\n let finalTimestamp = initialTimestamp + scrollDuration\n\n function step () {\n let currentTimestamp = window.performance.now()\n if (currentTimestamp < finalTimestamp) {\n currentTime = (currentTimestamp - initialTimestamp) / scrollDuration\n // currentTime = currentTime * (2 - currentTime) // easeOutQuad\n currentTime = (--currentTime) * currentTime * currentTime + 1 // easeOutCubic\n const moveStep = deltaScroll * currentTime\n window.scrollTo(0, scrollTo + (deltaScroll - moveStep))\n window.requestAnimationFrame(step)\n } else {\n window.scrollTo(0, scrollTo)\n setTimeout(() => deferred.resolve(), 125)\n }\n return deferred.promise\n }\n\n window.requestAnimationFrame(step)\n\n if (this.trackingLabel) {\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$landing.trackingLabelPrefix} - CTA - ${this.trackingLabel}`,\n interaction: 0\n })\n }\n this.setActiveMenu(menuLink)\n },\n setActiveMenu (menuLink) {\n this.activeButton = true\n this.menuLink = menuLink\n },\n setSticky () {\n const menu = this.$refs.sticky_menu_bar\n const menuPosition = offset(menu).top\n window.addEventListener('scroll', () => {\n let el = document.querySelector('.g_nav')\n // On IE and Edge element g_nav is not sticky\n if (isIE() || isEdge()) {\n el = document.querySelector('.Header__top-wrapper')\n }\n let height = 140\n let top = 0\n if (el) {\n const pos = position(el)\n top = pos.top\n height = outerHeight(el) + top\n }\n if ((isIE() && dataLayer.isMosaic) || !isIE()) {\n if (!this.$breakpoint.isS && window.pageYOffset >= menuPosition - height + 100) {\n menu.classList.add('sticky')\n this.customStyle = `top:${height}px`\n } else if (this.$breakpoint.isS && window.pageYOffset >= menuPosition) {\n menu.classList.add('sticky')\n this.customStyle = `top:${height}px`\n } else {\n menu.classList.remove('sticky')\n this.customStyle = ''\n }\n }\n })\n },\n getSectionsIds (menus) {\n const sectionsIdsTemp = []\n menus.forEach(menu => {\n const temp = menu.link.split(',')\n sectionsIdsTemp.push(temp[0])\n })\n this.sectionsIds = sectionsIdsTemp\n },\n setActiveMenuByScrollPosition (sectionsIds, menus) {\n window.addEventListener('scroll', throttle(() => {\n let i = 0\n for (i; i < sectionsIds.length; i++) {\n if (!this.menuExists(sectionsIds[i])) {\n continue\n }\n\n const section = document.querySelector(sectionsIds[i])\n if (section && window.pageYOffset >= section.offsetTop - 200) {\n this.setActiveMenu(menus[i].link)\n\n if (this.$breakpoint.isS) {\n this.swiper.slideTo(i, 300)\n }\n }\n }\n }, 10), { passive: true })\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!./StickyMenuBar.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!./StickyMenuBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StickyMenuBar.vue?vue&type=template&id=a16b3342&\"\nimport script from \"./StickyMenuBar.vue?vue&type=script&lang=js&\"\nexport * from \"./StickyMenuBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StickyMenuBar.vue?vue&type=style&index=0&id=a16b3342&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 StickyMenuBar from './StickyMenuBar'\n\nexport default StickyMenuBar\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Popin',{ref:\"popin\",staticClass:\"g_popinCollection\",attrs:{\"closeLabel\":_vm.voice.close},on:{\"focusBack\":function($event){return _vm.$emit('focusBack')}},model:{value:(_vm.popinOpened),callback:function ($$v) {_vm.popinOpened=$$v},expression:\"popinOpened\"}},[_vm._t(\"main\",function(){return [_vm._t(\"leftCol\",function(){return [_c('LeftCol',[_vm._t(\"title\",function(){return [_c('CollectionTitle',{attrs:{\"slot\":\"title\",\"header\":_vm.header},slot:\"title\"})]},{\"slot\":\"title\"}),_c('NaturalScroll',{attrs:{\"slot\":\"content\"},slot:\"content\"},[_vm._t(\"list\",function(){return [(_vm.currentItem)?_c('ProductList',{attrs:{\"addToCart\":_vm.addToCart,\"intensity\":_vm.intensity,\"list\":_vm.list,\"tracking\":_vm.tracking},on:{\"change\":val => { _vm.$emit('change', val); _vm.$refs.popin.slide() }},model:{value:(_vm.currentItem),callback:function ($$v) {_vm.currentItem=$$v},expression:\"currentItem\"}}):_vm._e()]})],2)],2)]}),_vm._t(\"rightCol\",function(){return [_c('RightCol',[_vm._t(\"header\",function(){return [_vm._t(\"beforeHeader\",null,{\"slot\":\"beforeHeader\"}),_vm._t(\"customHeader\",function(){return [(_vm.currentItem)?_c('ProductHeader',{attrs:{\"data\":_vm.currentItem,\"intensity\":_vm.intensity,\"line\":_vm.line ? _vm.line : _vm.lineAPI,\"voice\":_vm.voice},on:{\"back\":() => { _vm.$refs.popin.unslide() }}},[_vm._t(\"beforeTitle\",null,{\"slot\":\"beforeTitle\"}),_vm._t(\"imgBackground\",null,{\"slot\":\"imgBackground\",\"data\":_vm.currentItem})],2):_vm._e()]},{\"slot\":\"header\",\"item\":_vm.currentItem}),_vm._t(\"afterHeader\",null,{\"slot\":\"afterHeader\"})]}),_c('InnerScroll',{attrs:{\"slot\":\"section\"},slot:\"section\"},[_vm._t(\"content\",function(){return [_vm._t(\"beforeContent\",null,{\"slot\":\"beforeContent\",\"item\":_vm.currentItem}),(_vm.currentItem)?_c('ProductSection',{attrs:{\"data\":_vm.currentItem}}):_vm._e(),_vm._t(\"afterContent\",null,{\"slot\":\"afterContent\",\"item\":_vm.currentItem})]})],2),_vm._t(\"footer\",function(){return [_vm._t(\"beforeFooter\",null,{\"slot\":\"beforeFooter\",\"item\":_vm.currentItem}),(_vm.currentItem)?_c('ProductFooter',{attrs:{\"slot\":\"footer\",\"addToCart\":_vm.addToCart,\"data\":_vm.currentItem,\"tracking\":_vm.tracking},slot:\"footer\"}):_vm._e(),_vm._t(\"afterFooter\",null,{\"slot\":\"afterFooter\",\"item\":_vm.currentItem})]})],2)]})]})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.header)?_c('div',{staticClass:\"g_popinTitle\"},[(_vm.$breakpoint.isS && _vm.header.shortName)?_c('Heading',{attrs:{\"level\":2,\"fake\":\"\"},domProps:{\"innerHTML\":_vm._s(_vm.header.shortName)}}):_c('Heading',{attrs:{\"level\":2,\"fake\":\"\"},domProps:{\"innerHTML\":_vm._s(_vm.header.name)}}),_c('Paragraph',{attrs:{\"content\":_vm.header.description}})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div\n class=\"g_popinTitle\"\n v-if=\"header\">\n <Heading\n :level=\"2\"\n fake\n v-html=\"header.shortName\"\n v-if=\"$breakpoint.isS && header.shortName\" />\n <Heading\n :level=\"2\"\n fake\n v-else\n v-html=\"header.name\" />\n <Paragraph :content=\"header.description\" />\n </div>\n</template>\n\n<script>\nimport Heading from 'gvue/src/core/Heading'\nimport Paragraph from 'gvue/src/core/Paragraph'\n\nexport default {\n name: 'CollectionTitle',\n components: {\n Heading,\n Paragraph\n },\n props: ['header'],\n data () {\n return {\n collection: this.data\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!./CollectionTitle.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!./CollectionTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CollectionTitle.vue?vue&type=template&id=9e54dc96&\"\nimport script from \"./CollectionTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./CollectionTitle.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 render(){var _vm=this,_c=_vm._self._c;return (_vm.list)?_c('div',{ref:\"list\",staticClass:\"g_productContent\"},[_c('ul',{staticClass:\"g_productList\"},_vm._l((_vm.list),function(product,index){return _c('li',{key:index,staticClass:\"g_productItem\",class:{g_opened: _vm.currentItem && product.sku === _vm.currentItem.sku}},[_c('div',{staticClass:\"g_clickableZone\",on:{\"click\":function($event){return _vm.zoneClick(product)}}}),_c('div',{staticClass:\"g_table\"},[_c('div',{staticClass:\"g_cell\"},[(product.data)?_c('img',{attrs:{\"src\":product.data.images.icon,\"alt\":\"\"}}):_vm._e()]),_c('div',{staticClass:\"g_cell\"},[(product.data)?_c('div',[_c('Heading',{attrs:{\"level\":5,\"fake\":\"\"},domProps:{\"innerHTML\":_vm._s(product.data.name)}}),(product.data.capsuleProperties)?[(product.data.capsuleProperties.intensity && product.data.capsuleProperties.intensity !== '')?_c('p',{staticClass:\"g_txt_XS g_intensity\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.intensity + ' ')}}),_c('span',{domProps:{\"innerHTML\":_vm._s(product.data.capsuleProperties.intensity)}})]):_vm._e()]:_vm._e(),(product.data.headline && product.data.headline !== '')?_c('p',{staticClass:\"g_txt_XS\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(product.data.headline)}})]):_vm._e()],2):_vm._e()]),_c('div',{staticClass:\"g_cell\"},[_c('AddToCart',_vm._b({attrs:{\"modifier\":_vm.constants.MODIFIER_MINI,\"product\":product,\"tracking\":{ list: _vm.trackingProductClickLabel, position: index },\"translations\":_vm.addToCart},on:{\"click\":_vm.productClick}},'AddToCart',product.addToCart,false))],1)])])}),0)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import ~gvue/src/core/Popin/sass/variables\n@import ~gvue/src/core/Popin/ProductList/sass/productList\n@import ~gvue/src/core/Popin/ProductList/sass/productListHover\n</style>\n\n<template>\n <div\n class=\"g_productContent\"\n ref=\"list\"\n v-if=\"list\">\n <ul class=\"g_productList\">\n <li\n :class=\"{g_opened: currentItem && product.sku === currentItem.sku}\"\n :key=\"index\"\n class=\"g_productItem\"\n v-for=\"(product, index) in list\">\n <div\n @click=\"zoneClick(product)\"\n class=\"g_clickableZone\" />\n <div class=\"g_table\">\n <div class=\"g_cell\">\n <img\n :src=\"product.data.images.icon\"\n alt=\"\"\n v-if=\"product.data\" />\n </div>\n <div class=\"g_cell\">\n <div v-if=\"product.data\">\n <Heading\n :level=\"5\"\n fake\n v-html=\"product.data.name\" />\n <template v-if=\"product.data.capsuleProperties\">\n <p\n class=\"g_txt_XS g_intensity\"\n v-if=\"product.data.capsuleProperties.intensity && product.data.capsuleProperties.intensity !== ''\">\n <span v-html=\"intensity + ' '\"></span>\n <span v-html=\"product.data.capsuleProperties.intensity\"></span>\n </p>\n </template>\n <p\n class=\"g_txt_XS\"\n v-if=\"product.data.headline && product.data.headline !== ''\">\n <span v-html=\"product.data.headline\" />\n </p>\n </div>\n </div>\n <div class=\"g_cell\">\n <AddToCart\n :modifier=\"constants.MODIFIER_MINI\"\n :product=\"product\"\n :tracking=\"{ list: trackingProductClickLabel, position: index }\"\n :translations=\"addToCart\"\n @click=\"productClick\"\n v-bind=\"product.addToCart\" />\n </div>\n </div>\n </li>\n </ul>\n </div>\n</template>\n\n<script>\nimport Tracking from 'nespresso-library/src/core/tracking'\nimport Heading from 'gvue/src/core/Heading'\nimport constants from 'nespresso-components/AddToCart/constants'\nimport AddToCart from 'nespresso-components/AddToCart'\n\nexport default {\n name: 'ProductList',\n model: {\n prop: 'currentItem'\n },\n props: ['list', 'intensity', 'currentItem', 'addToCart', 'tracking'],\n components: {\n Heading,\n AddToCart\n },\n data () {\n return {\n constants\n }\n },\n computed: {\n trackingProductClickLabel () {\n return `${this.$landing.trackingLabelPrefix}`\n }\n },\n methods: {\n productClick (product) {\n this.$emit('atc-click', product)\n Tracking.productClick({\n products: [product],\n list: this.trackingProductClickLabel\n })\n },\n zoneClick (product) {\n this.$emit('input', product)\n this.$emit('change', product)\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!./ProductList.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!./ProductList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProductList.vue?vue&type=template&id=679ae917&\"\nimport script from \"./ProductList.vue?vue&type=script&lang=js&\"\nexport * from \"./ProductList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProductList.vue?vue&type=style&index=0&id=679ae917&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 render(){var _vm=this,_c=_vm._self._c;return (_vm.data.data)?_c('div',{staticClass:\"g_productHeader\",class:[_vm.data.param, {g_coffeeHeader: _vm.isCoffeeTemplate(_vm.data), g_ImgHeader: !_vm.isCoffeeTemplate(_vm.data)}]},[_c('Cta',{staticClass:\"g_btnRoundS g_btnBack\",attrs:{\"aria-label\":_vm.voice.back,\"content\":_vm.voice.back,\"fontIcon\":\"fn_angleLeft\",\"type\":\"button\"},on:{\"click\":_vm.back}}),_c(_vm.isCoffeeTemplate(_vm.data) ? _vm.CoffeeHeader : _vm.ImgHeader,{tag:\"component\",attrs:{\"data\":_vm.data,\"intensity\":_vm.intensity,\"line\":_vm.line,\"voice\":_vm.voice}},[_vm._t(\"beforeTitle\",null,{\"slot\":\"beforeTitle\"}),_vm._t(\"imgBackground\",null,{\"slot\":\"imgBackground\"})],2)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/textures`, name: _vm.data.param, ext: 'jpg' }),expression:\"{ commons: true, folder: `coffees/${line}/textures`, name: data.param, ext: 'jpg' }\",modifiers:{\"sync\":true}}],staticClass:\"g_background\"},[_c('div',{staticClass:\"g_product\",class:`g_${_vm.data.cup || _vm.getCupSize(_vm.data.param)}`},[_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/cups`, name: _vm.data.cup || _vm.getCupSize(_vm.data.param), ext: 'png' }),expression:\"{ commons: true, folder: `coffees/${line}/cups`, name: data.cup || getCupSize(data.param), ext: 'png' }\",modifiers:{\"sync\":true}}],staticClass:\"g_cup\"}),_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/cups`, name: _vm.data.cup || _vm.getCupSize(_vm.data.param), ext: 'png' }),expression:\"{ commons: true, folder: `coffees/${line}/cups`, name: data.cup || getCupSize(data.param), ext: 'png' }\",modifiers:{\"sync\":true}}],staticClass:\"g_cup g_reflect\"}),_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/capsules`, name: _vm.data.param, ext: 'png' }),expression:\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\",modifiers:{\"sync\":true}}],staticClass:\"g_capsule\"}),_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/capsules`, name: _vm.data.param, ext: 'png' }),expression:\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\",modifiers:{\"sync\":true}}],staticClass:\"g_capsule g_mask\"}),_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src.sync\",value:({ commons: true, folder: `coffees/${_vm.line}/capsules`, name: _vm.data.param, ext: 'png' }),expression:\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\",modifiers:{\"sync\":true}}],staticClass:\"g_capsule g_reflect\"})])]),_c('div',{staticClass:\"g_title\"},[_vm._t(\"beforeTitle\"),_c('Heading',{attrs:{\"level\":3},domProps:{\"innerHTML\":_vm._s(_vm.data.name || _vm.data.data.name)}}),_c('p',{staticClass:\"g_txt_S\"},[(_vm.data.data.headline && _vm.data.data.headline !== '')?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.data.data.headline + ' -')}}):_vm._e(),(_vm.data.data.capsuleProperties.intensity)?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.intensity + ' ')}}):_vm._e(),(_vm.data.data.capsuleProperties.intensity)?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.data.data.capsuleProperties.intensity)}}):_vm._e()])],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\" rel=\"stylesheet/sass\">\n@import ../sass/coffeeHeader\n</style>\n\n<template>\n <div>\n <div\n class=\"g_background\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/textures`, name: data.param, ext: 'jpg' }\">\n <div\n :class=\"`g_${data.cup || getCupSize(data.param)}`\"\n class=\"g_product\">\n <div\n class=\"g_cup\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/cups`, name: data.cup || getCupSize(data.param), ext: 'png' }\" />\n <div\n class=\"g_cup g_reflect\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/cups`, name: data.cup || getCupSize(data.param), ext: 'png' }\" />\n <div\n class=\"g_capsule\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\" />\n <div\n class=\"g_capsule g_mask\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\" />\n <div\n class=\"g_capsule g_reflect\"\n v-img-src.sync=\"{ commons: true, folder: `coffees/${line}/capsules`, name: data.param, ext: 'png' }\" />\n </div>\n </div>\n <div class=\"g_title\">\n <slot name=\"beforeTitle\" />\n <Heading\n :level=\"3\"\n v-html=\"data.name || data.data.name\" />\n <p class=\"g_txt_S\">\n <span\n v-html=\"data.data.headline + ' -'\"\n v-if=\"data.data.headline && data.data.headline !== ''\" />\n <span v-if=\"data.data.capsuleProperties.intensity\" v-html=\"intensity + ' '\"></span>\n <span v-if=\"data.data.capsuleProperties.intensity\" v-html=\"data.data.capsuleProperties.intensity\"></span>\n </p>\n </div>\n </div>\n</template>\n\n<script>\nimport Heading from 'gvue/src/core/Heading'\n\nexport default {\n name: 'CoffeeHeader',\n components: {\n Heading\n },\n data () {\n return {\n coffeesOL: [\n [\n 'kazaar',\n 'dharkan',\n 'ristretto',\n 'ristretto-decaffeinato',\n 'arpeggio',\n 'arpeggio-decaffeinato',\n 'roma'\n ],\n [\n 'livanto',\n 'capriccio',\n 'volluto',\n 'volluto-decaffeinato',\n 'cosi',\n 'indriya',\n 'rosabaya',\n 'dulsao',\n 'bukeela',\n 'vanilio',\n 'ciocattino',\n 'caramelito',\n 'paris-black',\n 'paris-macaron',\n 'paris-praline'\n ],\n [\n 'envivo',\n 'fortissio',\n 'vivalto',\n 'vivalto-decaffeinato',\n 'linizio'\n ]\n ],\n cupOL: ['ristretto', 'espresso', 'lungo'],\n coffeesVL: [\n [\n 'alto-dolce',\n 'alto-intenso',\n 'dolce'\n ],\n [\n 'intenso',\n 'melozio',\n 'giornio',\n 'odacio',\n 'stormio',\n 'elvazio',\n 'solelio',\n 'decaffeinato',\n 'vanizio',\n 'caramelizio',\n 'hazelino',\n 'chiaro',\n 'scuro',\n 'halfcaffeinato',\n 'paris-exotic-macaron',\n 'paris-madeleine'\n ],\n [\n 'fortado',\n 'arondio',\n 'aflorazio',\n 'decaffeinato-ontuoso'\n ],\n [\n 'double-espresso'\n ],\n [\n 'diavolitto',\n 'altissio',\n 'voltesso',\n 'decaffeinato-intenso',\n 'paris-black'\n ]\n ],\n cupVL: ['alto', 'mug', 'granlungo', 'doubleespresso', 'espresso']\n }\n },\n props: ['data', 'voice', 'line', 'intensity'],\n methods: {\n getCupSize (coffee) {\n if (this.line === 'OL') {\n let index = -1\n this.coffeesOL.forEach((coffees, i) => {\n if (coffees.indexOf(coffee) > -1) {\n index = i\n }\n })\n return (index !== -1) ? this.cupOL[index] : 'espresso'\n } else if (this.line === 'VL') {\n let index = -1\n this.coffeesVL.forEach((coffees, i) => {\n if (coffees.indexOf(coffee) > -1) {\n index = i\n }\n })\n return (index !== -1) ? this.cupVL[index] : 'mug'\n } else {\n return 'espresso'\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!./CoffeeHeader.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!./CoffeeHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CoffeeHeader.vue?vue&type=template&id=e0175822&\"\nimport script from \"./CoffeeHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./CoffeeHeader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CoffeeHeader.vue?vue&type=style&index=0&id=e0175822&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 render(){var _vm=this,_c=_vm._self._c;return _c('div',[_vm._t(\"imgBackground\",function(){return [(_vm.data.img)?_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:({ commons: true, folder: `accessories/view`, name: _vm.$breakpoint.isS ? _vm.data.img : _vm.data.img.replace('min', 'pop'), ext: 'jpg' }),expression:\"{ commons: true, folder: `accessories/view`, name: $breakpoint.isS ? data.img : data.img.replace('min', 'pop'), ext: 'jpg' }\"}],staticClass:\"g_background\"}):_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:({ url: _vm.data.data.images.icon }),expression:\"{ url: data.data.images.icon }\"}],staticClass:\"g_background g_api\"})]},{\"data\":_vm.data}),(_vm.data.compatibilities)?_c('div',{staticClass:\"g_compatibilities\"},[_c('p',{staticClass:\"g_visually_hidden\",domProps:{\"innerHTML\":_vm._s(_vm.voice.product_compatibility)}}),_c('Grid',{staticClass:\"g_features\",attrs:{\"type\":\"ul\"}},_vm._l((_vm.data.compatibilities),function(compatibility,index){return _c('GridItem',{key:index,staticClass:\"g_feature\"},[_c('Visual',{staticClass:\"g_txt_XS\",attrs:{\"svg\":_vm.$landing.getImgUrl({ project: true, folder: 'range', name: compatibility.icon, ext: 'svg' })}}),_c('span',{staticClass:\"g_txt_XS\",domProps:{\"innerHTML\":_vm._s(compatibility.txt)}})],1)}),1)],1):_vm._e(),_c('div',{staticClass:\"g_title\"},[_vm._t(\"beforeTitle\"),_c('Heading',{attrs:{\"fake\":true,\"level\":3},domProps:{\"innerHTML\":_vm._s(_vm.data.name || _vm.data.data.name)}})],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <slot\n :data=\"data\"\n name=\"imgBackground\">\n <div\n class=\"g_background\"\n v-if=\"data.img\"\n v-img-src=\"{ commons: true, folder: `accessories/view`, name: $breakpoint.isS ? data.img : data.img.replace('min', 'pop'), ext: 'jpg' }\" />\n <div\n class=\"g_background g_api\"\n v-else\n v-img-src=\"{ url: data.data.images.icon }\" />\n </slot>\n <div\n class=\"g_compatibilities\"\n v-if=\"data.compatibilities\">\n <p\n class=\"g_visually_hidden\"\n v-html=\"voice.product_compatibility\" />\n <Grid\n class=\"g_features\"\n type=\"ul\">\n <GridItem\n :key=\"index\"\n class=\"g_feature\"\n v-for=\"(compatibility, index) in data.compatibilities\">\n <Visual\n :svg=\"$landing.getImgUrl({ project: true, folder: 'range', name: compatibility.icon, ext: 'svg' })\"\n class=\"g_txt_XS\" />\n <span\n class=\"g_txt_XS\"\n v-html=\"compatibility.txt\" />\n </GridItem>\n </Grid>\n </div>\n <div class=\"g_title\">\n <slot name=\"beforeTitle\" />\n <Heading\n :fake=\"true\"\n :level=\"3\"\n v-html=\"data.name || data.data.name\" />\n </div>\n </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport Heading from 'gvue/src/core/Heading'\nimport { Grid, GridItem } from 'gvue/src/core/Grid'\nimport Visual from 'gvue/src/core/Visual'\n\nexport default {\n name: 'ProductHeader',\n components: {\n Heading,\n Grid,\n GridItem,\n Visual\n },\n props: ['data', 'voice'],\n beforeMount () {\n if (this.data.compatibilities) {\n Vue.component('Grid', () => import(/* webpackChunkName: \"Grid\" */ 'gvue/src/core/Grid/Grid.vue').then(m => m.default))\n Vue.component('GridItem', () => import(/* webpackChunkName: \"GridItem\" */ 'gvue/src/core/Grid/GridItem.vue').then(m => m.default))\n Vue.component('Visual', () => import(/* webpackChunkName: \"Visual\" */ 'gvue/src/core/Visual/Visual.vue').then(m => m.default))\n Vue.component('Paragraph', () => import(/* webpackChunkName: \"Paragraph\" */ 'gvue/src/core/Paragraph/Paragraph.vue').then(m => m.default))\n import(/* webpackChunkName: \"compatibilities\" */ '../sass/compatibilities.sass')\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!./ImgHeader.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!./ImgHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImgHeader.vue?vue&type=template&id=1092bb32&\"\nimport script from \"./ImgHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./ImgHeader.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","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import ~gvue/src/core/Popin/sass/variables\n@import sass/productHeader\n</style>\n\n<template>\n <div\n :class=\"[data.param, {g_coffeeHeader: isCoffeeTemplate(data), g_ImgHeader: !isCoffeeTemplate(data)}]\"\n class=\"g_productHeader\"\n v-if=\"data.data\">\n <Cta\n :aria-label=\"voice.back\"\n :content=\"voice.back\"\n @click=\"back\"\n class=\"g_btnRoundS g_btnBack\"\n fontIcon=\"fn_angleLeft\"\n type=\"button\" />\n <component\n :data=\"data\"\n :intensity=\"intensity\"\n :is=\"isCoffeeTemplate(data) ? CoffeeHeader : ImgHeader\"\n :line=\"line\"\n :voice=\"voice\">\n <slot\n name=\"beforeTitle\"\n slot=\"beforeTitle\" />\n <slot\n name=\"imgBackground\"\n slot=\"imgBackground\" />\n </component>\n </div>\n</template>\n\n<script>\n// Core\nimport Cta from 'gvue/src/core/Cta'\n// Custom\nimport CoffeeHeader from './template/CoffeeHeader'\nimport ImgHeader from './template/ImgHeader'\n\nexport default {\n name: 'ProductHeader',\n components: {\n Cta\n },\n data () {\n return {\n CoffeeHeader,\n ImgHeader\n }\n },\n props: ['data', 'voice', 'line', 'intensity'],\n methods: {\n back () {\n this.$emit('back')\n },\n isCoffeeTemplate (data) {\n return data.data && data.data.type.indexOf('capsule') > -1 && data.data.bundled === 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!./ProductHeader.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!./ProductHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProductHeader.vue?vue&type=template&id=3c0525a6&\"\nimport script from \"./ProductHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./ProductHeader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProductHeader.vue?vue&type=style&index=0&id=3c0525a6&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 render(){var _vm=this,_c=_vm._self._c;return (_vm.data.data)?_c('div',{staticClass:\"g_productSection\"},[_c('p',{staticClass:\"g_txt_S\",domProps:{\"innerHTML\":_vm._s(_vm.data.description || _vm.data.data.description)}})]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import sass/productSection\n</style>\n<template>\n <div\n class=\"g_productSection\"\n v-if=\"data.data\">\n <p\n class=\"g_txt_S\"\n v-html=\"data.description || data.data.description\" />\n </div>\n</template>\n\n<script>\nexport default {\n name: 'ProductSection',\n props: ['data']\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!./ProductSection.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!./ProductSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProductSection.vue?vue&type=template&id=d3d2fe8c&\"\nimport script from \"./ProductSection.vue?vue&type=script&lang=js&\"\nexport * from \"./ProductSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProductSection.vue?vue&type=style&index=0&id=d3d2fe8c&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 render(){var _vm=this,_c=_vm._self._c;return (_vm.data && _vm.data.data)?_c('div',{staticClass:\"g_buyFooter\"},[_c('AddToCart',_vm._b({attrs:{\"product\":_vm.data,\"tracking\":{ list: _vm.trackingProductClickLabel, position: 0 },\"translations\":_vm.addToCart},on:{\"click\":_vm.productClick}},'AddToCart',_vm.data.addToCart,false))],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div\n class=\"g_buyFooter\"\n v-if=\"data && data.data\">\n <AddToCart\n :product=\"data\"\n :tracking=\"{ list: trackingProductClickLabel, position: 0 }\"\n :translations=\"addToCart\"\n @click=\"productClick\"\n v-bind=\"data.addToCart\" />\n </div>\n</template>\n\n<script>\nimport Tracking from 'nespresso-library/src/core/tracking'\nimport AddToCart from 'nespresso-components/AddToCart'\n\nexport default {\n name: 'ProductFooter',\n components: {\n AddToCart\n },\n props: ['data', 'addToCart', 'tracking'],\n computed: {\n trackingProductClickLabel () {\n return `${this.$landing.trackingLabelPrefix}`\n }\n },\n methods: {\n productClick (product) {\n Tracking.productClick({\n products: [product],\n list: this.trackingProductClickLabel\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!./ProductFooter.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!./ProductFooter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProductFooter.vue?vue&type=template&id=561c02ae&\"\nimport script from \"./ProductFooter.vue?vue&type=script&lang=js&\"\nexport * from \"./ProductFooter.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","<style lang=\"sass\" rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n</style>\n\n<template>\n <Popin\n :closeLabel=\"voice.close\"\n @focusBack=\"$emit('focusBack')\"\n class=\"g_popinCollection\"\n ref=\"popin\"\n v-model=\"popinOpened\">\n <slot name=\"main\">\n <slot name=\"leftCol\">\n <LeftCol>\n <slot\n name=\"title\"\n slot=\"title\">\n <CollectionTitle\n :header=\"header\"\n slot=\"title\" />\n </slot>\n <NaturalScroll\n slot=\"content\">\n <slot name=\"list\">\n <ProductList\n :addToCart=\"addToCart\"\n :intensity=\"intensity\"\n :list=\"list\"\n :tracking=\"tracking\"\n @change=\"val => { $emit('change', val); $refs.popin.slide() }\"\n v-if=\"currentItem\"\n v-model=\"currentItem\">\n <!-- <slot slot=\"imgBackground\" name=\"imgBackground\"/> -->\n </ProductList>\n </slot>\n </NaturalScroll>\n </LeftCol>\n </slot>\n <slot name=\"rightCol\">\n <RightCol>\n <slot name=\"header\">\n <slot\n name=\"beforeHeader\"\n slot=\"beforeHeader\" />\n <slot\n :item=\"currentItem\"\n name=\"customHeader\"\n slot=\"header\">\n <ProductHeader\n :data=\"currentItem\"\n :intensity=\"intensity\"\n :line=\"line ? line : lineAPI\"\n :voice=\"voice\"\n @back=\"() => { $refs.popin.unslide() }\"\n v-if=\"currentItem\">\n <slot\n name=\"beforeTitle\"\n slot=\"beforeTitle\" />\n <slot\n :data=\"currentItem\"\n name=\"imgBackground\"\n slot=\"imgBackground\" />\n </ProductHeader>\n </slot>\n <slot\n name=\"afterHeader\"\n slot=\"afterHeader\" />\n </slot>\n <InnerScroll\n slot=\"section\">\n <slot name=\"content\">\n <slot\n :item=\"currentItem\"\n name=\"beforeContent\"\n slot=\"beforeContent\" />\n <ProductSection\n :data=\"currentItem\"\n v-if=\"currentItem\" />\n <slot\n :item=\"currentItem\"\n name=\"afterContent\"\n slot=\"afterContent\" />\n </slot>\n </InnerScroll>\n <slot name=\"footer\">\n <slot\n :item=\"currentItem\"\n name=\"beforeFooter\"\n slot=\"beforeFooter\" />\n <ProductFooter\n :addToCart=\"addToCart\"\n :data=\"currentItem\"\n :tracking=\"tracking\"\n slot=\"footer\"\n v-if=\"currentItem\" />\n <slot\n :item=\"currentItem\"\n name=\"afterFooter\"\n slot=\"afterFooter\" />\n </slot>\n </RightCol>\n </slot>\n </slot>\n </Popin>\n</template>\n\n<script type=\"text/babel\">\n// Lib\nimport parseHTML from 'nespresso-library/src/utils/parseHTML'\nimport Tracking from 'nespresso-library/src/core/tracking'\nimport 'core-js/fn/array/find'\nimport 'core-js/fn/array/fill'\nimport getProductAndClean from 'gvue/src/assets/js/mixins/getProductAndClean'\n// Core\nimport Popin from 'gvue/src/core/Popin'\nimport LeftCol from 'gvue/src/core/Popin/Columns/LeftCol'\nimport RightCol from 'gvue/src/core/Popin/Columns/RightCol'\nimport NaturalScroll from 'gvue/src/core/Popin/Scrolls/NaturalScroll'\nimport InnerScroll from 'gvue/src/core/Popin/Scrolls/InnerScroll'\n// Components\nimport CollectionTitle from './popin/leftCol/CollectionTitle'\nimport ProductList from './popin/leftCol/ProductList'\nimport ProductHeader from './popin/rightCol/ProductHeader'\nimport ProductSection from './popin/rightCol/ProductSection'\nimport ProductFooter from './popin/rightCol/ProductFooter'\n\nexport default {\n name: 'PopinCollection',\n mixins: [getProductAndClean],\n components: {\n Popin,\n LeftCol,\n RightCol,\n NaturalScroll,\n InnerScroll,\n CollectionTitle,\n ProductList,\n ProductHeader,\n ProductSection,\n ProductFooter\n },\n props: {\n header: {\n type: Object,\n default: () => {\n return {\n name: '',\n description: ''\n }\n }\n },\n list: {\n type: Array,\n required: true\n },\n voice: {\n type: Object,\n required: true\n },\n addToCart: {\n type: Object,\n required: true\n },\n tracking: {\n type: String,\n default: 'Collection'\n },\n intensity: {\n type: String\n },\n line: {\n type: String\n },\n slide: {\n type: Boolean,\n default: true\n }\n },\n data () {\n return {\n popinOpened: false,\n currentItem: null,\n needTracking: false,\n isTracked: false\n }\n },\n watch: {\n list () {\n // Prevent bug popin open with nothing inside\n if (this.popinOpened && !this.currentItem) {\n this.currentItem = this.getDefaultItem()\n }\n },\n popinOpened (value) {\n if (!value) {\n this.currentItem = null\n }\n }\n },\n methods: {\n getDefaultItem () {\n return this.list[0]\n },\n open (index = 0, data = null) {\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Popin display - ${parseHTML(this.tracking)[0].textContent}`,\n interaction: 0\n })\n // if (~index) {\n // this.currentItem = this.list[index]\n // }\n // else if (data && data.sku) {\n // this.currentItem = this.findPopinItem(data)\n // }\n if (data && data.sku) {\n this.currentItem = this.findPopinItem(data)\n } else if (~index) {\n this.currentItem = this.list[index]\n }\n\n if (!this.currentItem) {\n this.currentItem = this.getDefaultItem()\n }\n\n if (this.slide) {\n this.$refs.popin.slide()\n }\n this.popinOpened = true\n },\n // Find from collection the item in popin\n findPopinItem (data) {\n return this.list.find(item => item.sku === data.sku)\n }\n },\n created () {\n this.getProductAndClean(this.list)\n },\n computed: {\n trackingProductClickLabel () {\n return `${this.$landing.trackingLabelPrefix}`\n },\n lineAPI () {\n let lineFromAPI = null\n if (this.currentItem.data && this.currentItem.data.technologies.length) {\n lineFromAPI = this.currentItem.data.technologies[0].split('/').pop()\n if (lineFromAPI === 'original') {\n lineFromAPI = 'OL'\n } else if (lineFromAPI === 'vertuo') {\n lineFromAPI = 'VL'\n } else {\n console.log('Cannot retrieve items technology from the API')\n }\n }\n return lineFromAPI\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!./PopinCollection.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!./PopinCollection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PopinCollection.vue?vue&type=template&id=9d795eac&\"\nimport script from \"./PopinCollection.vue?vue&type=script&lang=js&\"\nexport * from \"./PopinCollection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PopinCollection.vue?vue&type=style&index=0&id=9d795eac&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 PopinCollection from './PopinCollection.vue'\n\nexport default PopinCollection\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductHeader.vue?vue&type=style&index=0&id=3c0525a6&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SlideShow.vue?vue&type=style&index=0&id=08f9dbc0&prod&lang=sass&rel=stylesheet%2Fsass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"range_swiper\"},[_c('div',{ref:\"rangeSwiperContainer\",staticClass:\"swiper-container\"},[_c('div',{staticClass:\"g_tiles swiper-wrapper\"},_vm._l((_vm.collections),function(collection,index){return _c('div',{key:index,staticClass:\"swiper-slide\",attrs:{\"data-nb-capsules\":collection.capsules.length}},[_c('Tile',{attrs:{\"line\":_vm.line,\"range\":collection,\"hideSvgTitle\":\"\"},nativeOn:{\"click\":function($event){return _vm.clickTile(collection, index)}}})],1)}),0),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-next\"}):_vm._e(),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-prev\"}):_vm._e(),_c('div',{staticClass:\"swiper-pagination\"})]),_c('PopinCollection',{ref:\"popin\",attrs:{\"addToCart\":_vm.addToCart,\"header\":_vm.popinHeader,\"intensity\":_vm.config.intensity,\"line\":_vm.line,\"list\":_vm.popinList,\"slide\":false,\"tracking\":_vm.tracking,\"voice\":_vm.config.voice},on:{\"change\":product => _vm.handleChange(product)}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\" rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import ~gvue/src/components/Tile/sass/variables\n@import ~gvue/src/components/MoreInfo/sass/roundButton\n@import ~gvue/src/components/Tile/sass/tile\n@import ~gvue/src/components/Ranges/sass/ranges\n@import sass/rangesSwiper\n</style>\n\n<template>\n <div class=\"range_swiper\">\n <div\n class=\"swiper-container\"\n ref=\"rangeSwiperContainer\">\n <div class=\"g_tiles swiper-wrapper\">\n <div\n :data-nb-capsules=\"collection.capsules.length\"\n :key=\"index\"\n class=\"swiper-slide\"\n v-for=\"(collection, index) in collections\">\n <Tile\n :line=\"line\"\n :range=\"collection\"\n hideSvgTitle\n @click.native=\"clickTile(collection, index)\" />\n </div>\n </div>\n <div\n class=\"swiper-button-next\"\n v-if=\"!$breakpoint.isS\"></div>\n <div\n class=\"swiper-button-prev\"\n v-if=\"!$breakpoint.isS\"></div>\n <div class=\"swiper-pagination\"></div>\n </div>\n <PopinCollection\n :addToCart=\"addToCart\"\n :header=\"popinHeader\"\n :intensity=\"config.intensity\"\n :line=\"line\"\n :list=\"popinList\"\n :slide=\"false\"\n :tracking=\"tracking\"\n :voice=\"config.voice\"\n @change=\"product => handleChange(product)\"\n ref=\"popin\" />\n </div>\n</template>\n\n<script>\n// Lib\nimport 'core-js/fn/array/fill'\nimport Tracking from 'nespresso-library/src/core/tracking'\n// Component\nimport PopinCollection from '../PopinCollection'\nimport Swiper from 'nespresso-components/swiper/swiper.core'\n// Project\nimport Tile from 'gvue/src/components/Tile'\n\nexport default {\n name: 'RangesSwiper',\n components: {\n Tile,\n PopinCollection\n },\n props: {\n config: {\n type: Object\n },\n landing: {\n type: String\n },\n collections: {\n type: Array\n },\n line: {\n type: String\n },\n addToCart: {\n type: Object\n }\n },\n data () {\n return {\n currentCollection: null,\n tracking: null,\n tile: Tile,\n swiper: {\n default: null\n },\n slidesPerview: null,\n spaceBetween: this.$breakpoint.isS ? 8 : 8\n }\n },\n computed: {\n popinHeader () {\n return this.currentCollection ? {\n name: this.currentCollection.popin.title,\n description: this.currentCollection.popin.content\n } : {}\n },\n popinList () {\n if (this.currentCollection && this.currentCollection.popin.list) {\n this.currentCollection.popin.list.forEach(coffee => {\n coffee.sku = coffee.addToCart.sku\n })\n }\n return this.currentCollection ? this.currentCollection.popin.list : []\n }\n },\n mounted () {\n // Set the number of slides per view by the window size\n if (this.$breakpoint.isS) {\n this.slidesPerview = 1\n } else if (this.$breakpoint.isM) {\n this.slidesPerview = 3\n } else {\n this.slidesPerview = 4\n }\n\n this.swiper = new Swiper(this.$refs.rangeSwiperContainer, {\n width: document.documentElement.clientWidth,\n slidesPerView: this.slidesPerview,\n spaceBetween: this.spaceBetween,\n centeredSlides: true,\n simulateTouch: true,\n pagination: '.swiper-pagination',\n paginationClickable: true,\n nextButton: '.swiper-button-next',\n prevButton: '.swiper-button-prev'\n })\n\n // Center the swiper pagination\n this.centerPagination()\n // Set the swiper to the middle item\n this.goToMiddleItem()\n },\n methods: {\n collectionChange (collection) {\n if (!collection.currentItem) {\n this.$set(collection, 'currentItem', collection.popin.list[0])\n this.$set(collection.currentItem, 'cup', collection.currentItem.cup ? collection.currentItem.cup : collection.param)\n }\n this.currentCollection = collection\n },\n openPopin (index) {\n // Open the popin only if the swiper-slide is active\n if (index === this.swiper.activeIndex) {\n let currentItemParam = this.currentCollection.currentItem.param\n this.tracking = currentItemParam[0].toUpperCase() + currentItemParam.slice(1)\n this.$nextTick(() => this.$refs.popin.open(index, this.currentCollection.currentItem))\n }\n },\n handleChange (product) {\n this.currentCollection.currentItem = product\n },\n goToSlide (index) {\n this.swiper.slideTo(index, 300)\n },\n goToMiddleItem () {\n const nbItems = this.collections.length\n const middleItem = Math.round(nbItems / 2) - 1\n this.swiper.slideTo(middleItem, 300)\n },\n centerPagination () {\n var swiperPagination = document.querySelector('.range_swiper .swiper-pagination')\n var swiperPaginationWidth = swiperPagination.offsetWidth\n swiperPaginationWidth = 300\n swiperPagination.style.left = 'calc(50% - ' + swiperPaginationWidth / 2 + 'px)'\n },\n clickTile (collection, index) {\n this.collectionChange(collection)\n this.openPopin(index)\n this.goToSlide(index)\n let currentItemParam = collection.param[0].toUpperCase() + collection.param.slice(1)\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Popin display - ${currentItemParam}`,\n interaction: 0\n })\n }\n },\n watch: {\n 'currentCollection.currentItem' (currentItem) {\n currentItem.cup = currentItem.cup ? currentItem.cup : this.currentCollection.param\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!./RangesSwiper.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!./RangesSwiper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RangesSwiper.vue?vue&type=template&id=26dfe85e&\"\nimport script from \"./RangesSwiper.vue?vue&type=script&lang=js&\"\nexport * from \"./RangesSwiper.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RangesSwiper.vue?vue&type=style&index=0&id=26dfe85e&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 RangesSwiper from './RangesSwiper'\n\nexport default RangesSwiper\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.$json.itemsCollection.hide)?_c('section',{ref:\"container\",staticClass:\"g_light g_recipeCollection\",attrs:{\"id\":\"itemCollection\"}},[_c('BgTable',{staticClass:\"g_bg\",attrs:{\"backgroundImage\":{ folder: 'backgrounds', name: _vm.$json.itemsCollection.backgroundImage }}}),_c('div',{staticClass:\"g_story g_section\"},[_c('div',{staticClass:\"g_restrict\"},[_c('div',{staticClass:\"g_content\"},[_c('div',{staticClass:\"g_headerWrapper\"},[_c('heading',{attrs:{\"level\":2,\"size\":_vm.$breakpoint.isS ? 'L': 'XL'},domProps:{\"innerHTML\":_vm._s(_vm.$json.itemsCollection.header)}}),_c('paragraph',{attrs:{\"content\":_vm.$json.itemsCollection.subHeader,\"size\":_vm.$breakpoint.isS ? 'L': 'XL'}})],1),_c('SingleBackgroundSlot',{ref:\"bsLeft\",attrs:{\"data\":_vm.$json.itemsCollection.products}})],1)])])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_backgroundSlot g_recipesCollection\"},[_c('div',{staticClass:\"g_text_row g_actual_coffee_swiper\",attrs:{\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"g_text_cell\"},[_c('Swiper',{attrs:{\"swiperOption\":_vm.swiperOption,\"showButtonsOnMobile\":true}},_vm._l((_vm.products),function(product,index){return _c('Slide',{key:index},[_c('Coffee',{attrs:{\"isItemCollection\":true,\"isHero\":false,\"coffee\":product}})],1)}),1)],1)]),_c('div',{staticClass:\"g_text_row g_actual_coffee_footer\",class:['g_' + _vm.activeProduct.id]},[_c('div',{staticClass:\"g_text_cell\"},[_c('ul',_vm._l((_vm.products),function(product,index){return _c('li',{key:index,staticClass:\"g_coffeeProduct\",class:[product.id == _vm.activeProduct.id ? 'g_active' : '']},[_c('div',{staticClass:\"g_index g_description\"},[_c('p',{staticClass:\"g_txt_L\"},[_vm._v(\"\\n \"+_vm._s(index+1)+\" \"+_vm._s(_vm.$json.itemsCollection.ofText || 'of')+\" \"+_vm._s(_vm.products.length)+\"\\n \")])])])}),0)])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_coffee\",attrs:{\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"g_tableFit\"},[_c('div',[(_vm.isItemCollection)?_c('div',[_c('div',{staticClass:\"g_cupRecipe\"},[_c('img',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:({commons: true, folder: 'cups', name: _vm.coffee.id, ext: 'png' }),expression:\"{commons: true, folder: 'cups', name: coffee.id, ext: 'png' }\"}],staticClass:\"g_img\",attrs:{\"alt\":_vm.coffee.alt}})]),_c('Paragraph',{attrs:{\"content\":_vm.coffee.name,\"size\":_vm.$breakpoint.isS ? 'XL': 'M'}})],1):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\">\n@import sass/coffee\n</style>\n\n<template>\n <div\n class=\"g_coffee\"\n aria-hidden=\"true\">\n <div class=\"g_tableFit\">\n <div>\n <div v-if=\"isItemCollection\">\n <div\n class=\"g_cupRecipe\">\n <img\n class=\"g_img\"\n v-img-src=\"{commons: true, folder: 'cups', name: coffee.id, ext: 'png' }\" :alt=\"coffee.alt\">\n </div>\n <Paragraph\n :content=\"coffee.name\"\n :size=\"$breakpoint.isS ? 'XL': 'M'\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n\nexport default {\n name: 'Coffee',\n props: {\n coffee: {\n type: Object,\n required: true\n },\n isItemCollection: {\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!./Coffee.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!./Coffee.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Coffee.vue?vue&type=template&id=d59a401a&\"\nimport script from \"./Coffee.vue?vue&type=script&lang=js&\"\nexport * from \"./Coffee.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Coffee.vue?vue&type=style&index=0&id=d59a401a&prod&lang=sass&\"\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 Coffee from './Coffee'\nexport default Coffee\n","<style lang=\"sass\">\n @import ~nespresso-bi/utilities\n @import ~nespresso-bi/brand/variables\n</style>\n\n<template>\n <div class=\"g_backgroundSlot g_recipesCollection\">\n <div\n class=\"g_text_row g_actual_coffee_swiper\"\n aria-hidden=\"true\">\n <div class=\"g_text_cell\">\n <Swiper\n :swiperOption=\"swiperOption\"\n :showButtonsOnMobile=\"true\">\n <Slide\n v-for=\"(product, index) of products\"\n :key=\"index\">\n <Coffee\n :isItemCollection=\"true\"\n :isHero=\"false\"\n :coffee=\"product\" />\n\n </Slide>\n </Swiper>\n </div>\n </div>\n\n <div\n class=\"g_text_row g_actual_coffee_footer\"\n :class=\"['g_' + activeProduct.id]\">\n <div class=\"g_text_cell\">\n <ul>\n <li\n v-for=\"(product, index) of products\"\n class=\"g_coffeeProduct\"\n :class=\"[product.id == activeProduct.id ? 'g_active' : '']\"\n :key=\"index\">\n\n <div class=\"g_index g_description\">\n <p class=\"g_txt_L\">\n {{ index+1 }} {{$json.itemsCollection.ofText || 'of'}} {{ products.length }}\n </p>\n </div>\n\n </li>\n </ul>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Swiper from 'gvue/src/core/Swiper'\nimport Slide from 'nespresso-components/swiper/Slide'\nimport Coffee from '../../../components/Coffee'\n\nimport Tracking from 'nespresso-library/src/core/tracking'\n\nexport default {\n name: 'SingleBackgroundSlot',\n components: {\n Swiper, Slide, Coffee\n },\n props: {\n data: {\n type: Object,\n required: true\n }\n },\n data () {\n return {\n activeProduct: null,\n currentParagram: {}\n }\n },\n created () {\n this.activatedProduct(5)\n },\n computed: {\n products () {\n return this.data.list\n },\n trackingProductClickLabel () {\n return `${this.$trackingLandingLabel} - Capsule`\n },\n swiperOption () {\n let firstInit = false\n const defaultSwiperOption = {\n // nextTick is a component's own property, and if nextTick is set to true, the component will not instantiate the swiper through nextTick, which means you can get the swiper object the first time (if you need to use the get swiper object to do what Things, then this property must be true)\n nextTick: false,\n width: this.$breakpoint.isS ? document.documentElement.clientWidth : document.documentElement.clientWidth / 7,\n slidesPerView: 1,\n initialSlide: 5,\n virtualTranslate: this.$touch,\n prevButton: `.swiper-button-prev`,\n nextButton: `.swiper-button-next`,\n onSlideChangeEnd: (swiper) => {\n if (!firstInit) {\n firstInit = true\n return\n }\n this.activatedProduct(swiper.activeIndex)\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Slider - Capsules in Hero`,\n interaction: 0\n })\n }\n }\n\n return defaultSwiperOption\n }\n },\n methods: {\n activatedProduct (activeIndex) {\n this.activeProduct = this.products[activeIndex]\n },\n productClick (product) {\n this.$emit('atc-click', product)\n Tracking.productClick({\n products: [this.activeProduct],\n list: this.trackingProductClickLabel\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!./SingleBackgroundSlot.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!./SingleBackgroundSlot.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SingleBackgroundSlot.vue?vue&type=template&id=6b9ef0e0&\"\nimport script from \"./SingleBackgroundSlot.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleBackgroundSlot.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SingleBackgroundSlot.vue?vue&type=style&index=0&id=6b9ef0e0&prod&lang=sass&\"\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","<style lang=\"sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import ../../components/Coffee/sass/swiperSingle\n@import \"sass/itemsCollection\"\n@import ../../components/Coffee/sass/extra\n\n</style>\n\n<template>\n\n <section\n ref=\"container\"\n class=\"g_light g_recipeCollection\"\n id=\"itemCollection\"\n v-if=\"!$json.itemsCollection.hide\">\n\n <BgTable class=\"g_bg\"\n :backgroundImage=\"{ folder: 'backgrounds', name: $json.itemsCollection.backgroundImage }\"/>\n\n <div class=\"g_story g_section\">\n <div class=\"g_restrict\">\n <div class=\"g_content\">\n <div class=\"g_headerWrapper\">\n <heading\n :level=\"2\"\n v-html=\"$json.itemsCollection.header\"\n :size=\"$breakpoint.isS ? 'L': 'XL'\"\n />\n <paragraph\n :content=\"$json.itemsCollection.subHeader\"\n :size=\"$breakpoint.isS ? 'L': 'XL'\"\n />\n </div>\n <SingleBackgroundSlot\n ref=\"bsLeft\"\n :data=\"$json.itemsCollection.products\" />\n </div>\n </div>\n </div>\n </section>\n</template>\n\n<script>\n// Project components\nimport SingleBackgroundSlot from './components/SingleBackgroundSlot'\nimport BgTable from '../../components/BgTable/BgTable'\n// import Tracking from 'nespresso-library/src/core/tracking'\n\nexport default {\n name: 'ItemsCollection',\n components: {\n SingleBackgroundSlot,\n BgTable\n },\n data () {\n return {\n videoOpen: false\n }\n },\n methods: {\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!./ItemsCollection.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!./ItemsCollection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemsCollection.vue?vue&type=template&id=20b03335&\"\nimport script from \"./ItemsCollection.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemsCollection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemsCollection.vue?vue&type=style&index=0&id=20b03335&prod&lang=sass&\"\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 ItemsCollection from './ItemsCollection'\nexport default ItemsCollection\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AccessoryRange.vue?vue&type=style&index=0&id=6d455054&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Testimonial.vue?vue&type=style&index=0&id=d0c30296&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AccessoryTile.vue?vue&type=style&index=0&id=5c29479d&prod&lang=sass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollapsableContent.vue?vue&type=style&index=0&id=060b4178&prod&lang=sass&rel=stylesheet%2Fsass&\"","import Tracking from 'nespresso-library/src/core/tracking'\n\nexport default {\n methods: {\n tracking (type, section) {\n let options = {}\n\n switch (type) {\n case 'techSpecs':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Machine specifications - CTA`,\n interaction: 1\n }\n break\n case 'coffeesRange':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Coffee capsules - CTA`,\n interaction: 1\n }\n break\n case 'coffeeExperienceBlock002':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Cup sizes - CTA`,\n interaction: 1\n }\n break\n case 'features002':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Made to last - Link`,\n interaction: 1\n }\n break\n case 'momento':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Nespresso Momento - CTA`,\n interaction: 1\n }\n break\n case 'freeTrial':\n if (section) {\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - ${section}`,\n interaction: 1\n }\n } else {\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Free trial - CTA`,\n interaction: 1\n }\n }\n break\n case 'discover':\n options = {\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Discover Momento Range`,\n interaction: 1\n }\n break\n }\n\n Tracking.customEvent(options)\n }\n }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductList.vue?vue&type=style&index=0&id=679ae917&prod&lang=sass&rel=stylesheet%2Fsass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:(_vm.backgroundImage),expression:\"backgroundImage\"}],staticClass:\"g_bg g_bg_machine\"})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\">\n@import sass/bgTable\n</style>\n\n<template>\n <div\n class=\"g_bg g_bg_machine\"\n v-img-src=\"backgroundImage\" />\n</template>\n\n<script>\nexport default {\n name: 'BgTable',\n props: {\n backgroundImage: Object\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!./BgTable.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!./BgTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BgTable.vue?vue&type=template&id=dfb9875a&\"\nimport script from \"./BgTable.vue?vue&type=script&lang=js&\"\nexport * from \"./BgTable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BgTable.vue?vue&type=style&index=0&id=dfb9875a&prod&lang=sass&\"\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 './plugins/bootstrap'\nimport Vue from 'vue'\n// Nespresso components\nimport VueLanding from 'nespresso-components/landing/VueLanding'\nimport dataLayer from 'nespresso-library/src/core/dataLayer'\nimport Tracking from 'nespresso-library/src/core/tracking'\n\nVue.config.productionTip = false\nif (dataLayer.isMobile && dataLayer.isClassic && 'MutationObserver' in window) {\n require('./assets/js/mixins/mobileBar.js')\n}\nexport default ({ App, trackingLabel, landing, centralLandingAlias, sectionTrackingLabels }) => {\n const trackingLabelTxt = 'B2B - LP - ' + trackingLabel\n Vue.use(VueLanding, {\n project: 'b2b',\n landing,\n centralLandingAlias,\n trackingLabelPrefix: trackingLabelTxt,\n skipMutationKeys: [\n 'link',\n 'link_mobile',\n 'param',\n 'tracking',\n 'capsules',\n 'img',\n 'brand',\n 'responsiveImages',\n 'fineMachines.paragraph2',\n 'name'\n ],\n additionalBrands: [],\n sectionTrackingLabels\n })\n Tracking.globalTracking(trackingLabelTxt)\n\n return new Vue({\n el: '#agilityApp',\n render: h => h(App)\n })\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReadMoreCollapsible.vue?vue&type=style&index=0&id=62652ec8&prod&lang=sass&rel=stylesheet%2Fsass&\"","if (process.env.NODE_ENV === 'development') {\n require('nespresso-library/src/utils/mocks')\n}\n// if (dataLayer.isClassic) {\n/* eslint-disable */\n// Reset classic prototype\nArray.prototype.indexOf = function (b) {\n var a = this.length >>> 0\n var c = Number(arguments[1]) || 0\n c = (c < 0) ? Math.ceil(c) : Math.floor(c)\n if (c < 0) {c += a}\n for (; c < a; c++) {if (c in this && this[c] === b) {return c}}\n return -1\n}\nimport(/* webpackChunkName: \"classic-reset\" */ 'nespresso-sass/reset/_classic.sass')\n// }\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StickyMenuBar.vue?vue&type=style&index=0&id=a16b3342&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReadMoreAccordion.vue?vue&type=style&index=0&id=1a3c03f6&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Coffee.vue?vue&type=style&index=0&id=d59a401a&prod&lang=sass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"range_swiper ranges\"},[_c('div',{ref:\"rangeSwiperContainer\",staticClass:\"swiper-container\"},[_c('div',{staticClass:\"g_tiles swiper-wrapper\"},_vm._l((_vm.collections),function(collection,index){return _c('div',{key:index,staticClass:\"swiper-slide\",attrs:{\"data-nb-capsules\":collection.capsules.length}},[_c('Tile',{attrs:{\"line\":_vm.line,\"range\":collection,\"hideSvgTitle\":\"\"},nativeOn:{\"click\":function($event){return _vm.clickTile(collection, index)}}})],1)}),0),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-next\"}):_vm._e(),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-prev\"}):_vm._e(),_c('div',{staticClass:\"swiper-pagination\"})]),_c('PopinCollection',{ref:\"popin\",attrs:{\"addToCart\":_vm.addToCart,\"header\":_vm.popinHeader,\"intensity\":_vm.config.intensity,\"line\":_vm.line,\"list\":_vm.popinList,\"slide\":false,\"tracking\":_vm.tracking,\"voice\":_vm.config.voice},on:{\"change\":product => _vm.handleChange(product)}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\" rel=\"stylesheet/sass\">\n @import ~nespresso-bi/utilities\n @import ~nespresso-bi/brand/variables\n @import ~gvue/src/components/Tile/sass/variables\n @import ~gvue/src/components/MoreInfo/sass/roundButton\n @import ~gvue/src/components/Tile/sass/tile\n @import ~gvue/src/components/Ranges/sass/ranges\n // SPECIFIC COMPONENTS\n @import ~nespresso-components/swiper/swiper\n @import sass/ranges\n</style>\n\n<template>\n <div class=\"range_swiper ranges\">\n <div\n class=\"swiper-container\"\n ref=\"rangeSwiperContainer\">\n <div class=\"g_tiles swiper-wrapper\">\n <div\n :data-nb-capsules=\"collection.capsules.length\"\n :key=\"index\"\n class=\"swiper-slide\"\n v-for=\"(collection, index) in collections\">\n <Tile\n :line=\"line\"\n :range=\"collection\"\n hideSvgTitle\n @click.native=\"clickTile(collection, index)\" />\n </div>\n </div>\n <div\n class=\"swiper-button-next\"\n v-if=\"!$breakpoint.isS\"></div>\n <div\n class=\"swiper-button-prev\"\n v-if=\"!$breakpoint.isS\"></div>\n <div class=\"swiper-pagination\"></div>\n </div>\n <PopinCollection\n :addToCart=\"addToCart\"\n :header=\"popinHeader\"\n :intensity=\"config.intensity\"\n :line=\"line\"\n :list=\"popinList\"\n :slide=\"false\"\n :tracking=\"tracking\"\n :voice=\"config.voice\"\n @change=\"product => handleChange(product)\"\n ref=\"popin\" />\n </div>\n</template>\n\n<script>\n// Lib\nimport 'core-js/fn/array/fill'\nimport Tracking from 'nespresso-library/src/core/tracking'\n// Component\nimport PopinCollection from '../PopinCollection'\nimport Swiper from 'nespresso-components/swiper/swiper.core'\n// Project\nimport Tile from 'gvue/src/components/Tile'\n\nexport default {\n name: 'Ranges',\n components: {\n Tile,\n PopinCollection\n },\n props: {\n config: {\n type: Object\n },\n landing: {\n type: String\n },\n collections: {\n type: Array\n },\n line: {\n type: String\n },\n addToCart: {\n type: Object\n }\n },\n data () {\n return {\n currentCollection: null,\n tracking: null,\n tile: Tile,\n swiper: {\n default: null\n },\n slidesPerview: null,\n spaceBetween: this.$breakpoint.isS ? 8 : 8\n }\n },\n computed: {\n popinHeader () {\n return this.currentCollection ? {\n name: this.currentCollection.popin.header.name,\n description: this.currentCollection.popin.header.description\n } : {}\n },\n popinList () {\n return this.currentCollection ? this.currentCollection.popin.list : []\n }\n },\n mounted () {\n // Set the number of slides per view by the browser window size\n if (this.$breakpoint.isS) {\n this.slidesPerview = 1\n } else if (this.$breakpoint.isM) {\n this.slidesPerview = 3\n } else {\n this.slidesPerview = 4\n }\n\n this.swiper = new Swiper(this.$refs.rangeSwiperContainer, {\n nextTick: false,\n width: document.documentElement.clientWidth,\n slidesPerView: this.slidesPerview,\n spaceBetween: this.spaceBetween,\n centeredSlides: true,\n simulateTouch: true,\n pagination: '.swiper-pagination',\n paginationClickable: true,\n nextButton: '.swiper-button-next',\n prevButton: '.swiper-button-prev'\n })\n\n // Center the swiper pagination\n this.centerPagination()\n // Set the swiper to the middle item\n this.goToMiddleItem()\n },\n methods: {\n collectionChange (collection) {\n if (!collection.currentItem) {\n this.$set(collection, 'currentItem', collection.popin.list[0])\n this.$set(collection.currentItem, 'cup', collection.currentItem.cup ? collection.currentItem.cup : collection.param)\n }\n this.currentCollection = collection\n },\n openPopin (index) {\n // Open the popin only if the swiper-slide is active\n if (index === this.swiper.activeIndex) {\n let currentItemParam = this.currentCollection.currentItem.param\n this.tracking = currentItemParam[0].toUpperCase() + currentItemParam.slice(1)\n this.$nextTick(() => this.$refs.popin.open(index, this.currentCollection.currentItem))\n }\n },\n handleChange (product) {\n this.currentCollection.currentItem = product\n },\n goToSlide (index) {\n this.swiper.slideTo(index, 300)\n },\n goToMiddleItem () {\n const nbItems = this.collections.length\n const middleItem = Math.round(nbItems / 2) - 1\n this.swiper.slideTo(middleItem, 300)\n },\n centerPagination () {\n var swiperPagination = document.querySelector('.range_swiper .swiper-pagination')\n var swiperPaginationWidth = swiperPagination.offsetWidth\n swiperPaginationWidth = 300\n swiperPagination.style.left = 'calc(50% - ' + swiperPaginationWidth / 2 + 'px)'\n },\n clickTile (collection, index) {\n this.collectionChange(collection)\n this.openPopin(index)\n this.goToSlide(index)\n let currentItemParam = collection.param[0].toUpperCase() + collection.param.slice(1)\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$trackingLandingLabel} - Popin display - ${currentItemParam}`,\n interaction: 0\n })\n }\n },\n watch: {\n 'currentCollection.currentItem' (currentItem) {\n currentItem.cup = currentItem.cup ? currentItem.cup : this.currentCollection.param\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!./Ranges.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!./Ranges.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Ranges.vue?vue&type=template&id=cdd932a0&\"\nimport script from \"./Ranges.vue?vue&type=script&lang=js&\"\nexport * from \"./Ranges.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Ranges.vue?vue&type=style&index=0&id=cdd932a0&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 Ranges from './Ranges'\n\nexport default Ranges\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Testimonials.vue?vue&type=style&index=0&id=49efa24e&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleBackgroundSlot.vue?vue&type=style&index=0&id=6b9ef0e0&prod&lang=sass&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoffeeHeader.vue?vue&type=style&index=0&id=e0175822&prod&lang=sass&rel=stylesheet%2Fsass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.data.hide)?_c('Zone',{staticClass:\"g_testimonials\",attrs:{\"backgroundImage\":_vm.backgroundImage,\"contrast\":_vm.contrast,\"dataLabel\":_vm.data.dataLabel,\"id\":_vm.data.id}},[_c('Heading',{attrs:{\"level\":2},domProps:{\"innerHTML\":_vm._s(_vm.data.title)}}),_c('div',{staticClass:\"g_testimonial_wrapper\"},[_c('div',{staticClass:\"g_col80 g_restrict\"},[_c('SlideShow',_vm._l((_vm.data.data),function(item,index){return _c('SlideShowSlide',{key:index},[_c('Testimonial',{attrs:{\"data\":item}})],1)}),1)],1)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.totalSlides),expression:\"totalSlides\"}],staticClass:\"g_slideShow\"},[_c('div',{ref:\"container\",staticClass:\"swiper-container\",attrs:{\"id\":'swiper-container_' + _vm._uid}},[_c('div',{staticClass:\"swiper-wrapper\",attrs:{\"id\":'swiper-wrapper_' + _vm._uid}},[_vm._t(\"default\")],2)]),_c('div',{staticClass:\"g_slideShow_pagination_wrapper\"},[(_vm.totalSlides > 1)?_c('span',{staticClass:\"g_slideShow_indicator\"},[_c('span',{staticClass:\"g_slideShow_indicator_current\"},[_vm._v(_vm._s(_vm._f(\"pad\")(_vm.currentSlideIndex)))]),_vm._v(\"\\n /\\n \"),_c('span',{staticClass:\"g_slideShow_indicator_total\"},[_vm._v(_vm._s(_vm._f(\"pad\")(_vm.totalSlides)))])]):_vm._e(),(_vm.totalSlides > 1)?_c('button',{staticClass:\"g_slideShow_prev g_btn g_btnGold\",attrs:{\"id\":'g_slideShow_prev_' + _vm._uid,\"type\":\"button\"}},[_c('Visual',{attrs:{\"svg\":_vm.$landing.getImgUrl({ commons: true, folder: 'iconspro', name: 'chevron_next', ext: 'svg' })}})],1):_vm._e(),(_vm.totalSlides > 1)?_c('button',{staticClass:\"g_slideShow_next g_btn g_btnGold\",attrs:{\"id\":'g_slideShow_next_' + _vm._uid,\"type\":\"button\"}},[_c('Visual',{attrs:{\"svg\":_vm.$landing.getImgUrl({ commons: true, folder: 'iconspro', name: 'chevron_next', ext: 'svg' })}})],1):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function (string, size) {\n while (string.length < (size || 2)) {\n string = '0' + string\n }\n\n return string\n}\n","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import sass/main\n</style>\n\n<template>\n <div\n class=\"g_slideShow\"\n v-show=\"totalSlides\">\n <div\n :id=\"'swiper-container_' + _uid\"\n class=\"swiper-container\"\n ref=\"container\">\n <div\n :id=\"'swiper-wrapper_' + _uid\"\n class=\"swiper-wrapper\">\n <slot></slot>\n </div>\n </div>\n\n <div class=\"g_slideShow_pagination_wrapper\">\n <span\n class=\"g_slideShow_indicator\"\n v-if=\"totalSlides > 1\">\n <span class=\"g_slideShow_indicator_current\">{{ currentSlideIndex | pad }}</span>\n /\n <span class=\"g_slideShow_indicator_total\">{{ totalSlides | pad }}</span>\n </span>\n\n <button\n :id=\"'g_slideShow_prev_' + _uid\"\n class=\"g_slideShow_prev g_btn g_btnGold\"\n type=\"button\"\n v-if=\"totalSlides > 1\">\n <Visual :svg=\"$landing.getImgUrl({ commons: true, folder: 'iconspro', name: 'chevron_next', ext: 'svg' })\" />\n </button>\n\n <button\n :id=\"'g_slideShow_next_' + _uid\"\n class=\"g_slideShow_next g_btn g_btnGold\"\n type=\"button\"\n v-if=\"totalSlides > 1\">\n <Visual :svg=\"$landing.getImgUrl({ commons: true, folder: 'iconspro', name: 'chevron_next', ext: 'svg' })\" />\n </button>\n </div>\n </div>\n</template>\n\n<script>\nimport Swiper from 'nespresso-components/swiper/swiper.core'\nimport pad from './js/pad'\n\nexport default {\n name: 'slide-show',\n props: {\n swiperOptions: {\n type: Object,\n default () {\n return {\n nextTick: true,\n slideToClickedSlide: this.$breakpoint.isS,\n slidesPerView: 1,\n prevButton: `#g_slideShow_prev_${this._uid}`,\n nextButton: `#g_slideShow_next_${this._uid}`,\n runCallbacksOnInit: true\n }\n }\n }\n },\n filters: {\n pad: (value) => value ? pad(value.toString(), 2) : ''\n },\n data () {\n return {\n swiper: null,\n currentSlideIndex: 1,\n totalSlides: this.$slots.default.filter((child) => child.componentOptions && child.componentOptions.tag === 'SlideShowSlide').length\n }\n },\n mounted () {\n if (!this.swiper) {\n let options = Object.assign({}, this.swiperOptions)\n this.swiper = new Swiper(this.$refs.container, options)\n this.swiper.on('slideChangeStart', () => {\n this.currentSlideIndex = this.swiper.activeIndex + 1\n })\n }\n },\n beforeDestroy () {\n if (this.swiper) {\n this.swiper.destroy()\n delete this.swiper\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!./SlideShow.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!./SlideShow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SlideShow.vue?vue&type=template&id=08f9dbc0&\"\nimport script from \"./SlideShow.vue?vue&type=script&lang=js&\"\nexport * from \"./SlideShow.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SlideShow.vue?vue&type=style&index=0&id=08f9dbc0&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_slideShowSlide swiper-slide\"},[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"g_slideShowSlide swiper-slide\">\n <slot></slot>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'slide-show-slide'\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!./SlideShowSlide.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!./SlideShowSlide.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SlideShowSlide.vue?vue&type=template&id=3fd6dd5a&\"\nimport script from \"./SlideShowSlide.vue?vue&type=script&lang=js&\"\nexport * from \"./SlideShowSlide.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 render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_testimonial\"},[_c('div',{staticClass:\"g_testimonial_row g_testimonial_avatar_row\"},[_c('div',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:({\n folder: 'pers',\n name: _vm.data.avatar,\n ext: 'png',\n suffix: false\n }),expression:\"{\\n folder: 'pers',\\n name: data.avatar,\\n ext: 'png',\\n suffix: false\\n }\"}],staticClass:\"g_testimonial_avatar\",style:({\n backgroundPosition: 'center',\n backgroundSize: 'contain',\n backgroundRepeat: 'no-repeat'\n })},[_c('span',{staticClass:\"g_visually_hidden\",domProps:{\"innerHTML\":_vm._s(_vm.data.full_name)}})]),_c('div',{staticClass:\"g_testimonial_col\"},[_c('div',{staticClass:\"g_testimonial_row\"},[_c('Heading',{attrs:{\"level\":5},domProps:{\"innerHTML\":_vm._s(_vm.data.full_name)}}),_c('Paragraph',{attrs:{\"content\":_vm.jobTitle,\"size\":\"XS\"}})],1)])]),_c('div',{staticClass:\"g_testimonial_row\"},[_c('Paragraph',{attrs:{\"content\":_vm.data.quote,\"size\":\"M\"}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\" rel=\"stylesheet/sass\">\n@import sass/testimonial\n</style>\n\n<template>\n <div class=\"g_testimonial\">\n <div class=\"g_testimonial_row g_testimonial_avatar_row\">\n <div\n :style=\"{\n backgroundPosition: 'center',\n backgroundSize: 'contain',\n backgroundRepeat: 'no-repeat'\n }\"\n class=\"g_testimonial_avatar\"\n v-img-src=\"{\n folder: 'pers',\n name: data.avatar,\n ext: 'png',\n suffix: false\n }\">\n <span\n class=\"g_visually_hidden\"\n v-html=\"data.full_name\" />\n </div>\n\n <div class=\"g_testimonial_col\">\n <div class=\"g_testimonial_row\">\n <Heading\n :level=\"5\"\n v-html=\"data.full_name\" />\n\n <Paragraph\n :content=\"jobTitle\"\n size=\"XS\" />\n </div>\n </div>\n </div>\n\n <div class=\"g_testimonial_row\">\n <Paragraph\n :content=\"data.quote\"\n size=\"M\" />\n </div>\n </div>\n</template>\n\n<script>\n// Core components\nimport Heading from 'gvue/src/core/Heading'\nimport Paragraph from 'gvue/src/core/Paragraph'\n\nexport default {\n name: 'testimonial',\n components: {\n Heading,\n Paragraph\n },\n props: {\n data: {\n type: Object,\n required: true\n }\n },\n computed: {\n jobTitle: function () {\n return this.$breakpoint.isS ? this.data.job : this.data.job.toUpperCase()\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!./Testimonial.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!./Testimonial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Testimonial.vue?vue&type=template&id=d0c30296&\"\nimport script from \"./Testimonial.vue?vue&type=script&lang=js&\"\nexport * from \"./Testimonial.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Testimonial.vue?vue&type=style&index=0&id=d0c30296&prod&lang=sass&rel=stylesheet%2Fsass&\"\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","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import sass/testimonials\n</style>\n\n<template>\n <Zone\n :backgroundImage=\"backgroundImage\"\n :contrast=\"contrast\"\n :dataLabel=\"data.dataLabel\"\n :id=\"data.id\"\n class=\"g_testimonials\"\n v-if=\"!data.hide\">\n <Heading\n :level=\"2\"\n v-html=\"data.title\" />\n\n <div class=\"g_testimonial_wrapper\">\n <div class=\"g_col80 g_restrict\">\n <SlideShow>\n <SlideShowSlide\n :key=\"index\"\n v-for=\"(item, index) in data.data\">\n <Testimonial\n :data=\"item\" />\n </SlideShowSlide>\n </SlideShow>\n </div>\n </div>\n </Zone>\n</template>\n\n<script>\n// Core components\nimport Heading from 'gvue/src/core/Heading'\nimport Zone from 'gvue/src/core/Zone'\n// Custom components\nimport { SlideShow, SlideShowSlide } from '../../components/SlideShow'\n// Local components\nimport Testimonial from './Testimonial'\n\nexport default {\n name: 'testimonials',\n components: {\n Heading,\n Zone,\n Testimonial,\n SlideShow,\n SlideShowSlide\n },\n props: {\n data: {\n type: Object,\n required: true\n },\n contrast: {\n type: String,\n default: 'light'\n },\n backgroundImage: {\n type: Object\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!./Testimonials.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!./Testimonials.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Testimonials.vue?vue&type=template&id=49efa24e&\"\nimport script from \"./Testimonials.vue?vue&type=script&lang=js&\"\nexport * from \"./Testimonials.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Testimonials.vue?vue&type=style&index=0&id=49efa24e&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 Testimonials from './Testimonials'\n\nexport default Testimonials\n","// Watch nes_header-content moving top on classic mobile\n(function () {\n // Select the node that will be observed for mutations\n const targetNode = document.getElementById('nes_header-content')\n if (!targetNode) {\n return\n }\n\n // Add class to our breadcrumb\n const updateBreadcrumb = (state) => {\n const breadcrumb = document.querySelector('.g_nav')\n if (!breadcrumb) {\n return\n }\n breadcrumb.classList.toggle('g_nav-up', state)\n }\n\n // Callback function to execute when mutations are observed\n const callback = function (mutationsList, observer) {\n // Options for the observer (which mutations to observe)\n for (let mutation of mutationsList) {\n updateBreadcrumb(mutation.target.classList.contains('nav-up'))\n }\n }\n\n // Create an observer instance linked to the callback function\n const observer = new MutationObserver(callback)\n\n // Start observing the target node for configured mutations\n const config = { attributes: true, attributeFilter: ['class'] }\n observer.observe(targetNode, config)\n\n // Stop observing\n window.addEventListener('beforeunload', function (event) {\n observer.disconnect()\n })\n})()\n","import BgTable from './BgTable'\nexport default BgTable\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductSection.vue?vue&type=style&index=0&id=d3d2fe8c&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopinCollection.vue?vue&type=style&index=0&id=9d795eac&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RangesSwiper.vue?vue&type=style&index=0&id=26dfe85e&prod&lang=sass&rel=stylesheet%2Fsass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Ranges.vue?vue&type=style&index=0&id=cdd932a0&prod&lang=sass&rel=stylesheet%2Fsass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ranges g_accessoryRange\"},[_c('div',{ref:\"rangeSwiperContainer\",staticClass:\"swiper-container\"},[_c('div',{staticClass:\"g_tiles swiper-wrapper\"},_vm._l((_vm.accessories),function(accessory,index){return _c('div',{key:index,staticClass:\"swiper-slide\"},[_c('AccessoryTile',{attrs:{\"accessory\":accessory}})],1)}),0),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-next\"}):_vm._e(),(!_vm.$breakpoint.isS)?_c('div',{staticClass:\"swiper-button-prev\"}):_vm._e(),_c('div',{staticClass:\"swiper-pagination\"})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_accessoryTile\"},[_c('div',{staticClass:\"g_visual\"},[_c('a',{directives:[{name:\"img-src\",rawName:\"v-img-src\",value:({ url: this.getImage()}),expression:\"{ url: this.getImage()}\"}],staticClass:\"g_image\",attrs:{\"href\":_vm.getLink()}},[_c('span',{staticClass:\"g_visually_hidden\",domProps:{\"innerHTML\":_vm._s(_vm.accessory.title)}})])]),_c('Heading',{attrs:{\"level\":3,\"levelClass\":4},domProps:{\"innerHTML\":_vm._s(_vm.getName())}}),_c('Paragraph',{attrs:{\"content\":_vm.getText(),\"size\":\"L\"}}),(_vm.accessory.cta)?_c('Cta',{attrs:{\"content\":_vm.accessory.cta.content,\"link\":_vm.accessory.cta.link,\"linkMobile\":_vm.accessory.cta.link_mobile,\"fontIcon\":\"fn_angleLink\",\"isLink\":\"\",\"type\":\"text\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style lang=\"sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import sass/_variables\n@import sass/accessoryTile\n</style>\n\n<template lang=\"html\">\n <div class=\"g_accessoryTile\" >\n <div class=\"g_visual\">\n <a\n :href=\"getLink()\"\n class=\"g_image\"\n v-img-src=\"{ url: this.getImage()}\">\n <span\n class=\"g_visually_hidden\"\n v-html=\"accessory.title\"/>\n </a>\n </div>\n <Heading\n :level=\"3\"\n :levelClass=\"4\"\n v-html=\"getName()\" />\n <Paragraph\n :content=\"getText()\"\n size=\"L\" />\n <Cta\n v-if=\"accessory.cta\"\n :content=\"accessory.cta.content\"\n :link=\"accessory.cta.link\"\n :linkMobile=\"accessory.cta.link_mobile\"\n fontIcon=\"fn_angleLink\"\n isLink\n type=\"text\" />\n </div>\n</template>\n\n<script>\n// Core components\nimport Heading from 'gvue/src/core/Heading'\nimport Paragraph from 'gvue/src/core/Paragraph'\nimport dataLayer from 'nespresso-library/src/core/dataLayer'\nimport Cta from 'gvue/src/core/Cta'\n\nexport default {\n components: {\n Cta,\n Heading,\n Paragraph\n },\n props: {\n accessory: Object,\n useResponsiveImg: {\n type: Boolean,\n default: true\n }\n },\n methods: {\n getLink () {\n let link = '#'\n // If has a custom link\n if (this.accessory.cta) {\n if (dataLayer.isMobile && this.accessory.cta.link_mobile) {\n link = this.accessory.cta.link_mobile\n } else if (this.accessory.cta.link) {\n link = this.accessory.cta.link\n }\n }\n return link\n },\n getImage () {\n return this.$landing.getImgUrl({ commons: false, folder: 'accessories', name: this.accessory.img, ext: 'png' })\n },\n getName () {\n return this.accessory.title\n },\n getText () {\n return this.accessory.desc\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!./AccessoryTile.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!./AccessoryTile.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccessoryTile.vue?vue&type=template&id=5c29479d&lang=html&\"\nimport script from \"./AccessoryTile.vue?vue&type=script&lang=js&\"\nexport * from \"./AccessoryTile.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AccessoryTile.vue?vue&type=style&index=0&id=5c29479d&prod&lang=sass&\"\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 AccessoryTile from './AccessoryTile.vue'\nexport default AccessoryTile\n","<style lang=\"sass\" rel=\"stylesheet/sass\">\n @import ~nespresso-bi/utilities\n @import ~nespresso-bi/brand/variables\n @import ~gvue/src/components/Ranges/sass/ranges\n // SPECIFIC COMPONENTS\n @import ~nespresso-components/swiper/swiper\n @import sass/accessoryRange\n</style>\n\n<template>\n <div class=\"ranges g_accessoryRange\">\n <div\n class=\"swiper-container\"\n ref=\"rangeSwiperContainer\">\n <div class=\"g_tiles swiper-wrapper\">\n <div\n :key=\"index\"\n class=\"swiper-slide\"\n v-for=\"(accessory, index) in accessories\">\n <AccessoryTile\n :accessory=\"accessory\"\n />\n <!--@click.native=\"clickTile(machine, index)\"-->\n </div>\n </div>\n <div\n class=\"swiper-button-next\"\n v-if=\"!$breakpoint.isS\"></div>\n <div\n class=\"swiper-button-prev\"\n v-if=\"!$breakpoint.isS\"></div>\n <div class=\"swiper-pagination\"></div>\n </div>\n </div>\n</template>\n\n<script>\n// Lib\nimport 'core-js/fn/array/fill'\n// import Tracking from 'nespresso-library/src/core/tracking'\n// Component\nimport Swiper from 'nespresso-components/swiper/swiper.core'\n// Project\nimport AccessoryTile from '../AccessoryTile'\n\nexport default {\n name: 'Ranges',\n components: {\n AccessoryTile\n },\n props: {\n config: {\n type: Object\n },\n accessories: {\n type: Array,\n required: true\n }\n },\n data () {\n return {\n currentCollection: null,\n tracking: null,\n tile: AccessoryTile,\n swiper: {\n default: null\n },\n slidesPerview: null,\n spaceBetween: this.$breakpoint.isS ? 8 : 24\n }\n },\n mounted () {\n // Set the number of slides per view by the browser window size\n if (this.$breakpoint.isS) {\n this.slidesPerview = 1\n } else if (this.$breakpoint.isM) {\n this.slidesPerview = 3\n } else {\n this.slidesPerview = 4\n }\n\n const defaultSwiperOptions = {\n nextTick: false,\n slidesPerView: this.slidesPerview,\n spaceBetween: this.spaceBetween,\n simulateTouch: true,\n paginationClickable: true,\n nextButton: '.swiper-button-next',\n prevButton: '.swiper-button-prev'\n }\n\n if (this.$breakpoint.isS || this.$breakpoint.isM) {\n defaultSwiperOptions.pagination = '.swiper-pagination'\n }\n this.swiper = new Swiper(this.$refs.rangeSwiperContainer, defaultSwiperOptions)\n\n // Center the swiper pagination\n this.centerPagination()\n // Set the swiper to the middle item\n this.goToMiddleItem()\n },\n methods: {\n collectionChange (collection) {\n this.currentCollection = collection\n },\n handleChange (product) {\n this.currentCollection.currentItem = product\n },\n goToSlide (index) {\n this.swiper.slideTo(index, 300)\n },\n goToMiddleItem () {\n const nbItems = this.accessories.length\n const middleItem = Math.round(nbItems / 2) - 1\n this.swiper.slideTo(middleItem, 300)\n },\n centerPagination () {\n var swiperPagination = document.querySelector('.range_swiper .swiper-pagination')\n var swiperPaginationWidth = swiperPagination.offsetWidth\n swiperPaginationWidth = 300\n swiperPagination.style.left = 'calc(50% - ' + swiperPaginationWidth / 2 + 'px)'\n },\n clickTile (collection, index) {\n this.collectionChange(collection)\n this.goToSlide(index)\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!./AccessoryRange.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!./AccessoryRange.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccessoryRange.vue?vue&type=template&id=6d455054&\"\nimport script from \"./AccessoryRange.vue?vue&type=script&lang=js&\"\nexport * from \"./AccessoryRange.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AccessoryRange.vue?vue&type=style&index=0&id=6d455054&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 AccessoryRange from './AccessoryRange'\n\nexport default AccessoryRange\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemsCollection.vue?vue&type=style&index=0&id=20b03335&prod&lang=sass&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"g_read_more_accordion\"},[_c('ul',{class:_vm.list.isOpen===true?'g_isCollapsable':'',attrs:{\"role\":\"accordion\"}},[_c('li',{staticClass:\"g_accordionItem\"},[_c('ReadMoreCollapseButton',{attrs:{\"feature\":_vm.list}},[[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.list.isOpen===true?_vm.list.titleOpened:_vm.list.titleClosed)}}),_c('i',{class:'fn_moreCircle'})]],2),(_vm.list.items)?_c('ReadMoreCollapsible',{attrs:{\"contrast\":_vm.list.contrast,\"feature\":_vm.list.items,\"isOpen\":_vm.list.isOpen}}):_vm._e()],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('button',{staticClass:\"g_title\",class:{g_open: _vm.feature.isOpen},attrs:{\"aria-expanded\":_vm.feature.isOpen,\"data-of\":\"of\",\"data-translate\":\"Accordion item\",\"tabindex\":\"0\"},on:{\"click\":function($event){return _vm.toggle()}}},[_c('span',{staticClass:\"g_visually_hidden\"},[_vm._v(\"Accordion item\")]),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <button\n :aria-expanded=\"feature.isOpen\"\n :class=\"{g_open: feature.isOpen}\"\n @click=\"toggle()\"\n class=\"g_title\"\n data-of=\"of\"\n data-translate=\"Accordion item\"\n tabindex=\"0\">\n <span class=\"g_visually_hidden\">Accordion item</span>\n <slot />\n </button>\n</template>\n<script>\nimport Tracking from 'nespresso-library/src/core/tracking'\n\nexport default {\n name: 'ReadMoreCollapseButton',\n props: {\n feature: {}\n },\n methods: {\n toggle () {\n this.feature.isOpen = !this.feature.isOpen\n if (this.feature.isOpen) {\n const { trackingLabel, title } = this.feature\n Tracking.customEvent({\n category: 'User Engagement',\n action: 'Click',\n label: `${this.$landing.trackingLabelPrefix} - Faq - ${trackingLabel || title}`,\n interaction: 0\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!./ReadMoreCollapseButton.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!./ReadMoreCollapseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReadMoreCollapseButton.vue?vue&type=template&id=224eb0b9&\"\nimport script from \"./ReadMoreCollapseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./ReadMoreCollapseButton.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 render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:['g_collapsible g_wysiwyg', _vm.contrast],attrs:{\"aria-hidden\":''+!_vm.isOpen}},_vm._l((_vm.feature),function(item,index){return _c('div',{key:index,domProps:{\"innerHTML\":_vm._s(item)}})}),0)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import sass/variables\n.g_coollapsible.g_wysiwyg\n overflow: hidden\n opacity: 0\n visibility: hidden\n max-height: 0\n +transition($duration_medium $easing)\n\n &[aria-hidden=false]\n opacity: 1\n visibility: visible\n max-height: pxToEm($accordion_max_lines * stripUnits(remToPx($L_txt_line_height)))\n</style>\n\n<template>\n <div\n :aria-hidden=\"''+!isOpen\"\n :class=\"['g_collapsible g_wysiwyg', contrast]\">\n <div\n :key=\"index\"\n v-for=\"(item, index) in feature\"\n v-html=\"item\"></div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'ReadMoreCollapsible',\n props: {\n feature: {},\n contrast: {\n type: String,\n default: 'light'\n },\n isOpen: {\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!./ReadMoreCollapsible.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!./ReadMoreCollapsible.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReadMoreCollapsible.vue?vue&type=template&id=62652ec8&\"\nimport script from \"./ReadMoreCollapsible.vue?vue&type=script&lang=js&\"\nexport * from \"./ReadMoreCollapsible.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReadMoreCollapsible.vue?vue&type=style&index=0&id=62652ec8&prod&lang=sass&rel=stylesheet%2Fsass&\"\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","<style\n lang=\"sass\"\n rel=\"stylesheet/sass\">\n@import ~nespresso-bi/utilities\n@import ~nespresso-bi/brand/variables\n@import sass/variables\n@import sass/readMoreAccordion\n</style>\n\n<template>\n <div class=\"g_read_more_accordion\">\n <ul\n :class=\"list.isOpen===true?'g_isCollapsable':''\"\n role=\"accordion\">\n <li class=\"g_accordionItem\">\n <ReadMoreCollapseButton :feature=\"list\">\n <template>\n <span v-html=\"list.isOpen===true?list.titleOpened:list.titleClosed\" />\n <i :class=\"'fn_moreCircle'\" />\n </template>\n </ReadMoreCollapseButton>\n <ReadMoreCollapsible\n :contrast=\"list.contrast\"\n :feature=\"list.items\"\n :isOpen=\"list.isOpen\"\n v-if=\"list.items\" />\n </li>\n </ul>\n </div>\n</template>\n\n<script>\nimport ReadMoreCollapseButton from './ReadMoreCollapseButton.vue'\nimport ReadMoreCollapsible from './ReadMoreCollapsible.vue'\n\nexport default {\n name: 'ReadMoreAccordion',\n props: {\n list: {\n type: Object,\n required: true\n }\n },\n components: {\n ReadMoreCollapseButton,\n ReadMoreCollapsible\n },\n created () {\n this.$set(this.list, 'isOpen', false)\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!./ReadMoreAccordion.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!./ReadMoreAccordion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReadMoreAccordion.vue?vue&type=template&id=1a3c03f6&\"\nimport script from \"./ReadMoreAccordion.vue?vue&type=script&lang=js&\"\nexport * from \"./ReadMoreAccordion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReadMoreAccordion.vue?vue&type=style&index=0&id=1a3c03f6&prod&lang=sass&rel=stylesheet%2Fsass&\"\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 ReadMoreAccordion from './ReadMoreAccordion'\n\nexport default ReadMoreAccordion\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BgTable.vue?vue&type=style&index=0&id=dfb9875a&prod&lang=sass&\""],"sourceRoot":""}