Merge branch 'INDA-330-pii-update' into 'main'
[ProtonMail-WebClient.git] / applications / drive / src / app / utils / file.ts
blob4e14f5ae6f14c393729cfd4a9556f34430dbe1e4
1 import { MB } from '@proton/shared/lib/drive/constants';
3 export const isFile = async (item: File) => {
4     if (item.type !== '' || item.size > MB) {
5         return true;
6     }
8     return new Promise<void>((resolve, reject) => {
9         const reader = new FileReader();
10         reader.onload = ({ target }) => {
11             if (!target?.result) {
12                 return reject();
13             }
14             resolve();
15         };
16         reader.onerror = reject;
17         reader.onabort = reject;
18         reader.readAsBinaryString(item);
19     })
20         .then(() => true)
21         .catch(() => false);
24 export const countFilesToUpload = (
25     files:
26         | FileList
27         | {
28               path: string[];
29               file?: File | undefined;
30           }[]
31 ) => {
32     let count = 0;
33     for (const entry of files) {
34         const file = 'path' in entry ? entry.file : entry;
35         if (file) {
36             count += 1;
37         }
38     }
39     return count;