diff --git a/public/index.html b/public/index.html
index 5d29773..9110d0c 100644
--- a/public/index.html
+++ b/public/index.html
@@ -134,9 +134,7 @@
File Received
Filename
-
-
-
+
diff --git a/public/scripts/ui.js b/public/scripts/ui.js
index 410769c..17b493a 100644
--- a/public/scripts/ui.js
+++ b/public/scripts/ui.js
@@ -421,6 +421,7 @@ class ReceiveDialog extends Dialog {
window.blop.play();
});
this._filesQueue = [];
+ this.$previewBox = this.$el.querySelector('.preview')
}
_nextFile(nextFile) {
@@ -453,10 +454,23 @@ class ReceiveDialog extends Dialog {
$a.click()
return
}
- if(file.mime.split('/')[0] === 'image'){
- console.log('the file is image');
- this.$el.querySelector('.preview').style.visibility = 'inherit';
- this.$el.querySelector("#img-preview").src = url;
+
+ let mime = file.mime.split('/')[0]
+ let previewElement = {
+ image: 'img',
+ audio: 'audio',
+ video: 'video'
+ }
+
+ if(Object.keys(previewElement).indexOf(mime) !== -1){
+ console.log('the file is able to preview');
+ let element = document.createElement(previewElement[mime]);
+ element.src = url;
+ element.controls = true;
+ element.classList = 'element-preview'
+
+ this.$previewBox.style.visibility = 'inherit';
+ this.$previewBox.appendChild(element)
}
this.$el.querySelector('#fileName').textContent = file.name;
@@ -484,8 +498,8 @@ class ReceiveDialog extends Dialog {
}
hide() {
- this.$el.querySelector('.preview').style.visibility = 'hidden';
- this.$el.querySelector("#img-preview").src = "";
+ this.$previewBox.style.visibility = 'hidden';
+ this.$previewBox.innerHTML = '';
super.hide();
this._dequeueFile();
}
diff --git a/public/styles.css b/public/styles.css
index 5fc6ff2..a713ca7 100644
--- a/public/styles.css
+++ b/public/styles.css
@@ -807,8 +807,8 @@ x-dialog x-paper {
color: var(--text-color);
background-color: var(--bg-color-secondary);
}
-/* Image Preview */
-#img-preview{
+/* Image/Video/Audio Preview */
+.element-preview {
max-width: 100%;
max-height: 50vh;
margin: auto;