Spaces:
Sleeping
Sleeping
export const formattedFileSize = (size: number): string => { | |
if (size < 1024 * 1024) { | |
return `${(size / 1024).toFixed(2)}KB`; | |
} | |
if (size < 1024 * 1024 * 1024) { | |
return `${(size / 1024 / 1024).toFixed(2)}MB`; | |
} | |
return `${(size / 1024 / 1024 / 1024).toFixed(2)}GB`; | |
}; | |
export function isMobileDevice() { | |
return ( | |
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) || | |
window.innerWidth <= 768 | |
); | |
} | |
export function throttle<T extends (...args: any[]) => any>(fn: T, delay: number): T { | |
let lastTime = 0; | |
return function (this: any, ...args: Parameters<T>) { | |
const now = Date.now(); | |
if (now - lastTime >= delay) { | |
fn.apply(this, args); | |
lastTime = now; | |
} | |
} as T; | |
} | |