Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/im/v2/component/message/file/src/components/items/ |
Upload File : |
import { AudioPlayer } from 'im.v2.component.elements.audioplayer'; import { ProgressBar } from 'im.v2.component.elements.progressbar'; import '../../css/items/audio.css'; import type { ImModelFile } from 'im.v2.model'; // @vue/component export const AudioItem = { name: 'AudioItem', components: { AudioPlayer, ProgressBar }, props: { item: { type: Object, required: true, }, messageType: { type: String, required: true, }, messageId: { type: [String, Number], required: true, }, }, emits: ['cancelClick'], computed: { file(): ImModelFile { return this.item; }, isLoaded(): boolean { return this.file.progress === 100; }, }, methods: { onCancelClick(event) { this.$emit('onCancel', event); }, }, template: ` <div class="bx-im-media-audio__container"> <ProgressBar v-if="!isLoaded" :item="file" @cancelClick="onCancelClick" /> <AudioPlayer :id="file.id" :messageId="messageId" :src="file.urlDownload" :file="file" :timelineType="Math.floor(Math.random() * 5)" :authorId="file.authorId" :withContextMenu="false" :withAvatar="false" /> </div> `, };