squeaky-clean 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +465 -0
- package/dist/cleaners/BaseCleaner.d.ts +57 -0
- package/dist/cleaners/BaseCleaner.d.ts.map +1 -0
- package/dist/cleaners/BaseCleaner.js +299 -0
- package/dist/cleaners/BaseCleaner.js.map +1 -0
- package/dist/cleaners/CleanerRegistry.d.ts +65 -0
- package/dist/cleaners/CleanerRegistry.d.ts.map +1 -0
- package/dist/cleaners/CleanerRegistry.js +112 -0
- package/dist/cleaners/CleanerRegistry.js.map +1 -0
- package/dist/cleaners/androidstudio.d.ts +16 -0
- package/dist/cleaners/androidstudio.d.ts.map +1 -0
- package/dist/cleaners/androidstudio.js +375 -0
- package/dist/cleaners/androidstudio.js.map +1 -0
- package/dist/cleaners/brew.d.ts +4 -0
- package/dist/cleaners/brew.d.ts.map +1 -0
- package/dist/cleaners/brew.js +197 -0
- package/dist/cleaners/brew.js.map +1 -0
- package/dist/cleaners/brewEnhanced.d.ts +18 -0
- package/dist/cleaners/brewEnhanced.d.ts.map +1 -0
- package/dist/cleaners/brewEnhanced.js +255 -0
- package/dist/cleaners/brewEnhanced.js.map +1 -0
- package/dist/cleaners/bun.d.ts +14 -0
- package/dist/cleaners/bun.d.ts.map +1 -0
- package/dist/cleaners/bun.js +207 -0
- package/dist/cleaners/bun.js.map +1 -0
- package/dist/cleaners/chrome.d.ts +14 -0
- package/dist/cleaners/chrome.d.ts.map +1 -0
- package/dist/cleaners/chrome.js +250 -0
- package/dist/cleaners/chrome.js.map +1 -0
- package/dist/cleaners/docker.d.ts +35 -0
- package/dist/cleaners/docker.d.ts.map +1 -0
- package/dist/cleaners/docker.js +285 -0
- package/dist/cleaners/docker.js.map +1 -0
- package/dist/cleaners/firefox.d.ts +15 -0
- package/dist/cleaners/firefox.d.ts.map +1 -0
- package/dist/cleaners/firefox.js +281 -0
- package/dist/cleaners/firefox.js.map +1 -0
- package/dist/cleaners/flutter.d.ts +18 -0
- package/dist/cleaners/flutter.d.ts.map +1 -0
- package/dist/cleaners/flutter.js +354 -0
- package/dist/cleaners/flutter.js.map +1 -0
- package/dist/cleaners/goBuild.d.ts +18 -0
- package/dist/cleaners/goBuild.d.ts.map +1 -0
- package/dist/cleaners/goBuild.js +196 -0
- package/dist/cleaners/goBuild.js.map +1 -0
- package/dist/cleaners/gradle.d.ts +14 -0
- package/dist/cleaners/gradle.d.ts.map +1 -0
- package/dist/cleaners/gradle.js +336 -0
- package/dist/cleaners/gradle.js.map +1 -0
- package/dist/cleaners/index.d.ts +51 -0
- package/dist/cleaners/index.d.ts.map +1 -0
- package/dist/cleaners/index.js +247 -0
- package/dist/cleaners/index.js.map +1 -0
- package/dist/cleaners/jetbrains.d.ts +18 -0
- package/dist/cleaners/jetbrains.d.ts.map +1 -0
- package/dist/cleaners/jetbrains.js +441 -0
- package/dist/cleaners/jetbrains.js.map +1 -0
- package/dist/cleaners/nix.d.ts +4 -0
- package/dist/cleaners/nix.d.ts.map +1 -0
- package/dist/cleaners/nix.js +227 -0
- package/dist/cleaners/nix.js.map +1 -0
- package/dist/cleaners/nodeGyp.d.ts +14 -0
- package/dist/cleaners/nodeGyp.d.ts.map +1 -0
- package/dist/cleaners/nodeGyp.js +157 -0
- package/dist/cleaners/nodeGyp.js.map +1 -0
- package/dist/cleaners/npm.d.ts +14 -0
- package/dist/cleaners/npm.d.ts.map +1 -0
- package/dist/cleaners/npm.js +198 -0
- package/dist/cleaners/npm.js.map +1 -0
- package/dist/cleaners/npmEnhanced.d.ts +19 -0
- package/dist/cleaners/npmEnhanced.d.ts.map +1 -0
- package/dist/cleaners/npmEnhanced.js +336 -0
- package/dist/cleaners/npmEnhanced.js.map +1 -0
- package/dist/cleaners/nx.d.ts +18 -0
- package/dist/cleaners/nx.d.ts.map +1 -0
- package/dist/cleaners/nx.js +308 -0
- package/dist/cleaners/nx.js.map +1 -0
- package/dist/cleaners/pip.d.ts +19 -0
- package/dist/cleaners/pip.d.ts.map +1 -0
- package/dist/cleaners/pip.js +334 -0
- package/dist/cleaners/pip.js.map +1 -0
- package/dist/cleaners/pnpm.d.ts +14 -0
- package/dist/cleaners/pnpm.d.ts.map +1 -0
- package/dist/cleaners/pnpm.js +209 -0
- package/dist/cleaners/pnpm.js.map +1 -0
- package/dist/cleaners/turbo.d.ts +18 -0
- package/dist/cleaners/turbo.d.ts.map +1 -0
- package/dist/cleaners/turbo.js +325 -0
- package/dist/cleaners/turbo.js.map +1 -0
- package/dist/cleaners/vite.d.ts +17 -0
- package/dist/cleaners/vite.d.ts.map +1 -0
- package/dist/cleaners/vite.js +274 -0
- package/dist/cleaners/vite.js.map +1 -0
- package/dist/cleaners/vscode.d.ts +14 -0
- package/dist/cleaners/vscode.d.ts.map +1 -0
- package/dist/cleaners/vscode.js +354 -0
- package/dist/cleaners/vscode.js.map +1 -0
- package/dist/cleaners/webpack.d.ts +17 -0
- package/dist/cleaners/webpack.d.ts.map +1 -0
- package/dist/cleaners/webpack.js +263 -0
- package/dist/cleaners/webpack.js.map +1 -0
- package/dist/cleaners/xcode.d.ts +14 -0
- package/dist/cleaners/xcode.d.ts.map +1 -0
- package/dist/cleaners/xcode.js +348 -0
- package/dist/cleaners/xcode.js.map +1 -0
- package/dist/cleaners/yarn.d.ts +16 -0
- package/dist/cleaners/yarn.d.ts.map +1 -0
- package/dist/cleaners/yarn.js +266 -0
- package/dist/cleaners/yarn.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +346 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/auto.d.ts +8 -0
- package/dist/commands/auto.d.ts.map +1 -0
- package/dist/commands/auto.js +224 -0
- package/dist/commands/auto.js.map +1 -0
- package/dist/commands/categories.d.ts +8 -0
- package/dist/commands/categories.d.ts.map +1 -0
- package/dist/commands/categories.js +133 -0
- package/dist/commands/categories.js.map +1 -0
- package/dist/commands/clean.d.ts +3 -0
- package/dist/commands/clean.d.ts.map +1 -0
- package/dist/commands/clean.js +149 -0
- package/dist/commands/clean.js.map +1 -0
- package/dist/commands/config.d.ts +14 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +445 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/configDoctor.d.ts +26 -0
- package/dist/commands/configDoctor.d.ts.map +1 -0
- package/dist/commands/configDoctor.js +60 -0
- package/dist/commands/configDoctor.js.map +1 -0
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +141 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/emojis.d.ts +2 -0
- package/dist/commands/emojis.d.ts.map +1 -0
- package/dist/commands/emojis.js +28 -0
- package/dist/commands/emojis.js.map +1 -0
- package/dist/commands/interactive.d.ts +3 -0
- package/dist/commands/interactive.d.ts.map +1 -0
- package/dist/commands/interactive.js +284 -0
- package/dist/commands/interactive.js.map +1 -0
- package/dist/commands/interactiveEnhanced.d.ts +4 -0
- package/dist/commands/interactiveEnhanced.d.ts.map +1 -0
- package/dist/commands/interactiveEnhanced.js +460 -0
- package/dist/commands/interactiveEnhanced.js.map +1 -0
- package/dist/commands/list.d.ts +2 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +68 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/sizes.d.ts +2 -0
- package/dist/commands/sizes.d.ts.map +1 -0
- package/dist/commands/sizes.js +87 -0
- package/dist/commands/sizes.js.map +1 -0
- package/dist/config/index.d.ts +26 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +228 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/loadConfig.d.ts +7 -0
- package/dist/config/loadConfig.d.ts.map +1 -0
- package/dist/config/loadConfig.js +103 -0
- package/dist/config/loadConfig.js.map +1 -0
- package/dist/config/migrateConfig.d.ts +56 -0
- package/dist/config/migrateConfig.d.ts.map +1 -0
- package/dist/config/migrateConfig.js +102 -0
- package/dist/config/migrateConfig.js.map +1 -0
- package/dist/plugins/discovery.d.ts +6 -0
- package/dist/plugins/discovery.d.ts.map +1 -0
- package/dist/plugins/discovery.js +64 -0
- package/dist/plugins/discovery.js.map +1 -0
- package/dist/profiles/index.d.ts +61 -0
- package/dist/profiles/index.d.ts.map +1 -0
- package/dist/profiles/index.js +361 -0
- package/dist/profiles/index.js.map +1 -0
- package/dist/types/index.d.ts +161 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/cli.d.ts +44 -0
- package/dist/utils/cli.d.ts.map +1 -0
- package/dist/utils/cli.js +407 -0
- package/dist/utils/cli.js.map +1 -0
- package/dist/utils/fs.d.ts +15 -0
- package/dist/utils/fs.d.ts.map +1 -0
- package/dist/utils/fs.js +218 -0
- package/dist/utils/fs.js.map +1 -0
- package/package.json +122 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { CleanerModule, CacheInfo, ClearResult, CacheType } from "../types";
|
|
2
|
+
export declare class CacheManager {
|
|
3
|
+
private cleaners;
|
|
4
|
+
constructor();
|
|
5
|
+
/**
|
|
6
|
+
* Get all available cleaners
|
|
7
|
+
*/
|
|
8
|
+
getAllCleaners(): CleanerModule[];
|
|
9
|
+
/**
|
|
10
|
+
* Get cleaners filtered by type
|
|
11
|
+
*/
|
|
12
|
+
getCleanersByType(type: CacheType): CleanerModule[];
|
|
13
|
+
/**
|
|
14
|
+
* Get enabled cleaners based on configuration
|
|
15
|
+
*/
|
|
16
|
+
getEnabledCleaners(): CleanerModule[];
|
|
17
|
+
/**
|
|
18
|
+
* Get cleaner by name
|
|
19
|
+
*/
|
|
20
|
+
getCleaner(name: string): CleanerModule | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* Get cache info for all enabled cleaners
|
|
23
|
+
*/
|
|
24
|
+
getAllCacheInfo(): Promise<CacheInfo[]>;
|
|
25
|
+
/**
|
|
26
|
+
* Clean caches for enabled cleaners
|
|
27
|
+
*/
|
|
28
|
+
cleanAllCaches(options?: {
|
|
29
|
+
dryRun?: boolean;
|
|
30
|
+
types?: CacheType[];
|
|
31
|
+
exclude?: string[];
|
|
32
|
+
include?: string[];
|
|
33
|
+
subCachesToClear?: Map<string, string[]>;
|
|
34
|
+
}): Promise<ClearResult[]>;
|
|
35
|
+
/**
|
|
36
|
+
* Get total cache sizes by type
|
|
37
|
+
*/
|
|
38
|
+
getCacheSizesByType(): Promise<Record<CacheType, number>>;
|
|
39
|
+
/**
|
|
40
|
+
* Get summary statistics
|
|
41
|
+
*/
|
|
42
|
+
getSummary(): Promise<{
|
|
43
|
+
totalSize: number;
|
|
44
|
+
totalCleaners: number;
|
|
45
|
+
installedCleaners: number;
|
|
46
|
+
enabledCleaners: number;
|
|
47
|
+
sizesByType: Record<CacheType, number>;
|
|
48
|
+
}>;
|
|
49
|
+
}
|
|
50
|
+
export declare const cacheManager: CacheManager;
|
|
51
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cleaners/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAsC5E,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAA6B;;IAuC7C;;OAEG;IACH,cAAc,IAAI,aAAa,EAAE;IAIjC;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,EAAE;IAInD;;OAEG;IACH,kBAAkB,IAAI,aAAa,EAAE;IAMrC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAInD;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IA8C7C;;OAEG;IACG,cAAc,CAClB,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACrC,GACL,OAAO,CAAC,WAAW,EAAE,CAAC;IAkGzB;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAkB/D;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;KACxC,CAAC;CAkCH;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.cacheManager = exports.CacheManager = void 0;
|
|
7
|
+
const config_1 = require("../config");
|
|
8
|
+
const cli_1 = require("../utils/cli");
|
|
9
|
+
const minimatch_1 = require("minimatch");
|
|
10
|
+
// Import all cleaner modules
|
|
11
|
+
// Package managers
|
|
12
|
+
const npm_1 = __importDefault(require("./npm"));
|
|
13
|
+
const yarn_1 = __importDefault(require("./yarn"));
|
|
14
|
+
const pnpm_1 = __importDefault(require("./pnpm"));
|
|
15
|
+
const bun_1 = __importDefault(require("./bun"));
|
|
16
|
+
const pip_1 = __importDefault(require("./pip"));
|
|
17
|
+
const brew_1 = __importDefault(require("./brew"));
|
|
18
|
+
const nix_1 = __importDefault(require("./nix"));
|
|
19
|
+
// Build tools
|
|
20
|
+
const webpack_1 = __importDefault(require("./webpack"));
|
|
21
|
+
const vite_1 = __importDefault(require("./vite"));
|
|
22
|
+
const nx_1 = __importDefault(require("./nx"));
|
|
23
|
+
const turbo_1 = __importDefault(require("./turbo"));
|
|
24
|
+
const flutter_1 = __importDefault(require("./flutter"));
|
|
25
|
+
const nodeGyp_1 = __importDefault(require("./nodeGyp"));
|
|
26
|
+
const goBuild_1 = __importDefault(require("./goBuild"));
|
|
27
|
+
// IDEs
|
|
28
|
+
const xcode_1 = __importDefault(require("./xcode"));
|
|
29
|
+
const vscode_1 = __importDefault(require("./vscode"));
|
|
30
|
+
const androidstudio_1 = __importDefault(require("./androidstudio"));
|
|
31
|
+
const jetbrains_1 = __importDefault(require("./jetbrains"));
|
|
32
|
+
// Browsers
|
|
33
|
+
const chrome_1 = __importDefault(require("./chrome"));
|
|
34
|
+
const firefox_1 = __importDefault(require("./firefox"));
|
|
35
|
+
// System tools
|
|
36
|
+
const docker_1 = __importDefault(require("./docker"));
|
|
37
|
+
const gradle_1 = __importDefault(require("./gradle"));
|
|
38
|
+
class CacheManager {
|
|
39
|
+
constructor() {
|
|
40
|
+
this.cleaners = new Map();
|
|
41
|
+
// Register all cleaner modules
|
|
42
|
+
// Package managers
|
|
43
|
+
this.cleaners.set("npm", npm_1.default);
|
|
44
|
+
this.cleaners.set("yarn", yarn_1.default);
|
|
45
|
+
this.cleaners.set("pnpm", pnpm_1.default);
|
|
46
|
+
this.cleaners.set("bun", bun_1.default);
|
|
47
|
+
this.cleaners.set("pip", pip_1.default);
|
|
48
|
+
this.cleaners.set("brew", brew_1.default);
|
|
49
|
+
this.cleaners.set("nix", nix_1.default);
|
|
50
|
+
// Build tools
|
|
51
|
+
this.cleaners.set("webpack", webpack_1.default);
|
|
52
|
+
this.cleaners.set("vite", vite_1.default);
|
|
53
|
+
this.cleaners.set("nx", nx_1.default);
|
|
54
|
+
this.cleaners.set("turbo", turbo_1.default);
|
|
55
|
+
this.cleaners.set("flutter", flutter_1.default);
|
|
56
|
+
this.cleaners.set("node-gyp", nodeGyp_1.default);
|
|
57
|
+
this.cleaners.set("go-build", goBuild_1.default);
|
|
58
|
+
// IDEs and development tools
|
|
59
|
+
this.cleaners.set("xcode", xcode_1.default);
|
|
60
|
+
this.cleaners.set("vscode", vscode_1.default);
|
|
61
|
+
this.cleaners.set("androidstudio", androidstudio_1.default);
|
|
62
|
+
this.cleaners.set("jetbrains", jetbrains_1.default);
|
|
63
|
+
// Browsers
|
|
64
|
+
this.cleaners.set("chrome", chrome_1.default);
|
|
65
|
+
this.cleaners.set("firefox", firefox_1.default);
|
|
66
|
+
// System tools
|
|
67
|
+
this.cleaners.set("docker", docker_1.default);
|
|
68
|
+
this.cleaners.set("gradle", gradle_1.default);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get all available cleaners
|
|
72
|
+
*/
|
|
73
|
+
getAllCleaners() {
|
|
74
|
+
return Array.from(this.cleaners.values());
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get cleaners filtered by type
|
|
78
|
+
*/
|
|
79
|
+
getCleanersByType(type) {
|
|
80
|
+
return this.getAllCleaners().filter((cleaner) => cleaner.type === type);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get enabled cleaners based on configuration
|
|
84
|
+
*/
|
|
85
|
+
getEnabledCleaners() {
|
|
86
|
+
return this.getAllCleaners().filter((cleaner) => config_1.config.isToolEnabled(cleaner.name));
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Get cleaner by name
|
|
90
|
+
*/
|
|
91
|
+
getCleaner(name) {
|
|
92
|
+
return this.cleaners.get(name);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get cache info for all enabled cleaners
|
|
96
|
+
*/
|
|
97
|
+
async getAllCacheInfo() {
|
|
98
|
+
const enabledCleaners = this.getEnabledCleaners();
|
|
99
|
+
const results = [];
|
|
100
|
+
const protectedPaths = config_1.config.getProtectedPaths(); // Get protected paths
|
|
101
|
+
(0, cli_1.printVerbose)(`${cli_1.symbols.soap} Scanning ${enabledCleaners.length} enabled cache types...`);
|
|
102
|
+
for (const cleaner of enabledCleaners) {
|
|
103
|
+
try {
|
|
104
|
+
(0, cli_1.printVerbose)(`Checking ${cleaner.name} caches...`);
|
|
105
|
+
const info = await cleaner.getCacheInfo();
|
|
106
|
+
// Check if any of the cache's paths are protected
|
|
107
|
+
const isProtected = info.paths.some((cachePath) => protectedPaths.some((protectedPattern) => (0, minimatch_1.minimatch)(cachePath, protectedPattern, { dot: true })));
|
|
108
|
+
if (isProtected) {
|
|
109
|
+
(0, cli_1.printVerbose)(`Skipping protected cache: ${cleaner.name}`);
|
|
110
|
+
// Optionally, you could add a flag to CacheInfo to indicate it's protected
|
|
111
|
+
// info.isProtected = true;
|
|
112
|
+
// results.push(info); // Still add it, but mark it
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
results.push(info);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
(0, cli_1.printVerbose)(`Error getting cache info for ${cleaner.name}: ${error}`);
|
|
120
|
+
// Add empty result for failed cleaners
|
|
121
|
+
results.push({
|
|
122
|
+
name: cleaner.name,
|
|
123
|
+
type: cleaner.type,
|
|
124
|
+
description: cleaner.description,
|
|
125
|
+
paths: [],
|
|
126
|
+
isInstalled: false,
|
|
127
|
+
size: 0,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return results;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Clean caches for enabled cleaners
|
|
135
|
+
*/
|
|
136
|
+
async cleanAllCaches(options = {}) {
|
|
137
|
+
let cleaners = this.getEnabledCleaners();
|
|
138
|
+
const allCacheInfos = await this.getAllCacheInfo(); // Get all cache info once
|
|
139
|
+
const protectedPaths = config_1.config.getProtectedPaths(); // Get protected paths
|
|
140
|
+
// Filter by types if specified
|
|
141
|
+
if (options.types && options.types.length > 0) {
|
|
142
|
+
cleaners = cleaners.filter((cleaner) => options.types.includes(cleaner.type));
|
|
143
|
+
}
|
|
144
|
+
// Include specific tools if specified (this takes precedence over exclude)
|
|
145
|
+
if (options.include && options.include.length > 0) {
|
|
146
|
+
cleaners = cleaners.filter((cleaner) => options.include.includes(cleaner.name));
|
|
147
|
+
}
|
|
148
|
+
// Exclude specific tools if specified
|
|
149
|
+
if (options.exclude && options.exclude.length > 0) {
|
|
150
|
+
cleaners = cleaners.filter((cleaner) => !options.exclude.includes(cleaner.name));
|
|
151
|
+
}
|
|
152
|
+
const results = [];
|
|
153
|
+
(0, cli_1.printVerbose)(`${cli_1.symbols.soap} Cleaning ${cleaners.length} cache types...`);
|
|
154
|
+
for (const cleaner of cleaners) {
|
|
155
|
+
try {
|
|
156
|
+
(0, cli_1.printVerbose)(`${cli_1.symbols.soap} Processing ${cleaner.name}...`);
|
|
157
|
+
const cacheInfoForCleaner = allCacheInfos.find((info) => info.name === cleaner.name); // Find corresponding info
|
|
158
|
+
let result;
|
|
159
|
+
if (options.subCachesToClear &&
|
|
160
|
+
options.subCachesToClear.has(cleaner.name)) {
|
|
161
|
+
const categoryIds = options.subCachesToClear.get(cleaner.name);
|
|
162
|
+
if (cleaner.clearByCategory) {
|
|
163
|
+
result = await cleaner.clearByCategory(categoryIds, options.dryRun, cacheInfoForCleaner, protectedPaths);
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
// Fallback if clearByCategory is not implemented for this cleaner
|
|
167
|
+
(0, cli_1.printVerbose)(`Warning: ${cleaner.name} does not support granular clearing by category. Clearing all.`);
|
|
168
|
+
result = await cleaner.clear(options.dryRun, undefined, cacheInfoForCleaner, protectedPaths);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
result = await cleaner.clear(options.dryRun, undefined, cacheInfoForCleaner, protectedPaths);
|
|
173
|
+
}
|
|
174
|
+
results.push(result);
|
|
175
|
+
if (result.success && !options.dryRun) {
|
|
176
|
+
const savedMB = ((result.sizeBefore || 0) - (result.sizeAfter || 0)) /
|
|
177
|
+
(1024 * 1024);
|
|
178
|
+
if (savedMB > 0) {
|
|
179
|
+
(0, cli_1.printVerbose)(`${cli_1.symbols.bubbles} ${cleaner.name}: Freed ${savedMB.toFixed(1)} MB`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
(0, cli_1.printVerbose)(`Error cleaning ${cleaner.name}: ${error}`);
|
|
185
|
+
results.push({
|
|
186
|
+
name: cleaner.name,
|
|
187
|
+
success: false,
|
|
188
|
+
error: error instanceof Error ? error.message : String(error),
|
|
189
|
+
clearedPaths: [],
|
|
190
|
+
sizeBefore: 0,
|
|
191
|
+
sizeAfter: 0,
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return results;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get total cache sizes by type
|
|
199
|
+
*/
|
|
200
|
+
async getCacheSizesByType() {
|
|
201
|
+
const allCacheInfo = await this.getAllCacheInfo();
|
|
202
|
+
const sizesByType = {
|
|
203
|
+
"package-manager": 0,
|
|
204
|
+
"build-tool": 0,
|
|
205
|
+
browser: 0,
|
|
206
|
+
ide: 0,
|
|
207
|
+
system: 0,
|
|
208
|
+
other: 0,
|
|
209
|
+
};
|
|
210
|
+
for (const info of allCacheInfo) {
|
|
211
|
+
sizesByType[info.type] += info.size || 0;
|
|
212
|
+
}
|
|
213
|
+
return sizesByType;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Get summary statistics
|
|
217
|
+
*/
|
|
218
|
+
async getSummary() {
|
|
219
|
+
const allCacheInfo = await this.getAllCacheInfo();
|
|
220
|
+
// Calculate sizes by type from the same data to avoid double scanning
|
|
221
|
+
const sizesByType = {
|
|
222
|
+
"package-manager": 0,
|
|
223
|
+
"build-tool": 0,
|
|
224
|
+
browser: 0,
|
|
225
|
+
ide: 0,
|
|
226
|
+
system: 0,
|
|
227
|
+
other: 0,
|
|
228
|
+
};
|
|
229
|
+
for (const info of allCacheInfo) {
|
|
230
|
+
sizesByType[info.type] += info.size || 0;
|
|
231
|
+
}
|
|
232
|
+
const totalSize = allCacheInfo.reduce((sum, info) => sum + (info.size || 0), 0);
|
|
233
|
+
const installedCleaners = allCacheInfo.filter((info) => info.isInstalled).length;
|
|
234
|
+
const enabledCleaners = this.getEnabledCleaners().length;
|
|
235
|
+
return {
|
|
236
|
+
totalSize,
|
|
237
|
+
totalCleaners: this.getAllCleaners().length,
|
|
238
|
+
installedCleaners,
|
|
239
|
+
enabledCleaners,
|
|
240
|
+
sizesByType,
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
exports.CacheManager = CacheManager;
|
|
245
|
+
// Export singleton instance
|
|
246
|
+
exports.cacheManager = new CacheManager();
|
|
247
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cleaners/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BaseCleaner } from "./BaseCleaner";
|
|
2
|
+
import { CacheInfo, ClearResult, CacheType, CacheSelectionCriteria } from "../types";
|
|
3
|
+
export declare class JetBrainsCleaner extends BaseCleaner {
|
|
4
|
+
name: string;
|
|
5
|
+
type: CacheType;
|
|
6
|
+
description: string;
|
|
7
|
+
private jetbrainsProducts;
|
|
8
|
+
private findJetBrainsInstallations;
|
|
9
|
+
private getJetBrainsCachePaths;
|
|
10
|
+
private findIdeaFolders;
|
|
11
|
+
private findIdeaFoldersRecursively;
|
|
12
|
+
isAvailable(): Promise<boolean>;
|
|
13
|
+
getCacheInfo(): Promise<CacheInfo>;
|
|
14
|
+
clear(dryRun?: boolean, _criteria?: CacheSelectionCriteria, cacheInfo?: CacheInfo, protectedPaths?: string[]): Promise<ClearResult>;
|
|
15
|
+
}
|
|
16
|
+
declare const _default: JetBrainsCleaner;
|
|
17
|
+
export default _default;
|
|
18
|
+
//# sourceMappingURL=jetbrains.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jetbrains.d.ts","sourceRoot":"","sources":["../../src/cleaners/jetbrains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAQlB,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,IAAI,SAAe;IACnB,IAAI,EAAE,SAAS,CAAS;IACxB,WAAW,SAC0E;IAErF,OAAO,CAAC,iBAAiB,CAkBvB;YAIY,0BAA0B;YAmG1B,sBAAsB;YA+FtB,eAAe;YA8Bf,0BAA0B;IAsClC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAiD/B,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAyClC,KAAK,CACT,MAAM,UAAQ,EACd,SAAS,CAAC,EAAE,sBAAsB,EAClC,SAAS,CAAC,EAAE,SAAS,EACrB,cAAc,GAAE,MAAM,EAAO,GAC5B,OAAO,CAAC,WAAW,CAAC;CAwExB;;AAED,wBAAsC"}
|