-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.ts
38 lines (32 loc) · 1.12 KB
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import mimecheck, { BinaryType, FileResult } from './mimecheck';
const uploads: FileResult[] = [];
const fileSelector = document.getElementById('file-selector');
const render = () => {
const container = document.getElementById('files')
const uploadedFiles = uploads.map(file => {
return `<div class="box" style="margin-top: 1rem">
<strong>${file.name}</strong><br>
Filetype from file object: ${file.type}<br>
Filetype from binary: ${file.binaryType}<br>
Hex: <span class="tag"><em>${file.hex}</em></span><br>
Allowed: <span class="tag is-${file.isAllowed ? 'success' : 'danger'}">${file.isAllowed ? 'YES' : 'NO'}</span>
</div>`
})
container.innerHTML = uploadedFiles.join('')
}
fileSelector.addEventListener('change', event => {
const files = event.target.files;
for (let element of files) {
console.time(element.name);
}
console.time('all');
mimecheck.getFileTypes(files, result => {
console.log(result);
console.timeEnd(result.name);
uploads.push(result);
}, results => {
render();
console.log(results);
console.timeEnd('all');
});
});