<template>
  <message-outgoing v-bind="{ ...$props, ...$attrs }">
    <div class="bubble image-bubble">
      <v-responsive :aspect-ratio="16 / 9" class="ma-0 pa-0">
        <video :src="src" controls class="w-100 h-100">
          {{$t('fallbacks.video_file')}}
        </video>
        <div v-if="downloadProgress" class="download-overlay">
          <div class="text-center download-text">
            {{ $t('message.download_progress',{percentage: downloadProgress}) }}
          </div>
        </div>
        <div v-else-if="userInitiatedDownloadsOnly && !src" class="download-overlay">
          <div class="text-center download-text">
            {{ fileName }}
          </div>
          <div class="text-center download-size">
            {{ fileSize }}
          </div>
          <v-icon size="32" color="white" class="clickable" @click="loadAttachmentSource(event, true)">download</v-icon>
        </div>
      </v-responsive>
    </div>
  </message-outgoing>
</template>

<script>
import attachmentMixin from "./attachmentMixin";
import MessageOutgoing from "./MessageOutgoing.vue";

export default {
  extends: MessageOutgoing,
  components: { MessageOutgoing },
  mixins: [attachmentMixin],
};
</script>

<style lang="scss">
@use "@/assets/css/chat.scss" as *;
</style>