pnpm-catalog-updates 0.4.2 → 0.5.0

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.
@@ -0,0 +1,483 @@
1
+ /**
2
+ * User-Friendly Error Handler
3
+ *
4
+ * Provides user-friendly error messages instead of exposing technical details.
5
+ * Categorizes errors and provides helpful suggestions where possible.
6
+ */
7
+ import chalk from 'chalk';
8
+ import { Logger } from '../logger/Logger.js';
9
+ import { ErrorTracker } from './ErrorTracker.js';
10
+ export class UserFriendlyErrorHandler {
11
+ static logger = Logger.getLogger('ErrorHandler');
12
+ // Common package name corrections
13
+ static packageSuggestions = new Map([
14
+ // Framework packages
15
+ ['sveltekit', ['@sveltejs/kit']],
16
+ ['vue-router', ['vue-router']],
17
+ ['vue-cli', ['@vue/cli']],
18
+ ['angular-cli', ['@angular/cli']],
19
+ ['angular-core', ['@angular/core']],
20
+ ['angular-universal', ['@nguniversal/express-engine', '@angular/universal']],
21
+ ['react-router', ['react-router-dom']],
22
+ ['react-dom', ['react-dom']],
23
+ ['nextjs', ['next']],
24
+ ['nuxtjs', ['nuxt']],
25
+ // UI Libraries
26
+ ['material-ui', ['@mui/material', '@material-ui/core']],
27
+ ['mui', ['@mui/material']],
28
+ ['antd', ['antd']],
29
+ ['ant-design', ['antd']],
30
+ ['prime-ng', ['primeng']],
31
+ ['primeng', ['primeng']],
32
+ ['ng-zorro', ['ng-zorro-antd']],
33
+ ['bootstrap-vue', ['bootstrap-vue']],
34
+ ['vuetify', ['vuetify']],
35
+ ['quasar', ['quasar']],
36
+ ['onsen-ui', ['onsenui']],
37
+ ['ionic', ['@ionic/angular', '@ionic/react', '@ionic/vue']],
38
+ // CSS Frameworks
39
+ ['tailwindcss', ['tailwindcss']],
40
+ ['tailwind', ['tailwindcss']],
41
+ ['bulma', ['bulma']],
42
+ ['water-css', ['water.css']],
43
+ ['holiday-css', ['@holiday-css/main']],
44
+ ['wing-css', ['@wing-css/wing']],
45
+ ['picnic-css', ['picnicss']],
46
+ // Build Tools & Bundlers
47
+ ['webpack', ['webpack']],
48
+ ['webpack-cli', ['webpack-cli']],
49
+ ['rollup', ['rollup']],
50
+ ['vite', ['vite']],
51
+ ['parcel', ['parcel']],
52
+ ['esbuild', ['esbuild']],
53
+ ['swc', ['@swc/core']],
54
+ // Testing
55
+ ['jest', ['jest']],
56
+ ['vitest', ['vitest']],
57
+ ['mocha', ['mocha']],
58
+ ['chai', ['chai']],
59
+ ['cypress', ['cypress']],
60
+ ['playwright', ['@playwright/test']],
61
+ ['puppeteer', ['puppeteer']],
62
+ ['selenium', ['selenium-webdriver']],
63
+ ['webdriver', ['selenium-webdriver']],
64
+ ['lambdatest', ['@lambdatest/selenium-webdriver']],
65
+ ['applitools', ['@applitools/eyes-selenium']],
66
+ ['experitest', ['@experitest/seetest-client']],
67
+ ['kobiton', ['@kobiton/api']],
68
+ ['crossbrowsertesting', ['@crossbrowsertesting/selenium']],
69
+ // Cloud Services
70
+ ['aws-sdk', ['@aws-sdk/client-s3', 'aws-sdk']],
71
+ ['aws-device-farm', ['@aws-sdk/client-device-farm']],
72
+ ['firebase', ['firebase']],
73
+ ['firebase-test-lab', ['@google-cloud/testing']],
74
+ ['azure', ['@azure/storage-blob', '@azure/cosmos']],
75
+ ['azure-devtest-labs', ['@azure/arm-devtestlabs']],
76
+ ['gcp', ['@google-cloud/storage']],
77
+ // Databases & ORMs
78
+ ['mongoose', ['mongoose']],
79
+ ['sequelize', ['sequelize']],
80
+ ['typeorm', ['typeorm']],
81
+ ['prisma', ['@prisma/client']],
82
+ ['knex', ['knex']],
83
+ ['pg', ['pg']],
84
+ ['mysql', ['mysql2']],
85
+ ['sqlite', ['sqlite3']],
86
+ ['redis', ['redis']],
87
+ ['mongodb', ['mongodb']],
88
+ // Utilities
89
+ ['lodash', ['lodash']],
90
+ ['loadash', ['lodash']],
91
+ ['underscore', ['underscore']],
92
+ ['ramda', ['ramda']],
93
+ ['rxjs', ['rxjs']],
94
+ ['axios', ['axios']],
95
+ ['axois', ['axios']],
96
+ ['fetch', ['node-fetch']],
97
+ ['node-fetch', ['node-fetch']],
98
+ ['request', ['axios', 'node-fetch']],
99
+ ['superagent', ['superagent']],
100
+ // Date/Time
101
+ ['moment', ['moment']],
102
+ ['momentjs', ['moment']],
103
+ ['dayjs', ['dayjs']],
104
+ ['date-fns', ['date-fns']],
105
+ ['luxon', ['luxon']],
106
+ // Linting & Formatting
107
+ ['eslint', ['eslint']],
108
+ ['prettier', ['prettier']],
109
+ ['tslint', ['@typescript-eslint/eslint-plugin']],
110
+ ['typescript-eslint', ['@typescript-eslint/eslint-plugin', '@typescript-eslint/parser']],
111
+ // Type Definitions
112
+ ['types-node', ['@types/node']],
113
+ ['@types-node', ['@types/node']],
114
+ ['types-react', ['@types/react']],
115
+ ['types-express', ['@types/express']],
116
+ // Backend Frameworks
117
+ ['express', ['express']],
118
+ ['expressjs', ['express']],
119
+ ['fastify', ['fastify']],
120
+ ['koa', ['koa']],
121
+ ['nestjs', ['@nestjs/core']],
122
+ ['nest', ['@nestjs/core']],
123
+ ['hapi', ['@hapi/hapi']],
124
+ // State Management
125
+ ['redux', ['redux']],
126
+ ['mobx', ['mobx']],
127
+ ['vuex', ['vuex']],
128
+ ['pinia', ['pinia']],
129
+ ['zustand', ['zustand']],
130
+ ['recoil', ['recoil']],
131
+ // Styling
132
+ ['styled-components', ['styled-components']],
133
+ ['styled-component', ['styled-components']],
134
+ ['emotion', ['@emotion/react']],
135
+ ['sass', ['sass']],
136
+ ['node-sass', ['sass']],
137
+ ['less', ['less']],
138
+ ['stylus', ['stylus']],
139
+ // Admin/CMS
140
+ ['forestadmin', ['forest-express', 'forest-express-sequelize']],
141
+ ['strapi', ['@strapi/strapi']],
142
+ ['keystone', ['@keystone-6/core']],
143
+ ['ghost', ['ghost']],
144
+ // Documentation
145
+ ['storybook', ['@storybook/react', '@storybook/vue3']],
146
+ ['docusaurus', ['@docusaurus/core']],
147
+ ['gitbook', ['@gitbook/cli']],
148
+ ['typedoc', ['typedoc']],
149
+ // Desktop Apps
150
+ ['electron', ['electron']],
151
+ ['tauri', ['@tauri-apps/api']],
152
+ ['nwjs', ['nw']],
153
+ // Mobile Development
154
+ ['react-native', ['react-native']],
155
+ ['expo', ['expo']],
156
+ ['cordova', ['cordova']],
157
+ ['phonegap', ['phonegap']],
158
+ // Common Misspellings
159
+ ['jquery', ['jquery']],
160
+ ['boostrap', ['bootstrap']],
161
+ ['bootstrap', ['bootstrap']],
162
+ ['fontawesome', ['@fortawesome/fontawesome-free']],
163
+ ['font-awesome', ['@fortawesome/fontawesome-free']],
164
+ // Internationalization
165
+ ['react-i18n', ['react-i18next']],
166
+ ['i18n', ['i18next']],
167
+ ['i18next', ['i18next']],
168
+ ['vue-i18n', ['vue-i18n']],
169
+ ['react-intl', ['react-intl']],
170
+ ['intl', ['intl']],
171
+ // Data Visualization & Charts
172
+ ['chart', ['chart.js']],
173
+ ['chartjs', ['chart.js']],
174
+ ['chart.js', ['chart.js']],
175
+ ['d3', ['d3']],
176
+ ['d3js', ['d3']],
177
+ ['plotly', ['plotly.js']],
178
+ ['echarts', ['echarts']],
179
+ ['highcharts', ['highcharts']],
180
+ ['recharts', ['recharts']],
181
+ ['victory', ['victory']],
182
+ ['nivo', ['@nivo/core']],
183
+ ['observable', ['@observablehq/plot']],
184
+ // Real-time Communication & WebRTC
185
+ ['socket.io', ['socket.io']],
186
+ ['socketio', ['socket.io']],
187
+ ['websocket', ['ws']],
188
+ ['ws', ['ws']],
189
+ ['webrtc', ['simple-peer']],
190
+ ['peer', ['peerjs']],
191
+ ['peerjs', ['peerjs']],
192
+ ['signalr', ['@microsoft/signalr']],
193
+ // Blockchain & Web3
194
+ ['web3', ['web3']],
195
+ ['web3js', ['web3']],
196
+ ['ethers', ['ethers']],
197
+ ['ethersjs', ['ethers']],
198
+ ['ethereum', ['web3', 'ethers']],
199
+ ['metamask', ['@metamask/sdk']],
200
+ ['wagmi', ['wagmi']],
201
+ ['rainbow-kit', ['@rainbow-me/rainbowkit']],
202
+ ['wallet-connect', ['@walletconnect/client']],
203
+ // Machine Learning & AI
204
+ ['tensorflow', ['@tensorflow/tfjs']],
205
+ ['tensorflowjs', ['@tensorflow/tfjs']],
206
+ ['tfjs', ['@tensorflow/tfjs']],
207
+ ['brain', ['brain.js']],
208
+ ['brainjs', ['brain.js']],
209
+ ['synaptic', ['synaptic']],
210
+ ['ml-matrix', ['ml-matrix']],
211
+ ['opencv', ['opencv4nodejs']],
212
+ // Image Processing
213
+ ['sharp', ['sharp']],
214
+ ['jimp', ['jimp']],
215
+ ['canvas', ['canvas']],
216
+ ['fabric', ['fabric']],
217
+ ['fabricjs', ['fabric']],
218
+ ['konva', ['konva']],
219
+ ['konvajs', ['konva']],
220
+ ['p5', ['p5']],
221
+ ['p5js', ['p5']],
222
+ ['three', ['three']],
223
+ ['threejs', ['three']],
224
+ // Audio/Video Processing
225
+ ['howler', ['howler']],
226
+ ['howlerjs', ['howler']],
227
+ ['tone', ['tone']],
228
+ ['tonejs', ['tone']],
229
+ ['video', ['video.js']],
230
+ ['videojs', ['video.js']],
231
+ ['hls', ['hls.js']],
232
+ ['hlsjs', ['hls.js']],
233
+ ['dash', ['dashjs']],
234
+ ['dashjs', ['dashjs']],
235
+ // Game Development
236
+ ['phaser', ['phaser']],
237
+ ['phaserjs', ['phaser']],
238
+ ['pixijs', ['pixi.js']],
239
+ ['pixi', ['pixi.js']],
240
+ ['babylonjs', ['babylonjs']],
241
+ ['babylon', ['babylonjs']],
242
+ ['aframe', ['aframe']],
243
+ // IoT & Hardware
244
+ ['johnny-five', ['johnny-five']],
245
+ ['arduino', ['johnny-five']],
246
+ ['raspberry-pi', ['raspi']],
247
+ ['raspi', ['raspi']],
248
+ ['serialport', ['serialport']],
249
+ ['noble', ['noble']],
250
+ ['bluetooth', ['noble']],
251
+ // Progressive Web Apps
252
+ ['workbox', ['workbox-webpack-plugin']],
253
+ ['sw-precache', ['workbox-webpack-plugin']],
254
+ ['service-worker', ['workbox-webpack-plugin']],
255
+ ['pwa', ['workbox-webpack-plugin']],
256
+ // Map & Geolocation
257
+ ['leaflet', ['leaflet']],
258
+ ['mapbox', ['mapbox-gl']],
259
+ ['google-maps', ['@googlemaps/js-api-loader']],
260
+ ['googlemaps', ['@googlemaps/js-api-loader']],
261
+ ['openlayers', ['ol']],
262
+ ['ol', ['ol']],
263
+ // Animation
264
+ ['gsap', ['gsap']],
265
+ ['anime', ['animejs']],
266
+ ['animejs', ['animejs']],
267
+ ['lottie', ['lottie-web']],
268
+ ['lottie-web', ['lottie-web']],
269
+ ['framer-motion', ['framer-motion']],
270
+ ['react-spring', ['react-spring']],
271
+ // Form & Validation
272
+ ['formik', ['formik']],
273
+ ['react-hook-form', ['react-hook-form']],
274
+ ['yup', ['yup']],
275
+ ['joi', ['joi']],
276
+ ['ajv', ['ajv']],
277
+ ['zod', ['zod']],
278
+ ['superstruct', ['superstruct']],
279
+ // Editor & Rich Text
280
+ ['quill', ['quill']],
281
+ ['quilljs', ['quill']],
282
+ ['tinymce', ['tinymce']],
283
+ ['ckeditor', ['@ckeditor/ckeditor5-build-classic']],
284
+ ['slate', ['slate']],
285
+ ['slatejs', ['slate']],
286
+ ['draft', ['draft-js']],
287
+ ['draftjs', ['draft-js']],
288
+ ['monaco', ['monaco-editor']],
289
+ ['monaco-editor', ['monaco-editor']],
290
+ // HTTP & API
291
+ ['apollo', ['@apollo/client']],
292
+ ['apollo-client', ['@apollo/client']],
293
+ ['graphql', ['graphql']],
294
+ ['relay', ['react-relay']],
295
+ ['urql', ['urql']],
296
+ ['swr', ['swr']],
297
+ ['react-query', ['@tanstack/react-query']],
298
+ ['tanstack-query', ['@tanstack/react-query']],
299
+ // More Common Typos
300
+ ['reac', ['react']],
301
+ ['reactjs', ['react']],
302
+ ['veu', ['vue']],
303
+ ['vuejs', ['vue']],
304
+ ['angualr', ['@angular/core']],
305
+ ['svelt', ['svelte']],
306
+ ['sveltte', ['svelte']],
307
+ ['typescirpt', ['typescript']],
308
+ ['typescript', ['typescript']],
309
+ ['javasript', ['node']],
310
+ ['javascript', ['node']],
311
+ ]);
312
+ /**
313
+ * Handle package not found errors (404)
314
+ */
315
+ static handlePackageNotFound(packageName, context) {
316
+ const suggestions = this.packageSuggestions.get(packageName);
317
+ if (suggestions && suggestions.length > 0) {
318
+ console.log(chalk.yellow(`⚠️ 包 "${packageName}" 不存在`));
319
+ console.log(chalk.cyan(`💡 可能的正确包名:`));
320
+ suggestions.forEach((suggestion) => {
321
+ console.log(chalk.cyan(` • ${suggestion}`));
322
+ });
323
+ }
324
+ else {
325
+ console.log(chalk.yellow(`⚠️ 包 "${packageName}" 在 npm registry 中不存在`));
326
+ console.log(chalk.cyan(`💡 请检查包名是否正确,或者该包可能已被移除`));
327
+ }
328
+ // Track for summary
329
+ ErrorTracker.trackSkippedPackage(packageName, new Error('Package not found (404)'));
330
+ // Log technical details for debugging
331
+ this.logger.debug('Package not found', { packageName, context });
332
+ }
333
+ /**
334
+ * Handle empty version errors
335
+ */
336
+ static handleEmptyVersion(packageName, context) {
337
+ console.log(chalk.yellow(`⚠️ 包 "${packageName}" 的版本信息为空`));
338
+ console.log(chalk.cyan(`💡 这可能是由于:`));
339
+ console.log(chalk.cyan(` • 包的 package.json 配置问题`));
340
+ console.log(chalk.cyan(` • catalog 配置中的版本格式错误`));
341
+ console.log(chalk.cyan(` • npm registry 数据同步问题`));
342
+ // Track for summary
343
+ ErrorTracker.trackSkippedPackage(packageName, new Error('Version string cannot be empty'));
344
+ this.logger.debug('Empty version string', { packageName, context });
345
+ }
346
+ /**
347
+ * Handle network/timeout errors
348
+ */
349
+ static handleNetworkError(packageName, error, context) {
350
+ console.log(chalk.yellow(`⚠️ 检查包 "${packageName}" 时遇到网络问题`));
351
+ console.log(chalk.cyan(`💡 请稍后重试,或检查网络连接`));
352
+ // Track for summary
353
+ ErrorTracker.trackSkippedPackage(packageName, error);
354
+ this.logger.debug('Network error', { packageName, error: error.message, context });
355
+ }
356
+ /**
357
+ * Handle security check failures
358
+ */
359
+ static handleSecurityCheckFailure(packageName, error, context) {
360
+ // Track for statistics
361
+ ErrorTracker.trackSecurityFailure();
362
+ // Only show user-friendly message, don't expose technical details
363
+ this.logger.debug(`Security check failed for ${packageName}`, {
364
+ error: error.message,
365
+ context,
366
+ });
367
+ // Don't spam the user with security check failures unless it's critical
368
+ if (context?.operation === 'update' || context?.operation === 'security-audit') {
369
+ console.log(chalk.yellow(`⚠️ 无法检查 "${packageName}" 的安全状态`));
370
+ }
371
+ }
372
+ /**
373
+ * Handle retry attempts silently
374
+ */
375
+ static handleRetryAttempt(packageName, attempt, maxRetries, error) {
376
+ // Log for debugging but don't spam users
377
+ this.logger.debug(`Retry attempt ${attempt}/${maxRetries} for ${packageName}`, {
378
+ error: error.message,
379
+ });
380
+ // Only show to user on final failure
381
+ if (attempt === maxRetries) {
382
+ this.handleFinalFailure(packageName, error);
383
+ }
384
+ }
385
+ /**
386
+ * Handle final failure after retries
387
+ */
388
+ static handleFinalFailure(packageName, error) {
389
+ if (error.message.includes('404') || error.message.includes('Not found')) {
390
+ this.handlePackageNotFound(packageName);
391
+ }
392
+ else if (error.message.includes('timeout') || error.message.includes('ETIMEDOUT')) {
393
+ this.handleNetworkError(packageName, error);
394
+ }
395
+ else if (error.message.includes('Version string cannot be empty')) {
396
+ this.handleEmptyVersion(packageName);
397
+ }
398
+ else {
399
+ // Generic error handling
400
+ console.log(chalk.yellow(`⚠️ 跳过包 "${packageName}" (检查失败)`));
401
+ this.logger.debug('Package check failed', { packageName, error: error.message });
402
+ }
403
+ }
404
+ /**
405
+ * Handle general package query failures
406
+ */
407
+ static handlePackageQueryFailure(packageName, error, context) {
408
+ // Categorize the error and provide appropriate user message
409
+ if (error.message.includes('404') || error.message.includes('Not found')) {
410
+ this.handlePackageNotFound(packageName, context);
411
+ }
412
+ else if (error.message.includes('Version string cannot be empty')) {
413
+ this.handleEmptyVersion(packageName, context);
414
+ }
415
+ else if (error.message.includes('timeout') || error.message.includes('ETIMEDOUT')) {
416
+ this.handleNetworkError(packageName, error, context);
417
+ }
418
+ else {
419
+ // For other errors, just skip silently and log for debugging
420
+ ErrorTracker.trackSkippedPackage(packageName, error);
421
+ this.logger.debug(`Package query failed for ${packageName}`, {
422
+ error: error.message,
423
+ context,
424
+ });
425
+ }
426
+ }
427
+ /**
428
+ * Show summary of skipped packages
429
+ */
430
+ static showSkippedPackagesSummary() {
431
+ const totalSkipped = ErrorTracker.getTotalSkipped();
432
+ if (totalSkipped === 0)
433
+ return;
434
+ console.log();
435
+ console.log(chalk.cyan(`📋 跳过了 ${totalSkipped} 个包的检查:`));
436
+ const grouped = ErrorTracker.getSkippedPackages();
437
+ if (grouped.notFound.length > 0) {
438
+ console.log(chalk.yellow(` 不存在的包 (${grouped.notFound.length}): ${grouped.notFound.join(', ')}`));
439
+ }
440
+ if (grouped.emptyVersion.length > 0) {
441
+ console.log(chalk.yellow(` 版本信息为空 (${grouped.emptyVersion.length}): ${grouped.emptyVersion.join(', ')}`));
442
+ }
443
+ if (grouped.network.length > 0) {
444
+ console.log(chalk.yellow(` 网络问题 (${grouped.network.length}): ${grouped.network.join(', ')}`));
445
+ }
446
+ if (grouped.other.length > 0) {
447
+ console.log(chalk.yellow(` 其他问题 (${grouped.other.length}): ${grouped.other.join(', ')}`));
448
+ }
449
+ const stats = ErrorTracker.getErrorStats();
450
+ if (stats.security > 0) {
451
+ console.log(chalk.gray(` 安全检查失败: ${stats.security} 次`));
452
+ }
453
+ }
454
+ /**
455
+ * Get statistics for reporting
456
+ */
457
+ static getStatistics() {
458
+ return {
459
+ totalSkipped: ErrorTracker.getTotalSkipped(),
460
+ errorBreakdown: ErrorTracker.getErrorStats(),
461
+ skippedPackages: ErrorTracker.getSkippedPackages(),
462
+ };
463
+ }
464
+ /**
465
+ * Reset error tracking (useful for testing)
466
+ */
467
+ static resetTracking() {
468
+ ErrorTracker.reset();
469
+ }
470
+ /**
471
+ * Add a new package suggestion
472
+ */
473
+ static addPackageSuggestion(originalName, suggestions) {
474
+ this.packageSuggestions.set(originalName, suggestions);
475
+ }
476
+ /**
477
+ * Get suggestions for a package name
478
+ */
479
+ static getPackageSuggestions(packageName) {
480
+ return this.packageSuggestions.get(packageName) || [];
481
+ }
482
+ }
483
+ //# sourceMappingURL=UserFriendlyErrorHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserFriendlyErrorHandler.js","sourceRoot":"","sources":["../../../src/common/error-handling/UserFriendlyErrorHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Error Handling Module
3
+ *
4
+ * Provides centralized error handling for user-friendly error messages
5
+ * and error tracking/statistics.
6
+ */
7
+ export { UserFriendlyErrorHandler } from './UserFriendlyErrorHandler.js';
8
+ export { ErrorTracker } from './ErrorTracker.js';
9
+ export type { ErrorContext, PackageSuggestion } from './UserFriendlyErrorHandler.js';
10
+ export type { SkippedPackage } from './ErrorTracker.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/error-handling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACrF,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Error Handling Module
3
+ *
4
+ * Provides centralized error handling for user-friendly error messages
5
+ * and error tracking/statistics.
6
+ */
7
+ export { UserFriendlyErrorHandler } from './UserFriendlyErrorHandler.js';
8
+ export { ErrorTracker } from './ErrorTracker.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/error-handling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -48,7 +48,9 @@ export interface SecurityReport {
48
48
  export declare class NpmRegistryService {
49
49
  private readonly registryUrl;
50
50
  private readonly cache;
51
- private readonly cacheTimeout;
51
+ private readonly versionCacheTimeout;
52
+ private readonly packageInfoCacheTimeout;
53
+ private readonly securityCacheTimeout;
52
54
  private readonly concurrency;
53
55
  private readonly timeout;
54
56
  private readonly retries;
@@ -58,8 +60,19 @@ export declare class NpmRegistryService {
58
60
  * Execute a function with retry logic
59
61
  */
60
62
  private executeWithRetry;
63
+ /**
64
+ * Get lightweight package version information (optimized for performance)
65
+ */
66
+ getPackageVersions(packageName: string): Promise<{
67
+ name: string;
68
+ versions: string[];
69
+ latestVersion: string;
70
+ tags: Record<string, string>;
71
+ time?: Record<string, string>;
72
+ }>;
61
73
  /**
62
74
  * Get package information including all versions
75
+ * @deprecated Use getPackageVersions() for better performance
63
76
  */
64
77
  getPackageInfo(packageName: string): Promise<PackageInfo>;
65
78
  /**
@@ -91,13 +104,31 @@ export declare class NpmRegistryService {
91
104
  */
92
105
  getDownloadStats(packageName: string, period?: 'last-day' | 'last-week' | 'last-month'): Promise<number>;
93
106
  /**
94
- * Clear cache
107
+ * Clear all cache
95
108
  */
96
109
  clearCache(): void;
110
+ /**
111
+ * Clear cache by type
112
+ */
113
+ clearCacheByType(type?: 'versions' | 'package-info' | 'security' | 'all'): void;
114
+ /**
115
+ * Get cache statistics
116
+ */
117
+ getCacheStats(): {
118
+ total: number;
119
+ versions: number;
120
+ packageInfo: number;
121
+ security: number;
122
+ expired: number;
123
+ };
97
124
  /**
98
125
  * Get item from cache if not expired
99
126
  */
100
127
  private getFromCache;
128
+ /**
129
+ * Get appropriate cache timeout based on key type
130
+ */
131
+ private getCacheTimeout;
101
132
  /**
102
133
  * Set item in cache
103
134
  */
@@ -1 +1 @@
1
- {"version":3,"file":"NpmRegistryService.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/external-services/NpmRegistryService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NpmRegistryService.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/external-services/NpmRegistryService.ts"],"names":[],"mappings":"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"}