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.
Files changed (191) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +465 -0
  3. package/dist/cleaners/BaseCleaner.d.ts +57 -0
  4. package/dist/cleaners/BaseCleaner.d.ts.map +1 -0
  5. package/dist/cleaners/BaseCleaner.js +299 -0
  6. package/dist/cleaners/BaseCleaner.js.map +1 -0
  7. package/dist/cleaners/CleanerRegistry.d.ts +65 -0
  8. package/dist/cleaners/CleanerRegistry.d.ts.map +1 -0
  9. package/dist/cleaners/CleanerRegistry.js +112 -0
  10. package/dist/cleaners/CleanerRegistry.js.map +1 -0
  11. package/dist/cleaners/androidstudio.d.ts +16 -0
  12. package/dist/cleaners/androidstudio.d.ts.map +1 -0
  13. package/dist/cleaners/androidstudio.js +375 -0
  14. package/dist/cleaners/androidstudio.js.map +1 -0
  15. package/dist/cleaners/brew.d.ts +4 -0
  16. package/dist/cleaners/brew.d.ts.map +1 -0
  17. package/dist/cleaners/brew.js +197 -0
  18. package/dist/cleaners/brew.js.map +1 -0
  19. package/dist/cleaners/brewEnhanced.d.ts +18 -0
  20. package/dist/cleaners/brewEnhanced.d.ts.map +1 -0
  21. package/dist/cleaners/brewEnhanced.js +255 -0
  22. package/dist/cleaners/brewEnhanced.js.map +1 -0
  23. package/dist/cleaners/bun.d.ts +14 -0
  24. package/dist/cleaners/bun.d.ts.map +1 -0
  25. package/dist/cleaners/bun.js +207 -0
  26. package/dist/cleaners/bun.js.map +1 -0
  27. package/dist/cleaners/chrome.d.ts +14 -0
  28. package/dist/cleaners/chrome.d.ts.map +1 -0
  29. package/dist/cleaners/chrome.js +250 -0
  30. package/dist/cleaners/chrome.js.map +1 -0
  31. package/dist/cleaners/docker.d.ts +35 -0
  32. package/dist/cleaners/docker.d.ts.map +1 -0
  33. package/dist/cleaners/docker.js +285 -0
  34. package/dist/cleaners/docker.js.map +1 -0
  35. package/dist/cleaners/firefox.d.ts +15 -0
  36. package/dist/cleaners/firefox.d.ts.map +1 -0
  37. package/dist/cleaners/firefox.js +281 -0
  38. package/dist/cleaners/firefox.js.map +1 -0
  39. package/dist/cleaners/flutter.d.ts +18 -0
  40. package/dist/cleaners/flutter.d.ts.map +1 -0
  41. package/dist/cleaners/flutter.js +354 -0
  42. package/dist/cleaners/flutter.js.map +1 -0
  43. package/dist/cleaners/goBuild.d.ts +18 -0
  44. package/dist/cleaners/goBuild.d.ts.map +1 -0
  45. package/dist/cleaners/goBuild.js +196 -0
  46. package/dist/cleaners/goBuild.js.map +1 -0
  47. package/dist/cleaners/gradle.d.ts +14 -0
  48. package/dist/cleaners/gradle.d.ts.map +1 -0
  49. package/dist/cleaners/gradle.js +336 -0
  50. package/dist/cleaners/gradle.js.map +1 -0
  51. package/dist/cleaners/index.d.ts +51 -0
  52. package/dist/cleaners/index.d.ts.map +1 -0
  53. package/dist/cleaners/index.js +247 -0
  54. package/dist/cleaners/index.js.map +1 -0
  55. package/dist/cleaners/jetbrains.d.ts +18 -0
  56. package/dist/cleaners/jetbrains.d.ts.map +1 -0
  57. package/dist/cleaners/jetbrains.js +441 -0
  58. package/dist/cleaners/jetbrains.js.map +1 -0
  59. package/dist/cleaners/nix.d.ts +4 -0
  60. package/dist/cleaners/nix.d.ts.map +1 -0
  61. package/dist/cleaners/nix.js +227 -0
  62. package/dist/cleaners/nix.js.map +1 -0
  63. package/dist/cleaners/nodeGyp.d.ts +14 -0
  64. package/dist/cleaners/nodeGyp.d.ts.map +1 -0
  65. package/dist/cleaners/nodeGyp.js +157 -0
  66. package/dist/cleaners/nodeGyp.js.map +1 -0
  67. package/dist/cleaners/npm.d.ts +14 -0
  68. package/dist/cleaners/npm.d.ts.map +1 -0
  69. package/dist/cleaners/npm.js +198 -0
  70. package/dist/cleaners/npm.js.map +1 -0
  71. package/dist/cleaners/npmEnhanced.d.ts +19 -0
  72. package/dist/cleaners/npmEnhanced.d.ts.map +1 -0
  73. package/dist/cleaners/npmEnhanced.js +336 -0
  74. package/dist/cleaners/npmEnhanced.js.map +1 -0
  75. package/dist/cleaners/nx.d.ts +18 -0
  76. package/dist/cleaners/nx.d.ts.map +1 -0
  77. package/dist/cleaners/nx.js +308 -0
  78. package/dist/cleaners/nx.js.map +1 -0
  79. package/dist/cleaners/pip.d.ts +19 -0
  80. package/dist/cleaners/pip.d.ts.map +1 -0
  81. package/dist/cleaners/pip.js +334 -0
  82. package/dist/cleaners/pip.js.map +1 -0
  83. package/dist/cleaners/pnpm.d.ts +14 -0
  84. package/dist/cleaners/pnpm.d.ts.map +1 -0
  85. package/dist/cleaners/pnpm.js +209 -0
  86. package/dist/cleaners/pnpm.js.map +1 -0
  87. package/dist/cleaners/turbo.d.ts +18 -0
  88. package/dist/cleaners/turbo.d.ts.map +1 -0
  89. package/dist/cleaners/turbo.js +325 -0
  90. package/dist/cleaners/turbo.js.map +1 -0
  91. package/dist/cleaners/vite.d.ts +17 -0
  92. package/dist/cleaners/vite.d.ts.map +1 -0
  93. package/dist/cleaners/vite.js +274 -0
  94. package/dist/cleaners/vite.js.map +1 -0
  95. package/dist/cleaners/vscode.d.ts +14 -0
  96. package/dist/cleaners/vscode.d.ts.map +1 -0
  97. package/dist/cleaners/vscode.js +354 -0
  98. package/dist/cleaners/vscode.js.map +1 -0
  99. package/dist/cleaners/webpack.d.ts +17 -0
  100. package/dist/cleaners/webpack.d.ts.map +1 -0
  101. package/dist/cleaners/webpack.js +263 -0
  102. package/dist/cleaners/webpack.js.map +1 -0
  103. package/dist/cleaners/xcode.d.ts +14 -0
  104. package/dist/cleaners/xcode.d.ts.map +1 -0
  105. package/dist/cleaners/xcode.js +348 -0
  106. package/dist/cleaners/xcode.js.map +1 -0
  107. package/dist/cleaners/yarn.d.ts +16 -0
  108. package/dist/cleaners/yarn.d.ts.map +1 -0
  109. package/dist/cleaners/yarn.js +266 -0
  110. package/dist/cleaners/yarn.js.map +1 -0
  111. package/dist/cli.d.ts +3 -0
  112. package/dist/cli.d.ts.map +1 -0
  113. package/dist/cli.js +346 -0
  114. package/dist/cli.js.map +1 -0
  115. package/dist/commands/auto.d.ts +8 -0
  116. package/dist/commands/auto.d.ts.map +1 -0
  117. package/dist/commands/auto.js +224 -0
  118. package/dist/commands/auto.js.map +1 -0
  119. package/dist/commands/categories.d.ts +8 -0
  120. package/dist/commands/categories.d.ts.map +1 -0
  121. package/dist/commands/categories.js +133 -0
  122. package/dist/commands/categories.js.map +1 -0
  123. package/dist/commands/clean.d.ts +3 -0
  124. package/dist/commands/clean.d.ts.map +1 -0
  125. package/dist/commands/clean.js +149 -0
  126. package/dist/commands/clean.js.map +1 -0
  127. package/dist/commands/config.d.ts +14 -0
  128. package/dist/commands/config.d.ts.map +1 -0
  129. package/dist/commands/config.js +445 -0
  130. package/dist/commands/config.js.map +1 -0
  131. package/dist/commands/configDoctor.d.ts +26 -0
  132. package/dist/commands/configDoctor.d.ts.map +1 -0
  133. package/dist/commands/configDoctor.js +60 -0
  134. package/dist/commands/configDoctor.js.map +1 -0
  135. package/dist/commands/doctor.d.ts +2 -0
  136. package/dist/commands/doctor.d.ts.map +1 -0
  137. package/dist/commands/doctor.js +141 -0
  138. package/dist/commands/doctor.js.map +1 -0
  139. package/dist/commands/emojis.d.ts +2 -0
  140. package/dist/commands/emojis.d.ts.map +1 -0
  141. package/dist/commands/emojis.js +28 -0
  142. package/dist/commands/emojis.js.map +1 -0
  143. package/dist/commands/interactive.d.ts +3 -0
  144. package/dist/commands/interactive.d.ts.map +1 -0
  145. package/dist/commands/interactive.js +284 -0
  146. package/dist/commands/interactive.js.map +1 -0
  147. package/dist/commands/interactiveEnhanced.d.ts +4 -0
  148. package/dist/commands/interactiveEnhanced.d.ts.map +1 -0
  149. package/dist/commands/interactiveEnhanced.js +460 -0
  150. package/dist/commands/interactiveEnhanced.js.map +1 -0
  151. package/dist/commands/list.d.ts +2 -0
  152. package/dist/commands/list.d.ts.map +1 -0
  153. package/dist/commands/list.js +68 -0
  154. package/dist/commands/list.js.map +1 -0
  155. package/dist/commands/sizes.d.ts +2 -0
  156. package/dist/commands/sizes.d.ts.map +1 -0
  157. package/dist/commands/sizes.js +87 -0
  158. package/dist/commands/sizes.js.map +1 -0
  159. package/dist/config/index.d.ts +26 -0
  160. package/dist/config/index.d.ts.map +1 -0
  161. package/dist/config/index.js +228 -0
  162. package/dist/config/index.js.map +1 -0
  163. package/dist/config/loadConfig.d.ts +7 -0
  164. package/dist/config/loadConfig.d.ts.map +1 -0
  165. package/dist/config/loadConfig.js +103 -0
  166. package/dist/config/loadConfig.js.map +1 -0
  167. package/dist/config/migrateConfig.d.ts +56 -0
  168. package/dist/config/migrateConfig.d.ts.map +1 -0
  169. package/dist/config/migrateConfig.js +102 -0
  170. package/dist/config/migrateConfig.js.map +1 -0
  171. package/dist/plugins/discovery.d.ts +6 -0
  172. package/dist/plugins/discovery.d.ts.map +1 -0
  173. package/dist/plugins/discovery.js +64 -0
  174. package/dist/plugins/discovery.js.map +1 -0
  175. package/dist/profiles/index.d.ts +61 -0
  176. package/dist/profiles/index.d.ts.map +1 -0
  177. package/dist/profiles/index.js +361 -0
  178. package/dist/profiles/index.js.map +1 -0
  179. package/dist/types/index.d.ts +161 -0
  180. package/dist/types/index.d.ts.map +1 -0
  181. package/dist/types/index.js +3 -0
  182. package/dist/types/index.js.map +1 -0
  183. package/dist/utils/cli.d.ts +44 -0
  184. package/dist/utils/cli.d.ts.map +1 -0
  185. package/dist/utils/cli.js +407 -0
  186. package/dist/utils/cli.js.map +1 -0
  187. package/dist/utils/fs.d.ts +15 -0
  188. package/dist/utils/fs.d.ts.map +1 -0
  189. package/dist/utils/fs.js +218 -0
  190. package/dist/utils/fs.js.map +1 -0
  191. package/package.json +122 -0
@@ -0,0 +1,441 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.JetBrainsCleaner = void 0;
37
+ const BaseCleaner_1 = require("./BaseCleaner");
38
+ const fs_1 = require("fs");
39
+ const path = __importStar(require("path"));
40
+ const os = __importStar(require("os"));
41
+ const fs_2 = require("../utils/fs");
42
+ const cli_1 = require("../utils/cli");
43
+ const minimatch_1 = require("minimatch");
44
+ class JetBrainsCleaner extends BaseCleaner_1.BaseCleaner {
45
+ constructor() {
46
+ super(...arguments);
47
+ this.name = "jetbrains";
48
+ this.type = "ide";
49
+ this.description = "JetBrains IDEs (WebStorm, IntelliJ, PhpStorm, etc.) comprehensive cache cleaning";
50
+ this.jetbrainsProducts = [
51
+ "WebStorm",
52
+ "IntelliJIdea",
53
+ "PhpStorm",
54
+ "PyCharm",
55
+ "RubyMine",
56
+ "CLion",
57
+ "DataGrip",
58
+ "Rider",
59
+ "GoLand",
60
+ "AndroidStudio",
61
+ "AppCode",
62
+ "DataSpell",
63
+ "RustRover",
64
+ "Aqua",
65
+ "Fleet",
66
+ "Space",
67
+ "Toolbox", // JetBrains Toolbox App
68
+ ];
69
+ }
70
+ // Cache categories for different JetBrains cache types
71
+ async findJetBrainsInstallations() {
72
+ const installations = [];
73
+ const platform = os.platform();
74
+ if (platform === "darwin") {
75
+ // macOS Applications
76
+ const applicationsDir = "/Applications";
77
+ for (const product of this.jetbrainsProducts) {
78
+ const patterns = [`${product}.app`, `${product}*.app`];
79
+ for (const pattern of patterns) {
80
+ try {
81
+ if (await (0, fs_2.pathExists)(path.join(applicationsDir, pattern.replace("*", "")))) {
82
+ installations.push({
83
+ product,
84
+ path: path.join(applicationsDir, pattern.replace("*", "")),
85
+ });
86
+ }
87
+ else {
88
+ // Try to find versioned applications
89
+ const entries = await fs_1.promises.readdir(applicationsDir);
90
+ for (const entry of entries) {
91
+ if (entry.startsWith(product) && entry.endsWith(".app")) {
92
+ installations.push({
93
+ product,
94
+ path: path.join(applicationsDir, entry),
95
+ });
96
+ }
97
+ }
98
+ }
99
+ }
100
+ catch {
101
+ // Continue
102
+ }
103
+ }
104
+ }
105
+ }
106
+ else if (platform === "win32") {
107
+ // Windows Program Files
108
+ const programFilesDirs = [
109
+ "C:\\Program Files\\JetBrains",
110
+ "C:\\Program Files (x86)\\JetBrains",
111
+ ];
112
+ for (const programDir of programFilesDirs) {
113
+ if (await (0, fs_2.pathExists)(programDir)) {
114
+ try {
115
+ const entries = await fs_1.promises.readdir(programDir);
116
+ for (const entry of entries) {
117
+ for (const product of this.jetbrainsProducts) {
118
+ if (entry.includes(product)) {
119
+ installations.push({
120
+ product,
121
+ path: path.join(programDir, entry),
122
+ });
123
+ }
124
+ }
125
+ }
126
+ }
127
+ catch {
128
+ // Continue
129
+ }
130
+ }
131
+ }
132
+ }
133
+ else {
134
+ // Linux
135
+ const linuxDirs = [
136
+ "/opt",
137
+ "/usr/local",
138
+ path.join(os.homedir(), ".local", "share", "JetBrains"),
139
+ ];
140
+ for (const baseDir of linuxDirs) {
141
+ if (await (0, fs_2.pathExists)(baseDir)) {
142
+ try {
143
+ const entries = await fs_1.promises.readdir(baseDir);
144
+ for (const entry of entries) {
145
+ for (const product of this.jetbrainsProducts) {
146
+ if (entry.toLowerCase().includes(product.toLowerCase())) {
147
+ installations.push({
148
+ product,
149
+ path: path.join(baseDir, entry),
150
+ });
151
+ }
152
+ }
153
+ }
154
+ }
155
+ catch {
156
+ // Continue
157
+ }
158
+ }
159
+ }
160
+ }
161
+ return installations;
162
+ }
163
+ async getJetBrainsCachePaths() {
164
+ const paths = [];
165
+ const homeDir = os.homedir();
166
+ const platform = os.platform();
167
+ // Platform-specific JetBrains cache paths
168
+ if (platform === "darwin") {
169
+ // macOS
170
+ const macBasePaths = [
171
+ path.join(homeDir, "Library", "Caches"),
172
+ path.join(homeDir, "Library", "Logs"),
173
+ path.join(homeDir, "Library", "Application Support"),
174
+ ];
175
+ for (const basePath of macBasePaths) {
176
+ for (const product of this.jetbrainsProducts) {
177
+ const productPaths = [
178
+ path.join(basePath, product),
179
+ path.join(basePath, `JetBrains${product}`),
180
+ ];
181
+ for (const productPath of productPaths) {
182
+ // Look for versioned directories
183
+ try {
184
+ if (await (0, fs_2.pathExists)(path.dirname(productPath))) {
185
+ const entries = await fs_1.promises.readdir(path.dirname(productPath));
186
+ for (const entry of entries) {
187
+ if (entry.includes(product) &&
188
+ (await (0, fs_2.pathExists)(path.join(path.dirname(productPath), entry)))) {
189
+ paths.push(path.join(path.dirname(productPath), entry));
190
+ }
191
+ }
192
+ }
193
+ }
194
+ catch {
195
+ // Continue
196
+ }
197
+ }
198
+ }
199
+ }
200
+ }
201
+ else if (platform === "win32") {
202
+ // Windows
203
+ const windowsBasePaths = [
204
+ path.join(homeDir, "AppData", "Local", "JetBrains"),
205
+ path.join(homeDir, "AppData", "Roaming", "JetBrains"),
206
+ ];
207
+ for (const basePath of windowsBasePaths) {
208
+ if (await (0, fs_2.pathExists)(basePath)) {
209
+ try {
210
+ const entries = await fs_1.promises.readdir(basePath);
211
+ for (const entry of entries) {
212
+ paths.push(path.join(basePath, entry));
213
+ }
214
+ }
215
+ catch {
216
+ // Continue
217
+ }
218
+ }
219
+ }
220
+ }
221
+ else {
222
+ // Linux
223
+ const linuxBasePaths = [
224
+ path.join(homeDir, ".cache", "JetBrains"),
225
+ path.join(homeDir, ".config", "JetBrains"),
226
+ path.join(homeDir, ".local", "share", "JetBrains"),
227
+ ];
228
+ for (const basePath of linuxBasePaths) {
229
+ if (await (0, fs_2.pathExists)(basePath)) {
230
+ try {
231
+ const entries = await fs_1.promises.readdir(basePath);
232
+ for (const entry of entries) {
233
+ paths.push(path.join(basePath, entry));
234
+ }
235
+ }
236
+ catch {
237
+ // Continue
238
+ }
239
+ }
240
+ }
241
+ }
242
+ // Look for .idea directories in projects
243
+ try {
244
+ const ideaFolders = await this.findIdeaFolders();
245
+ paths.push(...ideaFolders);
246
+ }
247
+ catch (error) {
248
+ (0, cli_1.printVerbose)(`Error finding .idea folders: ${error}`);
249
+ }
250
+ return [...new Set(paths)]; // Remove duplicates
251
+ }
252
+ async findIdeaFolders() {
253
+ const ideaFolders = [];
254
+ const homeDir = os.homedir();
255
+ // Common project directories
256
+ const searchDirs = [
257
+ path.join(homeDir, "Projects"),
258
+ path.join(homeDir, "Development"),
259
+ path.join(homeDir, "dev"),
260
+ path.join(homeDir, "workspace"),
261
+ path.join(homeDir, "IdeaProjects"),
262
+ path.join(homeDir, "WebstormProjects"),
263
+ path.join(homeDir, "Documents"),
264
+ process.cwd(),
265
+ ];
266
+ for (const searchDir of searchDirs) {
267
+ if (await (0, fs_2.pathExists)(searchDir)) {
268
+ try {
269
+ const ideas = await this.findIdeaFoldersRecursively(searchDir, 3);
270
+ ideaFolders.push(...ideas);
271
+ }
272
+ catch (error) {
273
+ (0, cli_1.printVerbose)(`Error searching ${searchDir}: ${error}`);
274
+ }
275
+ }
276
+ }
277
+ return ideaFolders;
278
+ }
279
+ async findIdeaFoldersRecursively(dir, maxDepth) {
280
+ if (maxDepth <= 0)
281
+ return [];
282
+ const ideaFolders = [];
283
+ try {
284
+ const entries = await fs_1.promises.readdir(dir, { withFileTypes: true });
285
+ for (const entry of entries) {
286
+ if (entry.isDirectory()) {
287
+ const fullPath = path.join(dir, entry.name);
288
+ if (entry.name === ".idea") {
289
+ // Found a .idea folder
290
+ ideaFolders.push(fullPath);
291
+ }
292
+ else if (!entry.name.startsWith(".") &&
293
+ entry.name !== "node_modules") {
294
+ // Recursively search subdirectories
295
+ const subIdeas = await this.findIdeaFoldersRecursively(fullPath, maxDepth - 1);
296
+ ideaFolders.push(...subIdeas);
297
+ }
298
+ }
299
+ }
300
+ }
301
+ catch {
302
+ // Ignore permission errors
303
+ }
304
+ return ideaFolders;
305
+ }
306
+ async isAvailable() {
307
+ // Check for JetBrains installations
308
+ const installations = await this.findJetBrainsInstallations();
309
+ if (installations.length > 0) {
310
+ (0, cli_1.printVerbose)(`Found JetBrains products: ${installations.map((i) => i.product).join(", ")}`);
311
+ return true;
312
+ }
313
+ // Check for JetBrains cache directories
314
+ const homeDir = os.homedir();
315
+ const platform = os.platform();
316
+ const possibleCacheDirs = [];
317
+ if (platform === "darwin") {
318
+ possibleCacheDirs.push(path.join(homeDir, "Library", "Caches", "JetBrains"), path.join(homeDir, "Library", "Application Support", "JetBrains"));
319
+ }
320
+ else if (platform === "win32") {
321
+ possibleCacheDirs.push(path.join(homeDir, "AppData", "Local", "JetBrains"), path.join(homeDir, "AppData", "Roaming", "JetBrains"));
322
+ }
323
+ else {
324
+ possibleCacheDirs.push(path.join(homeDir, ".cache", "JetBrains"), path.join(homeDir, ".config", "JetBrains"));
325
+ }
326
+ for (const cacheDir of possibleCacheDirs) {
327
+ if (await (0, fs_2.pathExists)(cacheDir)) {
328
+ (0, cli_1.printVerbose)(`Found JetBrains cache directory at ${cacheDir}`);
329
+ return true;
330
+ }
331
+ }
332
+ // Check for .idea folders
333
+ const ideaFolders = await this.findIdeaFolders();
334
+ if (ideaFolders.length > 0) {
335
+ (0, cli_1.printVerbose)(`Found ${ideaFolders.length} .idea folders`);
336
+ return true;
337
+ }
338
+ return false;
339
+ }
340
+ async getCacheInfo() {
341
+ const isInstalled = await this.isAvailable();
342
+ if (!isInstalled) {
343
+ return {
344
+ name: this.name,
345
+ type: this.type,
346
+ description: this.description,
347
+ paths: [],
348
+ isInstalled: false,
349
+ size: 0,
350
+ };
351
+ }
352
+ const cachePaths = await this.getJetBrainsCachePaths();
353
+ let totalSize = 0;
354
+ const validPaths = [];
355
+ for (const cachePath of cachePaths) {
356
+ try {
357
+ const size = await (0, fs_2.getDirectorySize)(cachePath, true); // Use estimated size for large dirs
358
+ totalSize += size;
359
+ validPaths.push(cachePath);
360
+ (0, cli_1.printVerbose)(`${cli_1.symbols.folder} ${cachePath}: ${(size / (1024 * 1024)).toFixed(1)} MB`);
361
+ }
362
+ catch (error) {
363
+ (0, cli_1.printVerbose)(`Error calculating size for ${cachePath}: ${error}`);
364
+ }
365
+ }
366
+ return {
367
+ name: this.name,
368
+ type: this.type,
369
+ description: this.description,
370
+ paths: validPaths,
371
+ isInstalled: true,
372
+ size: totalSize,
373
+ };
374
+ }
375
+ async clear(dryRun = false, _criteria, cacheInfo, protectedPaths = []) {
376
+ const info = cacheInfo || (await this.getCacheInfo());
377
+ if (!info.isInstalled) {
378
+ return {
379
+ name: this.name,
380
+ success: false,
381
+ error: "JetBrains IDEs are not available",
382
+ clearedPaths: [],
383
+ sizeBefore: 0,
384
+ sizeAfter: 0,
385
+ };
386
+ }
387
+ const sizeBefore = info.size || 0;
388
+ const clearedPaths = [];
389
+ let errors = [];
390
+ for (const cachePath of info.paths) {
391
+ // Check if the path is protected
392
+ const isProtected = protectedPaths.some((protectedPattern) => (0, minimatch_1.minimatch)(cachePath, protectedPattern, { dot: true }));
393
+ if (isProtected) {
394
+ (0, cli_1.printVerbose)(`Skipping protected path: ${cachePath}`);
395
+ continue; // Skip this path
396
+ }
397
+ try {
398
+ if (dryRun) {
399
+ (0, cli_1.printVerbose)(`${cli_1.symbols.soap} Would clear: ${cachePath}`);
400
+ clearedPaths.push(cachePath);
401
+ }
402
+ else {
403
+ (0, cli_1.printVerbose)(`${cli_1.symbols.soap} Clearing: ${cachePath}`);
404
+ // Be careful with .idea folders - only clear cache subdirectories
405
+ if (cachePath.endsWith(".idea")) {
406
+ // Only clear specific cache subdirectories in .idea folders
407
+ const cacheSubdirs = ["shelf", "sonarlint", "httpRequests", ".tmp"];
408
+ for (const subdir of cacheSubdirs) {
409
+ const subdirPath = path.join(cachePath, subdir);
410
+ if (await (0, fs_2.pathExists)(subdirPath)) {
411
+ await (0, fs_2.safeRmrf)(subdirPath);
412
+ (0, cli_1.printVerbose)(`${cli_1.symbols.soap} Cleared .idea subdirectory: ${subdir}`);
413
+ }
414
+ }
415
+ }
416
+ else {
417
+ // For other cache directories, clear everything
418
+ await (0, fs_2.safeRmrf)(cachePath);
419
+ }
420
+ clearedPaths.push(cachePath);
421
+ }
422
+ }
423
+ catch (error) {
424
+ const errorMsg = `Failed to clear ${cachePath}: ${error}`;
425
+ errors.push(errorMsg);
426
+ (0, cli_1.printVerbose)(errorMsg);
427
+ }
428
+ }
429
+ return {
430
+ name: this.name,
431
+ success: errors.length === 0,
432
+ sizeBefore,
433
+ sizeAfter: 0, // Set to 0 as we don't want to rescan
434
+ error: errors.length > 0 ? errors.join("; ") : undefined,
435
+ clearedPaths,
436
+ };
437
+ }
438
+ }
439
+ exports.JetBrainsCleaner = JetBrainsCleaner;
440
+ exports.default = new JetBrainsCleaner();
441
+ //# sourceMappingURL=jetbrains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jetbrains.js","sourceRoot":"","sources":["../../src/cleaners/jetbrains.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { CleanerModule } from "../types";
2
+ declare const cleaner: CleanerModule;
3
+ export default cleaner;
4
+ //# sourceMappingURL=nix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nix.d.ts","sourceRoot":"","sources":["../../src/cleaners/nix.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAKd,MAAM,UAAU,CAAC;AASlB,QAAA,MAAM,OAAO,EAAE,aAwOd,CAAC;AAEF,eAAe,OAAO,CAAC"}