{"version":3,"sources":["webpack:///./src/components/Editorial/MgnlEditorial.vue?bdfa","webpack:///src/components/Editorial/MgnlEditorial.vue","webpack:///./src/components/Editorial/MgnlEditorial.vue?b60a","webpack:///./src/components/Editorial/MgnlEditorial.vue","webpack:///./src/components/Editorial/EditorialHorizontalImmersive.vue?8e7b","webpack:///src/components/Editorial/EditorialHorizontalImmersive.vue","webpack:///./src/components/Editorial/EditorialHorizontalImmersive.vue?f45e","webpack:///./src/components/Editorial/EditorialHorizontalImmersive.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","class","classes","_b","attrs","areaSectionStyle","common","actpageFullUrl","model","_t","staticRenderFns","mixins","name","components","Editorial","Editorial_immersive","computed","areaModel","sectionStyle","props","component","visibility","$config","editMode","ref","uuid","staticClass","getLayoutClasses","style","isMobile","_f","getFallbackImage","altImage","_e","image","upperSubtitle","hideUpperSubtitle","subheadingTag","tag","_v","_s","headingTag","headingClass","title","subtitle","domProps","text","ctaLinks","length","_l","ctaObj","key","analyticsData","type","Boolean"],"mappings":"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","file":"js/chunk-2cc50662-d8eb0d13db01070a8895.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.classes},[_c('editorial',_vm._b({attrs:{\"section-style\":_vm.areaSectionStyle,\"actpageFullUrl\":_vm.common.actpageFullUrl}},'editorial',_vm.model,false),[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"classes\">\n    <editorial v-bind=\"model\" :section-style=\"areaSectionStyle\" :actpageFullUrl=\"common.actpageFullUrl\">\n\n      <slot></slot>\n    </editorial>\n  </div>\n</template>\n\n<script>\nimport { mgnlComponentMixin } from \"@wl-vue-mixins/mixins.js\";\nimport Editorial              from \"./Editorial\";\nimport Editorial_immersive from \"./EditorialHorizontalImmersive.vue\";\n\n\nexport default {\n  mixins: [mgnlComponentMixin], // !!! all the mgnl components must be configured with mgnlComponentMixin !!!\n\n  name: \"MgnlEditorial\",\n  components: {\n    Editorial,\n    Editorial_immersive\n  },\n  computed: {\n    classes() {\n      return this.areaModel ? `cell ${this.areaModel.cell}` : '';\n    },\n    areaSectionStyle() {\n      return this.areaModel ? this.areaModel.sectionStyle : this.model.sectionStyle;\n    }\n  },\n  props: ['areaModel']\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!./MgnlEditorial.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!./MgnlEditorial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MgnlEditorial.vue?vue&type=template&id=36fc0a2b&\"\nimport script from \"./MgnlEditorial.vue?vue&type=script&lang=js&\"\nexport * from \"./MgnlEditorial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visibility || _vm.$config.editMode)?_c('div',{ref:(\"id-\" + _vm.uuid),staticClass:\"editorial-immersive__grid\",class:_vm.getLayoutClasses},[(_vm.image)?_c('figure',{staticClass:\"editorial-immersive__grid-item  editorial-immersive__figure\",style:(_vm.getGridStyle)},[(!_vm.isMobile)?_c('pg-image',{attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.image,'url'),\"alt\":_vm.altImage}}):(_vm.isMobile)?_c('pg-image',{staticClass:\"mobile\",attrs:{\"lazy-src\":_vm._f(\"mgnlMedia\")(_vm.getFallbackImage,'url'),\"alt\":_vm.altImage}}):_vm._e()],1):_vm._e(),_c('div',{staticClass:\"editorial-immersive__grid-item editorial-immersive__text\",style:(_vm.getGridStyle)},[(_vm.upperSubtitle && !_vm.hideUpperSubtitle)?_c(_vm.subheadingTag,{tag:\"component\",staticClass:\"editorial-immersive__grid__subheading editorial-immersive__grid__subheading--upper text--heading-s\"},[_vm._v(_vm._s(_vm.upperSubtitle)+\" \")]):_vm._e(),(_vm.title)?_c(_vm.headingTag,{tag:\"component\",class:_vm.headingClass},[_vm._v(_vm._s(_vm.title))]):_vm._e(),(_vm.subtitle)?_c(_vm.subheadingTag,{tag:\"component\",staticClass:\"editorial-immersive__grid__subheading text--heading-s\"},[_vm._v(_vm._s(_vm.subtitle)+\" \")]):_vm._e(),_c('div',{staticClass:\"text--body\",domProps:{\"innerHTML\":_vm._s(_vm.text)}}),(_vm.ctaLinks && _vm.ctaLinks.length > 0)?_c('div',{staticClass:\"editorial-immersive__grid__cta margin-top__btn-m margin-bottom__btn-m\"},_vm._l((_vm.ctaLinks),function(ctaObj){return _c('span',{key:ctaObj.uuid},[_c('advanced-button-wrapper',{attrs:{\"cta-obj\":ctaObj,\"color\":\"primary\",\"styleType\":\"text\",\"size\":\"medium\",\"sectionStyle\":_vm.sectionStyle,\"analyticsData\":_vm.analyticsData(ctaObj)}})],1)}),0):_vm._e()],1)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"visibility || $config.editMode\" class=\"editorial-immersive__grid\" :class=\"getLayoutClasses\" :ref=\"`id-${uuid}`\">\n    <figure v-if=\"image\" class=\"editorial-immersive__grid-item  editorial-immersive__figure\" :style=\"getGridStyle\">\n      <pg-image v-if=\"!isMobile\" :lazy-src=\"image | mgnlMedia('url')\" :alt=\"altImage\"></pg-image>\n      <pg-image v-else-if=\"isMobile\" :lazy-src=\"getFallbackImage | mgnlMedia('url')\" :alt=\"altImage\" class=\"mobile\"></pg-image>\n    </figure>\n    <div class=\"editorial-immersive__grid-item editorial-immersive__text\" :style=\"getGridStyle\">\n      <component\n          :is=\"subheadingTag\"\n          class=\"editorial-immersive__grid__subheading editorial-immersive__grid__subheading--upper text--heading-s\"\n          v-if=\"upperSubtitle && !hideUpperSubtitle\"\n      >{{upperSubtitle}}\n      </component>\n      <component :is=\"headingTag\" :class=\"headingClass\" v-if=\"title\">{{title}}</component>\n      <component\n          :is=\"subheadingTag\"\n          class=\"editorial-immersive__grid__subheading text--heading-s\"\n          v-if=\"subtitle\"\n      >{{subtitle}}\n      </component>\n      <div class=\"text--body\" v-html=\"text\"></div>\n      <div v-if=\"ctaLinks && ctaLinks.length > 0\" class=\"editorial-immersive__grid__cta margin-top__btn-m margin-bottom__btn-m\">\n        <span v-for=\"ctaObj in ctaLinks\" :key=\"ctaObj.uuid\">\n          <advanced-button-wrapper :cta-obj=\"ctaObj\" color=\"primary\" styleType=\"text\" size=\"medium\" :sectionStyle=\"sectionStyle\" :analyticsData=\"analyticsData(ctaObj)\"/>\n        </span>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\n  import AdvancedButtonWrapper from \"../Advanced-Button-Wrapper/Advanced-Button-Wrapper\";\n  import PgImage  from \"../Image/Image.vue\";\n\n  export default {\n    name: \"EditorialHorizontalImmersive\",\n    data() {\n      return {\n        actionParam: null\n      }\n    },\n    components: {\n      AdvancedButtonWrapper,\n      PgImage\n    },\n    props: {\n      uuid: {\n        type: String\n      },\n      upperSubtitle: {\n        type: String\n      },\n      hideUpperSubtitle: {\n      type: Boolean\n      },\n      title: {\n        type: String\n      },\n      subtitle: {\n        type: String\n      },\n      text: {\n        type: String\n      },\n      ctaLinks: {\n        type: Array,\n        required: false,\n        default: () => []\n      },\n      image: {\n        type: Object,\n        required: false,\n        default: null\n      },\n      imageMobile: {\n        type: Object,\n        required: false,\n        default: null\n      },\n      altImage: {\n        type: String,\n        defaultValue: \"\",\n        required: false\n      },\n      layout: {\n        type: String\n      },\n      headingStyle: {\n        type: String\n      },\n      sectionStyle: {\n        type: String\n      },\n      fullImage: {\n        type: Boolean,\n        default: false\n      },\n      actpageFullUrl: {\n        type: String,\n      },\n      visibility: {\n        type: Boolean,\n        default: true\n      }\n    },\n    computed: {\n      getFallbackImage() {\n        return !this.imageMobile ? this.image : this.imageMobile;\n      },\n      getGridStyle() {\n        return !this.isMobile ? \"--aspect-ratio: 4/3;\" : \"--aspect-ratio: 3/4;\"\n      },\n      isMobile() {\n        return window.matchMedia('only screen and (max-width: 640px)').matches;\n      },\n      headingClass() {\n        return this.headingStyle === \"large\"\n            ? \"editorial-immersive__grid__title text--heading-l\"\n            : \"editorial-immersive__grid__title text--heading-m\";\n      },\n      headingTag() {\n        return this.headingStyle === \"large\" ? \"h2\" : \"h3\"; //simplified heading hierarchy for accessibility purpose\n      },\n      subheadingTag() {\n        return this.headingStyle === \"large\" ? \"p\" : \"p\"; //simplified heading hierarchy for accessibility purpose\n      },\n      getLayoutClasses() {\n        return [\n          this.fullImage ? \"editorial-immersive__grid-fullImage\" : \"\",\n          `editorial-immersive__${this.layout}`\n        ]\n      }\n    },\n    methods: {\n      isInViewport(elem) {\n        const rect = elem.getBoundingClientRect();\n        const html = document.documentElement;\n        return (\n            rect.top >= 0 &&\n            rect.left >= 0 &&\n            rect.bottom <= (window.innerHeight || html.clientHeight) &&\n            rect.right <= (window.innerWidth || html.clientWidth)\n        );\n      },\n      scrollToAnchor(targetId) {\n\n        if (targetId == `id-${this.uuid}`) {\n          const anchor = this.$refs[targetId];\n\n          if (!anchor) return;\n          const marginToTop = 144;\n          const bounding = anchor.getBoundingClientRect();\n          let distanceToTop = Math.floor(bounding.top - marginToTop);\n\n          if (window.pageYOffset === 0) {\n            distanceToTop -= 62;\n          }\n\n          anchor.parentElement.tabIndex = -1;\n          anchor.parentElement.focus();\n\n          window.scrollBy({top: distanceToTop, left: 0, behavior: \"smooth\"});\n\n        }\n      },\n      onPageScrolling() {\n        const ctx = this;\n        window.requestAnimationFrame(() => {\n          // Run scroll functions\n          const anchor = document.getElementById(`uuid-${ctx.uuid}`);\n          if (ctx.isInViewport(anchor)) {\n            ctx.$eventHub.emit('editorial:elementInViewport', ctx.uuid);\n          }\n        });\n      },\n      analyticsData(el) {\n        return {\n          evCategory: 'call_to_action',\n          evAction: el.document?.url || el.link?.url || el.trackingLabel,\n          evLabel: `${el.campaignId || 'No Campaign'} | ${this.actpageFullUrl}`\n        }\n      }\n    },\n    mounted() {\n      // Listen for message events\n      this.$eventHub.on(\"anchor:scrollTo\", (targetId) => {\n        this.scrollToAnchor(targetId);\n      });\n      // Listen for scroll events\n      if (this.upperSubtitle) {\n        window.addEventListener(\"scroll\", this.onPageScrolling);\n      }\n    },\n    destroyed() {\n      window.removeEventListener(\"scroll\", this.onPageScrolling);\n    }\n  };\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorialHorizontalImmersive.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!./EditorialHorizontalImmersive.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditorialHorizontalImmersive.vue?vue&type=template&id=dd0ea124&\"\nimport script from \"./EditorialHorizontalImmersive.vue?vue&type=script&lang=js&\"\nexport * from \"./EditorialHorizontalImmersive.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}