{"version":3,"file":"TeaserBigImageElementFi-DYdMX5xI.js","sources":["../../src/components/teaser/teaser-big-image-element-fi/TeaserBigImageElementFi.vue"],"sourcesContent":["<template>\n  <grid-container-fi\n    class=\"teaser-big-image-element-fi\"\n    :class=\"{ 'teaser-big-image-element-fi--slider-element': isSliderElement }\"\n    :container=\"false\"\n  >\n    <div class=\"fi-col-span-12 fi-col-start-1\">\n      <div\n        class=\"teaser-big-image-element-fi__container\"\n        :class=\"[\n          { 'teaser-big-image-element-fi__container--dark': background === 'dark' },\n          { 'teaser-big-image-element-fi__container--light': background === 'light' },\n          { 'teaser-big-image-element-fi__container--white': background === 'white' },\n          { 'teaser-big-image-element-fi__container--big-image': isBigImage },\n          { 'teaser-big-image-element-fi__container--image-pos-right': isImagePosRight },\n        ]\"\n      >\n        <div\n          class=\"teaser-big-image-element-fi__column teaser-big-image-element-fi__image-container\"\n        >\n          <div\n            v-if=\"isEditMode && isVideo(fields)\"\n            class=\"video-player-fi__overlay\"\n          >\n            <div class=\"video-player-fi__play-button\">\n              <icon-fi icon=\"play\" />\n            </div>\n          </div>\n\n          <!-- eslint-disable vue/no-v-html -->\n          <div\n            v-if=\"!isSliderElement && isEditMode && fields.image\"\n            class=\"teaser-big-image-element-fi__image--editor\"\n            v-html=\"fields.image.editable\"\n          />\n          <!-- eslint-enable vue/no-v-html -->\n\n          <div v-if=\"isSliderElement && isEditMode && fields.image\">\n            <img :src=\"fields.image?.value.src\" />\n          </div>\n\n          <div\n            v-else-if=\"!isEditMode && isImageSrc && !isVideo(fields)\"\n            class=\"teaser-big-image-element-fi__image\"\n          >\n            <cloud-image-fi\n              :src=\"fields.image?.value.src || image?.src\"\n              :alt=\"fields.image?.value.alt || image?.alt\"\n              :params=\"imageParams\"\n              full-height\n            />\n          </div>\n\n          <div\n            v-else-if=\"!isEditMode && isImageSrc && isVideo(fields)\"\n            class=\"teaser-big-image-element-fi__video\"\n          >\n            <video-player-fi\n              class=\"teaser-big-image-element-fi__video-player\"\n              :fields=\"fields\"\n              :pause-video=\"pauseVideo\"\n              preview-params=\"func=crop&org_if_sml=0\"\n            />\n          </div>\n\n          <div\n            v-if=\"innovationAwards?.length\"\n            class=\"teaser-big-image-element-fi__innovation-awards\"\n          >\n            <div\n              v-for=\"(award, index) in innovationAwards\"\n              :key=\"index\"\n              class=\"teaser-big-image-element-fi__award\"\n            >\n              <!-- eslint-disable vue/no-v-html -->\n              <div\n                v-if=\"isEditMode && !isSliderElement && award.fields.image\"\n                class=\"teaser-big-image-element-fi__image\"\n                v-html=\"award.fields.image.editable\"\n              />\n              <!-- eslint-enable vue/no-v-html -->\n              <div\n                v-else-if=\"!isEditMode && award.fields.image?.value?.src\"\n                class=\"teaser-big-image-element-fi__award-img\"\n              >\n                <cloud-image-fi\n                  :src=\"award.fields.image.value.src\"\n                  :alt=\"award.fields.image.value.alt\"\n                  params=\"func=crop&org_if_sml=0\"\n                  full-height\n                />\n              </div>\n            </div>\n          </div>\n        </div>\n\n        <div\n          ref=\"contentContainer\"\n          class=\"teaser-big-image-element-fi__column teaser-big-image-element-fi__details-container\"\n        >\n          <div\n            ref=\"content\"\n            class=\"teaser-big-image-element-fi__details\"\n          >\n            <template v-if=\"isEditMode && fields.content\">\n              <!-- eslint-disable vue/no-v-html -->\n              <div\n                v-if=\"!isSliderElement && fields.content.editable\"\n                ref=\"rteContent\"\n                :class=\"{\n                  'teaser-big-image-element-fi__content richtext-fi': true,\n                  'richtext-fi--light': background === 'brand' || background === 'dark',\n                }\"\n                v-html=\"fields.content.editable\"\n              />\n              <div\n                v-else\n                ref=\"rteContent\"\n                :class=\"{\n                  'teaser-big-image-element-fi__content richtext-fi': true,\n                  'richtext-fi--light': background === 'brand' || background === 'dark',\n                }\"\n                v-html=\"fields.content.value\"\n              />\n              <!-- eslint-enable vue/no-v-html -->\n            </template>\n            <template v-else>\n              <!-- eslint-disable vue/no-v-html -->\n              <richtext-fi\n                ref=\"rteContent\"\n                :class=\"{\n                  'teaser-big-image-element-fi__content': true,\n                  'richtext-fi--light': background === 'brand' || background === 'dark',\n                }\"\n                :is-theme-light=\"background === 'brand' || background === 'dark'\"\n                :html-content=\"fields.content ? fields.content : null\"\n              >\n                <slot name=\"content\" />\n              </richtext-fi>\n              <!-- eslint-enable vue/no-v-html -->\n            </template>\n          </div>\n        </div>\n      </div>\n    </div>\n  </grid-container-fi>\n</template>\n\n<script>\nimport { IconFi, RichtextFi } from 'atoms';\nimport CloudImageFi from 'components/atoms/cloud-image-fi/CloudImageFi';\nimport GridContainerFi from 'components/grid-fi/GridContainerFi';\nimport VideoPlayerFi from 'components/video-player-fi/VideoPlayerFi';\nimport breakpointMixin from 'mixins/breakpointMixin';\nimport videoMixin from 'mixins/videoMixin';\nimport { throttle } from 'throttle-debounce';\nimport { mapGetters } from 'vuex';\n\nimport smoothScroll from '@/utils/smoothScroll';\n\nexport default {\n  name: 'TeaserBigImageElementFi',\n  components: {\n    IconFi,\n    GridContainerFi,\n    RichtextFi,\n    CloudImageFi,\n    VideoPlayerFi,\n  },\n  mixins: [breakpointMixin, videoMixin],\n  props: {\n    fields: {\n      type: Object,\n      default: () => ({}),\n    },\n    isSliderElement: {\n      type: Boolean,\n      default: false,\n    },\n    pauseVideo: {\n      type: Boolean,\n      default: false,\n    },\n    image: {\n      type: Object,\n      default: null,\n    },\n    imagePosRight: {\n      type: Boolean,\n      default: null,\n    },\n    bgColor: {\n      type: String,\n      default: null,\n    },\n  },\n  data() {\n    return {\n      wrapperClassName: 'teaser-big-image-element-fi__truncate-wrapper',\n      throttledResizeListener: null,\n    };\n  },\n  computed: {\n    ...mapGetters({\n      windowDimensions: 'layout/getWindowDimensions',\n    }),\n    isImageSrc() {\n      if (this.image?.src) {\n        return true;\n      }\n\n      return this.fields.image?.value?.src;\n    },\n    isBigImage() {\n      return Boolean(this.fields?.bigImageSize?.value);\n    },\n    isImagePosRight() {\n      if (this.imagePosRight) {\n        return this.imagePosRight;\n      }\n\n      return Boolean(this.fields?.imagePosRight?.value);\n    },\n    innovationAwards() {\n      if (this.fields?.teaserBigImageInnovationAwards?.length) {\n        return this.fields.teaserBigImageInnovationAwards;\n      }\n      return [];\n    },\n    background() {\n      if (this.fields.darkBackground?.value) {\n        return 'dark';\n      }\n\n      if (this.fields.lightBackground?.value) {\n        return 'light';\n      }\n\n      if (this.fields.whiteBackground?.value) {\n        return 'white';\n      }\n\n      if (this.bgColor) {\n        return this.bgColor;\n      }\n\n      return 'brand';\n    },\n    imageParams() {\n      if (this.isMD) {\n        return 'func=crop&org_if_sml=0';\n      }\n\n      return 'aspect_ratio=16:9&org_if_sml=0';\n    },\n  },\n  watch: {\n    windowDimensions: {\n      deep: true,\n      handler() {\n        this.throttledResizeListener?.();\n      },\n    },\n  },\n  async mounted() {\n    if (!this.isEditMode) {\n      await this.prepareContent();\n\n      if (this.$refs.rteContent) {\n        smoothScroll(this.$refs.rteContent.$el);\n      }\n\n      if (!IS_SSR) {\n        this.throttledResizeListener = throttle(800, () => this.truncateContent());\n      }\n\n      await this.$nextTick();\n      await this.truncateContent();\n    }\n  },\n  methods: {\n    async prepareContent() {\n      const targetContentElement =\n        this.isEditMode && !this.isSliderElement\n          ? this.$refs.rteContent.querySelector('.scWebEditInput')\n          : this.$refs.rteContent.$el.childNodes[0];\n      const contentElements = this.isEditMode\n        ? targetContentElement?.childNodes\n        : this.$refs.rteContent.$el.childNodes[0].childNodes;\n      const firstElement = contentElements?.[0];\n      if (!firstElement) {\n        return;\n      }\n\n      const wrapper = document.createElement('div');\n      wrapper.classList.add(this.wrapperClassName);\n      targetContentElement.insertBefore(wrapper, firstElement);\n\n      await this.$nextTick();\n\n      const truncateWrapper = targetContentElement.querySelector(`.${this.wrapperClassName}`);\n\n      Array.from(contentElements)\n        .splice(1)\n        .forEach((el) => {\n          if (el.classList?.contains('button-fi')) {\n            return;\n          }\n\n          truncateWrapper.appendChild(el);\n        });\n    },\n    async truncateContent() {\n      if (!this.$refs.rteContent) {\n        return;\n      }\n\n      const targetContentElement =\n        this.isEditMode && !this.isSliderElement\n          ? this.$refs.rteContent.querySelector('.scWebEditInput')\n          : this.$refs.rteContent.$el;\n      const wrapper = targetContentElement.querySelector(`.${this.wrapperClassName}`);\n      if (!wrapper) {\n        return;\n      }\n      wrapper.style['-webkit-line-clamp'] = 'unset';\n      await this.$nextTick();\n\n      const contentPaddingY =\n        parseInt(getComputedStyle(this.$refs.content).paddingTop, 10) +\n        parseInt(getComputedStyle(this.$refs.content).paddingBottom, 10);\n\n      let contentHeight = this.$refs.content.childNodes[0].offsetHeight + contentPaddingY;\n      let lineClamp = 15;\n      const updateLineClamp = async () => {\n        wrapper.style['-webkit-line-clamp'] = lineClamp;\n        await this.$nextTick();\n        lineClamp -= 1;\n\n        contentHeight = this.$refs.content.childNodes[0].offsetHeight + contentPaddingY;\n\n        if (contentHeight <= this.$refs.contentContainer.offsetHeight || lineClamp === 0) {\n          return;\n        }\n\n        updateLineClamp();\n      };\n\n      if (contentHeight > this.$refs.contentContainer.offsetHeight) {\n        updateLineClamp();\n      }\n    },\n  },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n@import './teaser-big-image-element-fi';\n</style>\n\n<style lang=\"scss\">\n@import './teaser-big-image-element-fi-unscoped';\n</style>\n"],"names":["_sfc_main","IconFi","GridContainerFi","RichtextFi","CloudImageFi","VideoPlayerFi","breakpointMixin","videoMixin","mapGetters","_a","_c","_b","smoothScroll","throttle","targetContentElement","contentElements","firstElement","wrapper","truncateWrapper","el","contentPaddingY","contentHeight","lineClamp","updateLineClamp","_hoisted_1","_hoisted_2","_hoisted_4","_hoisted_5","_hoisted_7","_hoisted_11","_hoisted_15","_hoisted_16","_createBlock","_component_grid_container_fi","_normalizeClass","$props","_withCtx","_createElementVNode","$options","_ctx","_openBlock","_createElementBlock","_hoisted_3","_createVNode","_component_icon_fi","_createCommentVNode","_hoisted_6","_hoisted_8","_component_cloud_image_fi","_d","_e","_hoisted_9","_component_video_player_fi","_f","_hoisted_10","_Fragment","_renderList","award","index","_hoisted_12","_hoisted_13","_hoisted_14","_component_richtext_fi","_renderSlot"],"mappings":"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"}