squeaky-clean 0.1.10 → 0.1.12

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.
Files changed (249) hide show
  1. package/dist/cleaners/BaseCleaner.d.ts +57 -0
  2. package/dist/cleaners/BaseCleaner.d.ts.map +1 -0
  3. package/dist/cleaners/BaseCleaner.js +299 -0
  4. package/dist/cleaners/BaseCleaner.js.map +1 -0
  5. package/dist/cleaners/CleanerRegistry.d.ts +65 -0
  6. package/dist/cleaners/CleanerRegistry.d.ts.map +1 -0
  7. package/dist/cleaners/CleanerRegistry.js +112 -0
  8. package/dist/cleaners/CleanerRegistry.js.map +1 -0
  9. package/dist/cleaners/androidstudio.d.ts +16 -0
  10. package/dist/cleaners/androidstudio.d.ts.map +1 -0
  11. package/dist/cleaners/androidstudio.js +375 -0
  12. package/dist/cleaners/androidstudio.js.map +1 -0
  13. package/dist/cleaners/brew.d.ts +4 -0
  14. package/dist/cleaners/brew.d.ts.map +1 -0
  15. package/dist/cleaners/brew.js +197 -0
  16. package/dist/cleaners/brew.js.map +1 -0
  17. package/dist/cleaners/brewEnhanced.d.ts +18 -0
  18. package/dist/cleaners/brewEnhanced.d.ts.map +1 -0
  19. package/dist/cleaners/brewEnhanced.js +255 -0
  20. package/dist/cleaners/brewEnhanced.js.map +1 -0
  21. package/dist/cleaners/bun.d.ts +14 -0
  22. package/dist/cleaners/bun.d.ts.map +1 -0
  23. package/dist/cleaners/bun.js +207 -0
  24. package/dist/cleaners/bun.js.map +1 -0
  25. package/dist/cleaners/cargo.d.ts +15 -0
  26. package/dist/cleaners/cargo.d.ts.map +1 -0
  27. package/dist/cleaners/cargo.js +193 -0
  28. package/dist/cleaners/cargo.js.map +1 -0
  29. package/dist/cleaners/chrome.d.ts +14 -0
  30. package/dist/cleaners/chrome.d.ts.map +1 -0
  31. package/dist/cleaners/chrome.js +250 -0
  32. package/dist/cleaners/chrome.js.map +1 -0
  33. package/dist/cleaners/cocoapods.d.ts +16 -0
  34. package/dist/cleaners/cocoapods.d.ts.map +1 -0
  35. package/dist/cleaners/cocoapods.js +180 -0
  36. package/dist/cleaners/cocoapods.js.map +1 -0
  37. package/dist/cleaners/cursor.d.ts +15 -0
  38. package/dist/cleaners/cursor.d.ts.map +1 -0
  39. package/dist/cleaners/cursor.js +377 -0
  40. package/dist/cleaners/cursor.js.map +1 -0
  41. package/dist/cleaners/docker.d.ts +35 -0
  42. package/dist/cleaners/docker.d.ts.map +1 -0
  43. package/dist/cleaners/docker.js +288 -0
  44. package/dist/cleaners/docker.js.map +1 -0
  45. package/dist/cleaners/firefox.d.ts +15 -0
  46. package/dist/cleaners/firefox.d.ts.map +1 -0
  47. package/dist/cleaners/firefox.js +281 -0
  48. package/dist/cleaners/firefox.js.map +1 -0
  49. package/dist/cleaners/flutter.d.ts +18 -0
  50. package/dist/cleaners/flutter.d.ts.map +1 -0
  51. package/dist/cleaners/flutter.js +354 -0
  52. package/dist/cleaners/flutter.js.map +1 -0
  53. package/dist/cleaners/goBuild.d.ts +18 -0
  54. package/dist/cleaners/goBuild.d.ts.map +1 -0
  55. package/dist/cleaners/goBuild.js +196 -0
  56. package/dist/cleaners/goBuild.js.map +1 -0
  57. package/dist/cleaners/gradle.d.ts +14 -0
  58. package/dist/cleaners/gradle.d.ts.map +1 -0
  59. package/dist/cleaners/gradle.js +336 -0
  60. package/dist/cleaners/gradle.js.map +1 -0
  61. package/dist/cleaners/index.d.ts +51 -0
  62. package/dist/cleaners/index.d.ts.map +1 -0
  63. package/dist/cleaners/index.js +267 -0
  64. package/dist/cleaners/index.js.map +1 -0
  65. package/dist/cleaners/jetbrains.d.ts +18 -0
  66. package/dist/cleaners/jetbrains.d.ts.map +1 -0
  67. package/dist/cleaners/jetbrains.js +441 -0
  68. package/dist/cleaners/jetbrains.js.map +1 -0
  69. package/dist/cleaners/maven.d.ts +15 -0
  70. package/dist/cleaners/maven.d.ts.map +1 -0
  71. package/dist/cleaners/maven.js +182 -0
  72. package/dist/cleaners/maven.js.map +1 -0
  73. package/dist/cleaners/nix.d.ts +4 -0
  74. package/dist/cleaners/nix.d.ts.map +1 -0
  75. package/dist/cleaners/nix.js +227 -0
  76. package/dist/cleaners/nix.js.map +1 -0
  77. package/dist/cleaners/nodeGyp.d.ts +14 -0
  78. package/dist/cleaners/nodeGyp.d.ts.map +1 -0
  79. package/dist/cleaners/nodeGyp.js +157 -0
  80. package/dist/cleaners/nodeGyp.js.map +1 -0
  81. package/dist/cleaners/npm.d.ts +14 -0
  82. package/dist/cleaners/npm.d.ts.map +1 -0
  83. package/dist/cleaners/npm.js +203 -0
  84. package/dist/cleaners/npm.js.map +1 -0
  85. package/dist/cleaners/npmEnhanced.d.ts +19 -0
  86. package/dist/cleaners/npmEnhanced.d.ts.map +1 -0
  87. package/dist/cleaners/npmEnhanced.js +336 -0
  88. package/dist/cleaners/npmEnhanced.js.map +1 -0
  89. package/dist/cleaners/nuget.d.ts +16 -0
  90. package/dist/cleaners/nuget.d.ts.map +1 -0
  91. package/dist/cleaners/nuget.js +197 -0
  92. package/dist/cleaners/nuget.js.map +1 -0
  93. package/dist/cleaners/nx.d.ts +18 -0
  94. package/dist/cleaners/nx.d.ts.map +1 -0
  95. package/dist/cleaners/nx.js +308 -0
  96. package/dist/cleaners/nx.js.map +1 -0
  97. package/dist/cleaners/pip.d.ts +19 -0
  98. package/dist/cleaners/pip.d.ts.map +1 -0
  99. package/dist/cleaners/pip.js +334 -0
  100. package/dist/cleaners/pip.js.map +1 -0
  101. package/dist/cleaners/pipenv.d.ts +16 -0
  102. package/dist/cleaners/pipenv.d.ts.map +1 -0
  103. package/dist/cleaners/pipenv.js +184 -0
  104. package/dist/cleaners/pipenv.js.map +1 -0
  105. package/dist/cleaners/playwright.d.ts +15 -0
  106. package/dist/cleaners/playwright.d.ts.map +1 -0
  107. package/dist/cleaners/playwright.js +221 -0
  108. package/dist/cleaners/playwright.js.map +1 -0
  109. package/dist/cleaners/pnpm.d.ts +14 -0
  110. package/dist/cleaners/pnpm.d.ts.map +1 -0
  111. package/dist/cleaners/pnpm.js +214 -0
  112. package/dist/cleaners/pnpm.js.map +1 -0
  113. package/dist/cleaners/poetry.d.ts +16 -0
  114. package/dist/cleaners/poetry.d.ts.map +1 -0
  115. package/dist/cleaners/poetry.js +184 -0
  116. package/dist/cleaners/poetry.js.map +1 -0
  117. package/dist/cleaners/swiftpm.d.ts +16 -0
  118. package/dist/cleaners/swiftpm.d.ts.map +1 -0
  119. package/dist/cleaners/swiftpm.js +179 -0
  120. package/dist/cleaners/swiftpm.js.map +1 -0
  121. package/dist/cleaners/turbo.d.ts +18 -0
  122. package/dist/cleaners/turbo.d.ts.map +1 -0
  123. package/dist/cleaners/turbo.js +325 -0
  124. package/dist/cleaners/turbo.js.map +1 -0
  125. package/dist/cleaners/universalBinary.d.ts +20 -0
  126. package/dist/cleaners/universalBinary.d.ts.map +1 -0
  127. package/dist/cleaners/universalBinary.js +318 -0
  128. package/dist/cleaners/universalBinary.js.map +1 -0
  129. package/dist/cleaners/vite.d.ts +17 -0
  130. package/dist/cleaners/vite.d.ts.map +1 -0
  131. package/dist/cleaners/vite.js +274 -0
  132. package/dist/cleaners/vite.js.map +1 -0
  133. package/dist/cleaners/vscode.d.ts +15 -0
  134. package/dist/cleaners/vscode.d.ts.map +1 -0
  135. package/dist/cleaners/vscode.js +411 -0
  136. package/dist/cleaners/vscode.js.map +1 -0
  137. package/dist/cleaners/webpack.d.ts +17 -0
  138. package/dist/cleaners/webpack.d.ts.map +1 -0
  139. package/dist/cleaners/webpack.js +263 -0
  140. package/dist/cleaners/webpack.js.map +1 -0
  141. package/dist/cleaners/windsurf.d.ts +15 -0
  142. package/dist/cleaners/windsurf.d.ts.map +1 -0
  143. package/dist/cleaners/windsurf.js +366 -0
  144. package/dist/cleaners/windsurf.js.map +1 -0
  145. package/dist/cleaners/xcode.d.ts +14 -0
  146. package/dist/cleaners/xcode.d.ts.map +1 -0
  147. package/dist/cleaners/xcode.js +348 -0
  148. package/dist/cleaners/xcode.js.map +1 -0
  149. package/dist/cleaners/yarn.d.ts +16 -0
  150. package/dist/cleaners/yarn.d.ts.map +1 -0
  151. package/dist/cleaners/yarn.js +271 -0
  152. package/dist/cleaners/yarn.js.map +1 -0
  153. package/dist/cleaners/zed.d.ts +15 -0
  154. package/dist/cleaners/zed.d.ts.map +1 -0
  155. package/dist/cleaners/zed.js +383 -0
  156. package/dist/cleaners/zed.js.map +1 -0
  157. package/dist/cli.d.ts +3 -0
  158. package/dist/cli.d.ts.map +1 -0
  159. package/dist/cli.js +367 -0
  160. package/dist/cli.js.map +1 -0
  161. package/dist/commands/auto.d.ts +8 -0
  162. package/dist/commands/auto.d.ts.map +1 -0
  163. package/dist/commands/auto.js +251 -0
  164. package/dist/commands/auto.js.map +1 -0
  165. package/dist/commands/categories.d.ts +8 -0
  166. package/dist/commands/categories.d.ts.map +1 -0
  167. package/dist/commands/categories.js +133 -0
  168. package/dist/commands/categories.js.map +1 -0
  169. package/dist/commands/clean.d.ts +3 -0
  170. package/dist/commands/clean.d.ts.map +1 -0
  171. package/dist/commands/clean.js +149 -0
  172. package/dist/commands/clean.js.map +1 -0
  173. package/dist/commands/config.d.ts +14 -0
  174. package/dist/commands/config.d.ts.map +1 -0
  175. package/dist/commands/config.js +460 -0
  176. package/dist/commands/config.js.map +1 -0
  177. package/dist/commands/configDoctor.d.ts +26 -0
  178. package/dist/commands/configDoctor.d.ts.map +1 -0
  179. package/dist/commands/configDoctor.js +60 -0
  180. package/dist/commands/configDoctor.js.map +1 -0
  181. package/dist/commands/doctor.d.ts +2 -0
  182. package/dist/commands/doctor.d.ts.map +1 -0
  183. package/dist/commands/doctor.js +141 -0
  184. package/dist/commands/doctor.js.map +1 -0
  185. package/dist/commands/emojis.d.ts +2 -0
  186. package/dist/commands/emojis.d.ts.map +1 -0
  187. package/dist/commands/emojis.js +28 -0
  188. package/dist/commands/emojis.js.map +1 -0
  189. package/dist/commands/interactive.d.ts +3 -0
  190. package/dist/commands/interactive.d.ts.map +1 -0
  191. package/dist/commands/interactive.js +284 -0
  192. package/dist/commands/interactive.js.map +1 -0
  193. package/dist/commands/interactiveEnhanced.d.ts +4 -0
  194. package/dist/commands/interactiveEnhanced.d.ts.map +1 -0
  195. package/dist/commands/interactiveEnhanced.js +460 -0
  196. package/dist/commands/interactiveEnhanced.js.map +1 -0
  197. package/dist/commands/list.d.ts +2 -0
  198. package/dist/commands/list.d.ts.map +1 -0
  199. package/dist/commands/list.js +68 -0
  200. package/dist/commands/list.js.map +1 -0
  201. package/dist/commands/sizes.d.ts +2 -0
  202. package/dist/commands/sizes.d.ts.map +1 -0
  203. package/dist/commands/sizes.js +87 -0
  204. package/dist/commands/sizes.js.map +1 -0
  205. package/dist/commands/ub.d.ts +10 -0
  206. package/dist/commands/ub.d.ts.map +1 -0
  207. package/dist/commands/ub.js +170 -0
  208. package/dist/commands/ub.js.map +1 -0
  209. package/dist/config/configSchema.d.ts +93 -0
  210. package/dist/config/configSchema.d.ts.map +1 -0
  211. package/dist/config/configSchema.js +75 -0
  212. package/dist/config/configSchema.js.map +1 -0
  213. package/dist/config/index.d.ts +35 -0
  214. package/dist/config/index.d.ts.map +1 -0
  215. package/dist/config/index.js +255 -0
  216. package/dist/config/index.js.map +1 -0
  217. package/dist/config/loadConfig.d.ts +7 -0
  218. package/dist/config/loadConfig.d.ts.map +1 -0
  219. package/dist/config/loadConfig.js +95 -0
  220. package/dist/config/loadConfig.js.map +1 -0
  221. package/dist/config/migrateConfig.d.ts +56 -0
  222. package/dist/config/migrateConfig.d.ts.map +1 -0
  223. package/dist/config/migrateConfig.js +102 -0
  224. package/dist/config/migrateConfig.js.map +1 -0
  225. package/dist/plugins/discovery.d.ts +6 -0
  226. package/dist/plugins/discovery.d.ts.map +1 -0
  227. package/dist/plugins/discovery.js +64 -0
  228. package/dist/plugins/discovery.js.map +1 -0
  229. package/dist/profiles/index.d.ts +61 -0
  230. package/dist/profiles/index.d.ts.map +1 -0
  231. package/dist/profiles/index.js +406 -0
  232. package/dist/profiles/index.js.map +1 -0
  233. package/dist/types/index.d.ts +176 -0
  234. package/dist/types/index.d.ts.map +1 -0
  235. package/dist/types/index.js +3 -0
  236. package/dist/types/index.js.map +1 -0
  237. package/dist/utils/cache.d.ts +58 -0
  238. package/dist/utils/cache.d.ts.map +1 -0
  239. package/dist/utils/cache.js +101 -0
  240. package/dist/utils/cache.js.map +1 -0
  241. package/dist/utils/cli.d.ts +45 -0
  242. package/dist/utils/cli.d.ts.map +1 -0
  243. package/dist/utils/cli.js +412 -0
  244. package/dist/utils/cli.js.map +1 -0
  245. package/dist/utils/fs.d.ts +32 -0
  246. package/dist/utils/fs.d.ts.map +1 -0
  247. package/dist/utils/fs.js +250 -0
  248. package/dist/utils/fs.js.map +1 -0
  249. package/package.json +4 -4
@@ -0,0 +1,411 @@
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.VSCodeCleaner = void 0;
7
+ const fs_1 = require("fs");
8
+ const path_1 = __importDefault(require("path"));
9
+ const os_1 = __importDefault(require("os"));
10
+ const fs_2 = require("../utils/fs");
11
+ const cli_1 = require("../utils/cli");
12
+ // VSCode variant patterns for dynamic discovery
13
+ const VSCODE_CACHE_PATTERNS = [
14
+ "com.microsoft.VSCode",
15
+ "com.microsoft.VSCode.ShipIt",
16
+ "com.microsoft.VSCodeInsiders",
17
+ "com.microsoft.VSCodeInsiders.ShipIt",
18
+ "com.microsoft.VSCodeExploration",
19
+ "com.microsoft.VSCode-OSS",
20
+ "com.vscodium.VSCodium",
21
+ ];
22
+ class VSCodeCleaner {
23
+ constructor() {
24
+ this.name = "vscode";
25
+ this.type = "ide";
26
+ this.description = "VS Code extensions cache, workspace storage, logs, and temporary files";
27
+ }
28
+ getCachePaths() {
29
+ const homeDir = os_1.default.homedir();
30
+ const platform = process.platform;
31
+ let vscodeConfigDir;
32
+ let vscodeExtensionsDir;
33
+ if (platform === "darwin") {
34
+ vscodeConfigDir = path_1.default.join(homeDir, "Library", "Application Support", "Code");
35
+ vscodeExtensionsDir = path_1.default.join(homeDir, ".vscode", "extensions");
36
+ }
37
+ else if (platform === "win32") {
38
+ vscodeConfigDir = path_1.default.join(homeDir, "AppData", "Roaming", "Code");
39
+ vscodeExtensionsDir = path_1.default.join(homeDir, ".vscode", "extensions");
40
+ }
41
+ else {
42
+ vscodeConfigDir = path_1.default.join(homeDir, ".config", "Code");
43
+ vscodeExtensionsDir = path_1.default.join(homeDir, ".vscode", "extensions");
44
+ }
45
+ // Generate macOS VSCode cache paths for all known variants
46
+ const macOSVSCodeCaches = platform === "darwin"
47
+ ? VSCODE_CACHE_PATTERNS.map((pattern) => ({
48
+ path: path_1.default.join(homeDir, "Library", "Caches", pattern),
49
+ description: `macOS ${pattern} application cache`,
50
+ category: "App Cache",
51
+ }))
52
+ : [];
53
+ return [
54
+ // Extension host cache and logs
55
+ {
56
+ path: path_1.default.join(vscodeConfigDir, "logs"),
57
+ description: "VS Code application logs",
58
+ category: "Logs",
59
+ },
60
+ {
61
+ path: path_1.default.join(vscodeConfigDir, "CachedExtensions"),
62
+ description: "Cached extension metadata",
63
+ category: "Extensions",
64
+ },
65
+ {
66
+ path: path_1.default.join(vscodeConfigDir, "CachedExtensionVSIXs"),
67
+ description: "Cached extension VSIX files",
68
+ category: "Extensions",
69
+ },
70
+ // Workspace storage and state
71
+ {
72
+ path: path_1.default.join(vscodeConfigDir, "User", "workspaceStorage"),
73
+ description: "Workspace-specific cache and state",
74
+ category: "Workspaces",
75
+ },
76
+ {
77
+ path: path_1.default.join(vscodeConfigDir, "User", "History"),
78
+ description: "File history and timeline cache",
79
+ category: "History",
80
+ },
81
+ // Language server and IntelliSense caches
82
+ {
83
+ path: path_1.default.join(vscodeConfigDir, "User", "globalStorage"),
84
+ description: "Extension global storage (some safe to clear)",
85
+ category: "Storage",
86
+ },
87
+ // Crash dumps and diagnostic data
88
+ {
89
+ path: path_1.default.join(vscodeConfigDir, "CrashDumps"),
90
+ description: "Application crash dumps",
91
+ category: "Diagnostics",
92
+ },
93
+ // Extension-specific caches in extensions folder
94
+ {
95
+ path: path_1.default.join(vscodeExtensionsDir, ".obsolete"),
96
+ description: "Obsolete extension files",
97
+ category: "Extensions",
98
+ },
99
+ // Platform-specific additional locations - macOS VSCode variants
100
+ ...macOSVSCodeCaches,
101
+ ...(platform === "darwin"
102
+ ? [
103
+ {
104
+ path: path_1.default.join(homeDir, "Library", "Logs", "Microsoft VS Code"),
105
+ description: "macOS VS Code system logs",
106
+ category: "Logs",
107
+ },
108
+ // VS Code Insiders support
109
+ {
110
+ path: path_1.default.join(homeDir, "Library", "Application Support", "Code - Insiders"),
111
+ description: "VS Code Insiders application support",
112
+ category: "App Support",
113
+ },
114
+ ]
115
+ : []),
116
+ ...(platform === "win32"
117
+ ? [
118
+ {
119
+ path: path_1.default.join(homeDir, "AppData", "Local", "Microsoft", "vscode-cpptools"),
120
+ description: "C++ extension cache",
121
+ category: "Language Servers",
122
+ },
123
+ ]
124
+ : []),
125
+ // Common language server caches (cross-platform)
126
+ {
127
+ path: path_1.default.join(homeDir, ".vscode-server", "data", "logs"),
128
+ description: "Remote development server logs",
129
+ category: "Remote",
130
+ },
131
+ ];
132
+ }
133
+ // Dynamic discovery of additional VSCode cache directories
134
+ async discoverAdditionalVSCodeCaches() {
135
+ const homeDir = os_1.default.homedir();
136
+ const platform = process.platform;
137
+ const additionalPaths = [];
138
+ if (platform === "darwin") {
139
+ try {
140
+ const cachesDir = path_1.default.join(homeDir, "Library", "Caches");
141
+ const entries = await fs_1.promises.readdir(cachesDir);
142
+ // Find all com.microsoft.VSCode* directories dynamically
143
+ for (const entry of entries) {
144
+ if (entry.startsWith("com.microsoft.VSCode") ||
145
+ entry.startsWith("com.vscodium")) {
146
+ const fullPath = path_1.default.join(cachesDir, entry);
147
+ // Check if not already in known patterns
148
+ if (!VSCODE_CACHE_PATTERNS.includes(entry)) {
149
+ additionalPaths.push({
150
+ path: fullPath,
151
+ description: `Discovered ${entry} cache`,
152
+ category: "App Cache",
153
+ });
154
+ }
155
+ }
156
+ }
157
+ }
158
+ catch {
159
+ // Ignore errors during discovery
160
+ }
161
+ }
162
+ return additionalPaths;
163
+ }
164
+ async isAvailable() {
165
+ try {
166
+ (0, cli_1.printVerbose)("Checking if VS Code is installed...");
167
+ const platform = process.platform;
168
+ const vscodeInstalls = [
169
+ // macOS
170
+ "/Applications/Visual Studio Code.app",
171
+ "/Applications/Visual Studio Code - Insiders.app",
172
+ // Windows
173
+ path_1.default.join(process.env.PROGRAMFILES || "", "Microsoft VS Code", "Code.exe"),
174
+ path_1.default.join(process.env.LOCALAPPDATA || "", "Programs", "Microsoft VS Code", "Code.exe"),
175
+ // Linux
176
+ "/usr/bin/code",
177
+ "/snap/code/current/usr/share/code/code",
178
+ "/usr/share/code/code",
179
+ ];
180
+ for (const install of vscodeInstalls) {
181
+ if (await (0, fs_2.pathExists)(install)) {
182
+ (0, cli_1.printVerbose)(`Found VS Code at ${install}`);
183
+ return true;
184
+ }
185
+ }
186
+ // Also check if we have VS Code config directories (indicates usage)
187
+ const homeDir = os_1.default.homedir();
188
+ let configDir;
189
+ if (platform === "darwin") {
190
+ configDir = path_1.default.join(homeDir, "Library", "Application Support", "Code");
191
+ }
192
+ else if (platform === "win32") {
193
+ configDir = path_1.default.join(homeDir, "AppData", "Roaming", "Code");
194
+ }
195
+ else {
196
+ configDir = path_1.default.join(homeDir, ".config", "Code");
197
+ }
198
+ if (await (0, fs_2.pathExists)(configDir)) {
199
+ (0, cli_1.printVerbose)(`Found VS Code config directory at ${configDir}`);
200
+ return true;
201
+ }
202
+ return false;
203
+ }
204
+ catch {
205
+ return false;
206
+ }
207
+ }
208
+ async getCacheInfo() {
209
+ // Combine static and dynamically discovered paths
210
+ const staticPaths = this.getCachePaths();
211
+ const discoveredPaths = await this.discoverAdditionalVSCodeCaches();
212
+ const allPaths = [...staticPaths, ...discoveredPaths];
213
+ const existingPaths = [];
214
+ let totalSize = 0;
215
+ let lastModified;
216
+ const categories = new Map();
217
+ (0, cli_1.printVerbose)(`Checking ${allPaths.length} VS Code cache locations (${discoveredPaths.length} dynamically discovered)...`);
218
+ for (const { path: cachePath, description, category } of allPaths) {
219
+ if (await (0, fs_2.pathExists)(cachePath)) {
220
+ existingPaths.push(cachePath);
221
+ try {
222
+ // Use estimation for potentially large directories to avoid timeouts
223
+ const isLargeDirectory = category === "Storage" ||
224
+ category === "Workspaces" ||
225
+ cachePath.includes("extensions");
226
+ const size = isLargeDirectory
227
+ ? await (0, fs_2.getEstimatedDirectorySize)(cachePath)
228
+ : await (0, fs_2.getDirectorySize)(cachePath);
229
+ totalSize += size;
230
+ // Track by category
231
+ const existing = categories.get(category) || { size: 0, count: 0 };
232
+ categories.set(category, {
233
+ size: existing.size + size,
234
+ count: existing.count + 1,
235
+ });
236
+ const stats = await fs_1.promises.stat(cachePath);
237
+ if (!lastModified || stats.mtime > lastModified) {
238
+ lastModified = stats.mtime;
239
+ }
240
+ const sizeInMB = (size / (1024 * 1024)).toFixed(1);
241
+ const sizeType = isLargeDirectory ? " estimated" : "";
242
+ (0, cli_1.printVerbose)(`Found ${category}: ${cachePath} (${sizeInMB} MB${sizeType}) - ${description}`);
243
+ }
244
+ catch (error) {
245
+ (0, cli_1.printVerbose)(`Error checking ${cachePath}: ${error}`);
246
+ }
247
+ }
248
+ }
249
+ // Log category summary
250
+ if (categories.size > 0) {
251
+ (0, cli_1.printVerbose)("=== VS Code Cache Summary by Category ===");
252
+ categories.forEach((info, category) => {
253
+ const sizeInMB = (info.size / (1024 * 1024)).toFixed(1);
254
+ (0, cli_1.printVerbose)(`${category}: ${info.count} locations, ${sizeInMB} MB`);
255
+ });
256
+ }
257
+ return {
258
+ name: this.name,
259
+ type: this.type,
260
+ description: this.description,
261
+ paths: existingPaths,
262
+ isInstalled: await this.isAvailable(),
263
+ size: totalSize,
264
+ lastModified,
265
+ };
266
+ }
267
+ async clear(dryRun = false, _criteria, cacheInfo) {
268
+ const info = cacheInfo || (await this.getCacheInfo());
269
+ const clearedPaths = [];
270
+ const sizeBefore = info.size || 0;
271
+ let success = true;
272
+ let error;
273
+ if (!info.isInstalled) {
274
+ return {
275
+ name: this.name,
276
+ success: false,
277
+ error: "VS Code is not installed or configured",
278
+ clearedPaths: [],
279
+ sizeBefore: 0,
280
+ sizeAfter: 0,
281
+ };
282
+ }
283
+ if (info.paths.length === 0) {
284
+ (0, cli_1.printVerbose)("No VS Code cache directories found");
285
+ return {
286
+ name: this.name,
287
+ success: true,
288
+ clearedPaths: [],
289
+ sizeBefore: 0,
290
+ sizeAfter: 0,
291
+ };
292
+ }
293
+ try {
294
+ // Combine static and dynamically discovered paths for full coverage
295
+ const staticPaths = this.getCachePaths();
296
+ const discoveredPaths = await this.discoverAdditionalVSCodeCaches();
297
+ const pathsWithInfo = [...staticPaths, ...discoveredPaths];
298
+ if (dryRun) {
299
+ (0, cli_1.printVerbose)(`[DRY RUN] Would clear ${info.paths.length} VS Code cache locations:`);
300
+ for (const cachePath of info.paths) {
301
+ const pathInfo = pathsWithInfo.find((p) => p.path === cachePath);
302
+ (0, cli_1.printVerbose)(` • ${pathInfo?.category || "App Cache"}: ${cachePath}`);
303
+ if (pathInfo?.description) {
304
+ (0, cli_1.printVerbose)(` ${pathInfo.description}`);
305
+ }
306
+ }
307
+ return {
308
+ name: this.name,
309
+ success: true,
310
+ sizeBefore,
311
+ sizeAfter: sizeBefore,
312
+ clearedPaths: info.paths,
313
+ };
314
+ }
315
+ // Clear caches by category priority (safest first)
316
+ const priorityOrder = [
317
+ "Logs",
318
+ "Diagnostics",
319
+ "App Cache",
320
+ "Extensions",
321
+ "History",
322
+ "Language Servers",
323
+ "Remote",
324
+ "App Support", // VS Code Insiders and variants
325
+ "Workspaces", // More careful - contains workspace state
326
+ "Storage", // Most careful - contains extension settings
327
+ ];
328
+ const categorizedPaths = new Map();
329
+ for (const cachePath of info.paths) {
330
+ const pathInfo = pathsWithInfo.find((p) => p.path === cachePath);
331
+ const category = pathInfo?.category || "Other";
332
+ if (!categorizedPaths.has(category)) {
333
+ categorizedPaths.set(category, []);
334
+ }
335
+ categorizedPaths.get(category).push(cachePath);
336
+ }
337
+ // Clear in priority order
338
+ for (const category of priorityOrder) {
339
+ const paths = categorizedPaths.get(category);
340
+ if (!paths)
341
+ continue;
342
+ (0, cli_1.printVerbose)(`Clearing ${category} caches...`);
343
+ for (const cachePath of paths) {
344
+ try {
345
+ if (await (0, fs_2.pathExists)(cachePath)) {
346
+ const pathInfo = pathsWithInfo.find((p) => p.path === cachePath);
347
+ (0, cli_1.printVerbose)(`Clearing ${category}: ${cachePath}`);
348
+ if (pathInfo?.description) {
349
+ (0, cli_1.printVerbose)(` Purpose: ${pathInfo.description}`);
350
+ }
351
+ await (0, fs_2.safeRmrf)(cachePath);
352
+ clearedPaths.push(cachePath);
353
+ }
354
+ }
355
+ catch (pathError) {
356
+ (0, cli_1.printVerbose)(`Failed to clear ${cachePath}: ${pathError}`);
357
+ success = false;
358
+ if (!error) {
359
+ error = `Failed to clear some VS Code cache directories: ${pathError}`;
360
+ }
361
+ }
362
+ }
363
+ }
364
+ // Handle any remaining uncategorized paths
365
+ const remainingPaths = info.paths.filter((p) => !clearedPaths.includes(p));
366
+ for (const cachePath of remainingPaths) {
367
+ try {
368
+ if (await (0, fs_2.pathExists)(cachePath)) {
369
+ (0, cli_1.printVerbose)(`Clearing remaining cache: ${cachePath}`);
370
+ await (0, fs_2.safeRmrf)(cachePath);
371
+ clearedPaths.push(cachePath);
372
+ }
373
+ }
374
+ catch (pathError) {
375
+ (0, cli_1.printVerbose)(`Failed to clear ${cachePath}: ${pathError}`);
376
+ success = false;
377
+ if (!error) {
378
+ error = `Failed to clear some cache directories: ${pathError}`;
379
+ }
380
+ }
381
+ }
382
+ if (sizeBefore > 0) {
383
+ (0, cli_1.printVerbose)(`Freed space from VS Code cache data`);
384
+ }
385
+ return {
386
+ name: this.name,
387
+ success,
388
+ sizeBefore,
389
+ sizeAfter: 0, // Set to 0 as we don't want to rescan
390
+ error,
391
+ clearedPaths,
392
+ };
393
+ }
394
+ catch (clearError) {
395
+ return {
396
+ name: this.name,
397
+ success: false,
398
+ sizeBefore,
399
+ sizeAfter: sizeBefore,
400
+ error: clearError instanceof Error ? clearError.message : String(clearError),
401
+ clearedPaths,
402
+ };
403
+ }
404
+ }
405
+ static create() {
406
+ return new VSCodeCleaner();
407
+ }
408
+ }
409
+ exports.VSCodeCleaner = VSCodeCleaner;
410
+ exports.default = VSCodeCleaner.create();
411
+ //# sourceMappingURL=vscode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vscode.js","sourceRoot":"","sources":["../../src/cleaners/vscode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { CleanerModule, CacheInfo, ClearResult, CacheSelectionCriteria } from "../types";
2
+ export declare class WebpackCleaner implements CleanerModule {
3
+ name: string;
4
+ type: "build-tool";
5
+ description: string;
6
+ private findWebpackCaches;
7
+ private findWebpackCachesRecursively;
8
+ private hasWebpackProjects;
9
+ private searchForWebpackProjects;
10
+ private isWebpackProject;
11
+ isAvailable(): Promise<boolean>;
12
+ getCacheInfo(): Promise<CacheInfo>;
13
+ clear(dryRun?: boolean, _criteria?: CacheSelectionCriteria, cacheInfo?: CacheInfo): Promise<ClearResult>;
14
+ }
15
+ declare const _default: WebpackCleaner;
16
+ export default _default;
17
+ //# sourceMappingURL=webpack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpack.d.ts","sourceRoot":"","sources":["../../src/cleaners/webpack.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,SAAS,EACT,WAAW,EACX,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAOlB,qBAAa,cAAe,YAAW,aAAa;IAClD,IAAI,SAAa;IACjB,IAAI,EAAG,YAAY,CAAU;IAC7B,WAAW,SAA8C;YAE3C,iBAAiB;YA6CjB,4BAA4B;YAgD5B,kBAAkB;YA+BlB,wBAAwB;YA+BxB,gBAAgB;IAkBxB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ/B,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IA4BlC,KAAK,CACT,MAAM,UAAQ,EACd,SAAS,CAAC,EAAE,sBAAsB,EAClC,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,WAAW,CAAC;CA4CxB;;AAED,wBAAoC"}