mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
30 lines
902 B
TypeScript
30 lines
902 B
TypeScript
/**
|
|
* Reads and returns the file encoded in base64
|
|
*/
|
|
export function readFileAsBase64(file: File): Promise<string> {
|
|
return new Promise(function (resolve, reject) {
|
|
const reader = new FileReader();
|
|
reader.onload = (e) => {
|
|
// Split by a comma to remove the url: prefix
|
|
const data = (e.target?.result as string)?.split?.(',')[1];
|
|
resolve(data);
|
|
};
|
|
reader.onerror = reject;
|
|
reader.readAsDataURL(file);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Reads and returns the file in text format
|
|
*/
|
|
export function readFileAsText(file: File): Promise<string> {
|
|
return new Promise(function (resolve, reject) {
|
|
const reader = new FileReader();
|
|
reader.onload = (e) => {
|
|
const data = e.target?.result as string;
|
|
resolve(data);
|
|
};
|
|
reader.onerror = reject;
|
|
reader.readAsText(file);
|
|
});
|
|
}
|