{"version":3,"file":"MediaLibraryItemFi-BrUltHO1.js","sources":["../../src/mixins/mediaLibraryMixin.vue","../../src/components/media-library-zoom-image-dialog-fi/MediaLibraryZoomImageDialogFi.vue","../../src/plugins/tailwind-theme.js","../../src/components/media-library-item-fi/MediaLibraryItemFi.vue"],"sourcesContent":["<script>\nimport prettyBytes from 'pretty-bytes';\n\nexport default {\n  data() {\n    return {\n      imageFileTypes: ['jpg', 'png', 'gif', 'ico', 'svg'],\n    };\n  },\n  computed: {\n    fileExtension() {\n      return this.item?.fields?.file?.value?.extension?.toUpperCase();\n    },\n    fileUrl() {\n      return this.item?.fields?.file?.value?.src;\n    },\n    fileSizeInBytes() {\n      return this.item?.fields?.file?.value?.size;\n    },\n    isImageFile() {\n      if (!this.fileExtension) {\n        return false;\n      }\n      return this.imageFileTypes.includes(this.fileExtension.toLowerCase());\n    },\n    image() {\n      return this.item?.fields?.image?.value?.src;\n    },\n    itemTitle() {\n      return this.item?.fields?.title?.value;\n    },\n    itemSource() {\n      return this.item?.fields?.source?.value;\n    },\n  },\n  methods: {\n    getFileSize(bytes) {\n      const prettyBytesFn = IS_SSR ? prettyBytes.default : prettyBytes;\n      return prettyBytesFn(parseInt(bytes, 10), { maximumFractionDigits: 1 });\n    },\n    getFileSizeAndLabel(bytes) {\n      return `${this.$dict.get('media-Library.Items.Size-Label')} ${this.getFileSize(bytes)}`;\n    },\n  },\n};\n</script>\n","<template>\n  <dialog-modal-fi\n    ref=\"dialog\"\n    class=\"media-library-zoom-image-dialog-fi modal-fi--large\"\n    only-body-scrollable\n    :no-max-height=\"isModalFullscreen\"\n    @after-open-transition=\"showImage\"\n    @close=\"isImageEnabled = false\"\n  >\n    <template #header>\n      <div class=\"media-library-zoom-image-dialog-fi__headline\">\n        {{ itemTitle }}\n      </div>\n    </template>\n    <template #body>\n      <div class=\"media-library-zoom-image-dialog-fi__media-container\">\n        <loading-indicator\n          v-if=\"true\"\n          class=\"media-library-zoom-image-dialog-fi__loading-indicator\"\n          variant=\"spinnerLocal\"\n        />\n        <cloud-image-fi\n          v-if=\"isImageEnabled && mediaUrl\"\n          :key=\"mediaUrl\"\n          class=\"media-library-zoom-image-dialog-fi__media\"\n          :src=\"mediaUrl\"\n          :alt=\"itemTitle\"\n          :params=\"cloudImageParams\"\n          full-height\n        />\n      </div>\n    </template>\n    <template #footer>\n      <div class=\"media-library-zoom-image-dialog-fi__details\">\n        <div class=\"media-library-zoom-image-dialog-fi__file-info\">\n          <div\n            v-if=\"itemSource && mediaUrl\"\n            class=\"media-library-zoom-image-dialog-fi__file-source\"\n          >\n            {{ $dict.get('media-Library.Items.Source-Label-Images') }}\n            {{ itemSource }}\n          </div>\n\n          <div\n            v-if=\"fileUrl\"\n            class=\"media-library-zoom-image-dialog-fi__file-size\"\n          >\n            <span class=\"media-library-zoom-image-dialog-fi__file-size-value\">\n              {{ getFileSizeAndLabel(fileSizeInBytes) }}</span\n            >\n            <span>{{ fileExtension }}</span>\n          </div>\n        </div>\n\n        <a\n          v-if=\"mediaUrl\"\n          :href=\"mediaUrl\"\n          class=\"button-fi__icon button-fi__primary\"\n          download\n          @click=\"handleDownload\"\n        >\n          <icon-fi icon=\"download\" />\n        </a>\n      </div>\n    </template>\n  </dialog-modal-fi>\n</template>\n\n<script>\nimport { CloudImageFi, DialogModalFi, IconFi, LoadingIndicator } from 'atoms';\nimport mediaLibraryMixin from 'mixins/mediaLibraryMixin';\nimport { mapGetters } from 'vuex';\n\nimport eventHubMixin from '@/mixins/eventHubMixin.vue';\n\nexport default {\n  name: 'MediaLibraryZoomImageDialogFi',\n  components: {\n    DialogModalFi,\n    IconFi,\n    CloudImageFi,\n    LoadingIndicator,\n  },\n  mixins: [mediaLibraryMixin, eventHubMixin],\n  props: {\n    item: {\n      type: Object,\n      default: () => ({}),\n    },\n    isNewsroom: {\n      type: Boolean,\n      default: false,\n    },\n  },\n  data() {\n    return {\n      currentWindowWidth: 0,\n      dprDesktop: 1.2,\n      isImageEnabled: false,\n    };\n  },\n  computed: {\n    ...mapGetters({\n      windowDimensions: 'layout/getWindowDimensions',\n    }),\n    isModalFullscreen() {\n      return !IS_SSR ? this.currentWindowWidth < 600 : 0;\n    },\n    mediaUrl() {\n      return this.isNewsroom ? this.image : this.fileUrl;\n    },\n    dprParam() {\n      return !IS_SSR && window?.devicePixelRatio < this.dprDesktop ? `&dpr=${this.dprDesktop}` : '';\n    },\n    cloudImageParams() {\n      return `func=${this.isNewsroom ? 'fit' : 'boundmin'}&aspect_ratio=16:9&force_format=png${\n        this.dprParam\n      }`;\n    },\n  },\n  watch: {\n    windowDimensions: {\n      deep: true,\n      immediate: true,\n      handler() {\n        this.updateWindowWidth();\n      },\n    },\n  },\n  methods: {\n    show() {\n      this.$refs.dialog.open();\n    },\n    close() {\n      this.$refs.dialog.close();\n    },\n    updateWindowWidth() {\n      if (IS_SSR) {\n        return;\n      }\n\n      this.currentWindowWidth = window.innerWidth;\n    },\n    async showImage() {\n      this.isImageEnabled = true;\n\n      if (IS_SSR) {\n        return;\n      }\n\n      await this.$nextTick();\n      window.dispatchEvent(new Event('resize'));\n    },\n    handleDownload() {\n      this.sendEvent('custom', {}, 'download', {\n        link: this.downloadUrl,\n        name: this.itemTitle,\n      });\n    },\n  },\n};\n</script>\n\n<style lang=\"scss\">\n@import './media-library-zoom-image-dialog-fi-unscoped';\n</style>\n","/*\n * NOTE: Hot reload does work correctly!\n *       While it triggers, the changes might not apply.\n *       Restart manually when changing this file.\n */\nconst fiwe = {\n  brand: '#FF0000',\n  'brand-highlight': '#DBD9D4',\n  'brand-selected': '#EFEFEC',\n  'typo-brand': '#FF0000',\n  black: '#000000',\n  white: '#FFFFFF',\n  grey: '#BDBAB0',\n  'grey-20': '#F2F1EF',\n  'grey-40': '#E5E3DF',\n  'grey-70': '#D0CEC7',\n  'grey-dark': '#8C827A',\n  enunciate: '#FF0000',\n  'box-shadow': 'rgba(0, 0, 0, 0.06)',\n  'box-shadow-strong': 'rgba(0, 0, 0, 0.1)',\n  'status-error': '#C50000',\n  'status-success': '#5DAE00',\n  'status-warn': '#FF9E00',\n  'status-warn-dark': '#eb8800',\n  'status-disabled': '#D0CEC7',\n  'typo-black': '#000000',\n  'typo-white': '#ffffff',\n  'typo-grey-dark': '#8C827A',\n  'poi-initial': '#C50000',\n  'poi-installed': '#FFC000',\n  'poi-checked': '#00B050',\n};\n\nexport const fiweDark = {};\n\nconst fite = {\n  ...fiwe,\n  brand: '#0069B4',\n  'brand-highlight': '#D1E2EE',\n  'brand-selected': '#DFEEF8',\n  'typo-brand': '#0069b4',\n  black: '#242627',\n  enunciate: '#FF0000',\n  grey: '#96A2A8',\n  'grey-20': '#EEF3F5',\n  'grey-40': '#DBE2E6',\n  'grey-70': '#C2CDD1',\n  'grey-dark': '#60676C',\n  'typo-grey-dark': '#60676C',\n  'status-error': '#DE3535',\n  'status-success': '#89D14A',\n  'status-warn': '#E3A540',\n};\n\nconst upat = {\n  ...fiwe,\n  brand: '#1561AC',\n  'typo-brand': '#1561AC',\n  enunciate: '#E97300',\n};\n\nexport default {\n  fiwe,\n  fite,\n  upat,\n};\n","<template>\n  <div class=\"media-library-item-fi\">\n    <div\n      :class=\"{\n        'media-library-item-fi__media-container': true,\n        'media-library-item-fi__media-container--brand-bg': socialMediaLogo || isVideoLink,\n        'media-library-item-fi__media-container--no-image':\n          (!fileUrl || !isImageFile) && !isVideoLink && !socialMediaLogo,\n        'media-library-item-fi--is-newsroom': isNewsroom,\n      }\"\n    >\n      <img\n        v-if=\"socialMediaLogo\"\n        class=\"media-library-item-fi__media-icon\"\n        :src=\"socialMediaLogo\"\n        :alt=\"itemTitle\"\n      />\n      <cloud-image-fi\n        v-else-if=\"image || (fileUrl && isImageFile)\"\n        class=\"media-library-item-fi__media\"\n        :src=\"image || fileUrl\"\n        :alt=\"itemTitle\"\n        :params=\"cloudImageParams\"\n      />\n      <template v-else>\n        <img\n          v-if=\"!isVideoLink\"\n          :src=\"placeholderImage\"\n        />\n      </template>\n      <div\n        v-if=\"isVideoLink\"\n        class=\"media-library-item-fi__video-overlay-button\"\n      >\n        <icon-fi\n          class=\"media-library-item-fi__video-icon\"\n          icon=\"youtube-logo\"\n        />\n      </div>\n    </div>\n    <div class=\"media-library-item-fi__content\">\n      <div class=\"media-library-item-fi__title\">\n        {{ itemTitle }}\n      </div>\n\n      <div\n        v-if=\"fileUrl\"\n        class=\"media-library-item-fi__file-size\"\n      >\n        <span>{{ getFileSizeAndLabel(fileSizeInBytes) }}</span>\n        <span>{{ fileExtension }}</span>\n      </div>\n\n      <div class=\"media-library-item-fi__footer\">\n        <div\n          v-if=\"itemSource\"\n          class=\"media-library-item-fi__file-source\"\n        >\n          <template v-if=\"fileUrl && isImageFile\">\n            {{ $dict.get('media-Library.Items.Source-Label-Images') }}\n          </template>\n          <template v-else>\n            {{ $dict.get('media-Library.Items.Source-Label-File') }}\n          </template>\n          {{ itemSource }}\n        </div>\n\n        <div class=\"media-library-item-fi__controls\">\n          <a\n            v-if=\"externalLink\"\n            :href=\"externalLink\"\n            class=\"button-fi__icon button-fi__primary\"\n            target=\"__blank\"\n          >\n            <icon-fi icon=\"link\" />\n          </a>\n\n          <template v-else>\n            <button-fi\n              v-if=\"(fileUrl && isImageFile) || isNewsroom\"\n              class=\"media-library-item-fi__zoom-in button-fi__icon button-fi__tertiary\"\n              @click=\"onZoomImage\"\n            >\n              <icon-fi icon=\"zoom-in\" />\n            </button-fi>\n\n            <a\n              v-if=\"downloadUrl\"\n              :href=\"downloadUrl\"\n              class=\"button-fi__icon button-fi__primary\"\n              download\n              @click=\"handleDownload\"\n            >\n              <icon-fi icon=\"download\" />\n            </a>\n          </template>\n        </div>\n      </div>\n    </div>\n    <media-library-zoom-image-dialog-fi\n      v-if=\"!disbaleDialog && downloadUrl\"\n      ref=\"mediaLibraryZoomImageDialog\"\n      :item=\"item\"\n    />\n  </div>\n</template>\n\n<script>\nimport { ButtonFi, CloudImageFi, IconFi } from 'atoms';\nimport MediaLibraryZoomImageDialogFi from 'components/media-library-zoom-image-dialog-fi/MediaLibraryZoomImageDialogFi';\nimport mediaLibraryMixin from 'mixins/mediaLibraryMixin';\n\nimport getAssetUrl from '@/lib/AssetService';\nimport theme from '@/plugins/tailwind-theme';\n\nexport default {\n  name: 'MediaLibraryItemFi',\n  components: {\n    ButtonFi,\n    CloudImageFi,\n    IconFi,\n    MediaLibraryZoomImageDialogFi,\n  },\n  mixins: [mediaLibraryMixin],\n  inject: ['fields'],\n  props: {\n    item: {\n      type: Object,\n      default: () => ({}),\n    },\n    disbaleDialog: {\n      type: Boolean,\n      default: false,\n    },\n    isNewsroom: {\n      type: Boolean,\n      default: false,\n    },\n  },\n  emits: ['show-zoom-dialog'],\n  data() {\n    return {\n      placeholderImage: getAssetUrl('/img/products/placeholder.svg'),\n    };\n  },\n  computed: {\n    enableYoutubeLogo() {\n      return this.item?.fields?.showYoutubeLogo?.value;\n    },\n    enableFacebookLogo() {\n      return this.item?.fields?.showFacebookLogo?.value;\n    },\n    enableInstagramLogo() {\n      return this.item?.fields?.showInstagramLogo?.value;\n    },\n    enableTwitterLogo() {\n      return this.item?.fields?.showTwitterLogo?.value;\n    },\n    socialMediaLogo() {\n      let url;\n\n      if (this.enableYoutubeLogo) {\n        url = getAssetUrl('/img/media-library/youtube-logo.svg');\n      } else if (this.enableFacebookLogo) {\n        url = getAssetUrl('/img/media-library/facebook-logo.svg');\n      } else if (this.enableInstagramLogo) {\n        url = getAssetUrl('/img/media-library/instagram-logo.svg');\n      } else if (this.enableTwitterLogo) {\n        url = getAssetUrl('/img/media-library/twitter-logo.svg');\n      } else {\n        url = null;\n      }\n\n      return url;\n    },\n    externalLink() {\n      return (\n        this.item?.fields?.externalLink?.value?.href || this.item?.fields?.externalLink?.value?.url\n      );\n    },\n    isVideoLink() {\n      return this.item?.fields?.isVideoLink?.value;\n    },\n    downloadUrl() {\n      return this.isNewsroom ? this.image : this.fileUrl;\n    },\n    cloudImageParams() {\n      return `func=fit&bg_color=${theme.fiwe.grey}&aspect_ratio=16:9`;\n    },\n  },\n  methods: {\n    onZoomImage() {\n      if (!this.disbaleDialog) {\n        this.$refs.mediaLibraryZoomImageDialog.show();\n      } else {\n        this.$emit('show-zoom-dialog', this.item);\n      }\n    },\n    handleDownload() {\n      this.sendEvent('custom', {}, 'download', {\n        link: this.downloadUrl,\n      });\n    },\n  },\n};\n</script>\n\n<style lang=\"scss\">\n@import './media-library-item-fi-unscoped';\n</style>\n\n<style scoped lang=\"scss\">\n@import './media-library-item-fi';\n</style>\n"],"names":["_sfc_main","_e","_d","_c","_b","_a","bytes","prettyBytes","DialogModalFi","IconFi","CloudImageFi","LoadingIndicator","mediaLibraryMixin","eventHubMixin","mapGetters","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_7","_hoisted_8","_createBlock","_component_dialog_modal_fi","$options","$event","$data","_createElementVNode","_toDisplayString","_ctx","_component_loading_indicator","_component_cloud_image_fi","_createCommentVNode","_createElementBlock","_hoisted_5","_openBlock","_hoisted_6","args","_createVNode","_component_icon_fi","fiwe","fite","upat","theme","ButtonFi","MediaLibraryZoomImageDialogFi","getAssetUrl","url","_h","_g","_f","_hoisted_10","_hoisted_11","_hoisted_12","_normalizeClass","$props","_Fragment","_hoisted_9","_createTextVNode","_component_button_fi","_withCtx","_component_media_library_zoom_image_dialog_fi"],"mappings":"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"}