use std::path::PathBuf;
use dirs;
pub fn browser_cache_paths() -> Vec<(PathBuf, &'static str)> {
let home = dirs::home_dir().unwrap_or_default();
let mut paths = vec![];
paths.push((
home.join("Library/Caches/Google/Chrome"),
"Chrome cache",
));
paths.push((
home.join("Library/Application Support/Google/Chrome/Default/Service Worker/CacheStorage"),
"Chrome Service Workers",
));
paths.push((
home.join("Library/Application Support/Google/Chrome/Default/Code Cache"),
"Chrome Code Cache",
));
paths.push((
home.join(".cache/google-chrome"),
"Chrome cache (Linux)",
));
paths.push((
home.join("Library/Caches/com.apple.Safari"),
"Safari cache",
));
paths.push((
home.join("Library/Safari/LocalStorage"),
"Safari LocalStorage",
));
paths.push((
home.join("Library/Caches/Firefox"),
"Firefox cache",
));
paths.push((
home.join(".cache/mozilla/firefox"),
"Firefox cache (Linux)",
));
paths.push((
home.join("Library/Caches/BraveSoftware/Brave-Browser"),
"Brave cache",
));
paths.push((
home.join("Library/Application Support/BraveSoftware/Brave-Browser/Default/Service Worker/CacheStorage"),
"Brave Service Workers",
));
paths.push((
home.join("Library/Caches/company.thebrowser.Browser"),
"Arc cache",
));
paths.push((
home.join("Library/Caches/Microsoft Edge"),
"Edge cache",
));
paths.push((
home.join("Library/Application Support/Microsoft Edge/Default/Service Worker/CacheStorage"),
"Edge Service Workers",
));
paths.push((
home.join("Library/Caches/Vivaldi"),
"Vivaldi cache",
));
paths.into_iter().filter(|(p, _)| p.exists()).collect()
}