Spaces:
Running
Running
File size: 1,530 Bytes
762fa11 |
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 39 40 41 |
import mime from "mime";
export const isVideoFile = (filename) => mime.getType(filename)?.startsWith("video") || false;
export const isSubtitleFile = (filename) => filename.toLowerCase().endsWith(".srt") ||
filename.toLowerCase().endsWith(".sub") ||
filename.toLowerCase().endsWith(".vtt") ||
filename.toLowerCase().endsWith(".smi") ||
filename.toLowerCase().endsWith(".ssa") ||
filename.toLowerCase().endsWith(".ass") ||
filename.toLowerCase().endsWith(".txt");
export const getStreamingMimeType = (filename) => {
const mimeType = mime.getType(filename);
return mimeType?.startsWith("video")
? "video/mp4"
: mimeType || "application/unknown";
};
export const getReadableSize = (bytes) => {
if (bytes == 0) {
return "0.00 B";
}
var e = Math.floor(Math.log(bytes) / Math.log(1024));
return ((bytes / Math.pow(1024, e)).toFixed(2) + " " + " KMGTP".charAt(e) + "B");
};
export const getReadableDuration = (millisecs) => {
var seconds = (millisecs / 1000).toFixed(1);
var minutes = (millisecs / (1000 * 60)).toFixed(1);
var hours = (millisecs / (1000 * 60 * 60)).toFixed(1);
var days = (millisecs / (1000 * 60 * 60 * 24)).toFixed(1);
if (Number(seconds) < 60) {
return seconds + " seconds";
}
else if (Number(minutes) < 60) {
return minutes + " minutes";
}
else if (Number(hours) < 24) {
return hours + " hours";
}
else {
return days + " days";
}
};
//# sourceMappingURL=file.js.map |