@@ -3,28 +3,16 @@ export interface NpmWebsiteVersionDownload {
33 downloads : number
44}
55
6- export interface NpmWebsiteVersionsData {
7- weeklyDownloads ?: number
8- versions : NpmWebsiteVersionDownload [ ]
9- }
10-
116interface NpmApiVersionDownloadsResponse {
127 downloads : Record < string , number >
138}
149
15- interface NpmApiWeeklyDownloadsResponse {
16- downloads : number
17- }
18-
1910export async function fetchNpmVersionDownloadsFromApi (
2011 packageName : string ,
21- ) : Promise < NpmWebsiteVersionsData > {
12+ ) : Promise < NpmWebsiteVersionDownload [ ] > {
2213 const encodedName = encodePackageName ( packageName )
2314
24- const [ versionsResponse , weeklyDownloadsResponse ] = await Promise . all ( [
25- fetch ( `https://api.npmjs.org/versions/${ encodedName } /last-week` ) ,
26- fetch ( `https://api.npmjs.org/downloads/point/last-week/${ encodedName } ` ) ,
27- ] )
15+ const versionsResponse = await fetch ( `https://api.npmjs.org/versions/${ encodedName } /last-week` )
2816
2917 if ( ! versionsResponse . ok ) {
3018 if ( versionsResponse . status === 404 ) {
@@ -41,15 +29,9 @@ export async function fetchNpmVersionDownloadsFromApi(
4129 }
4230
4331 const versionsData = ( await versionsResponse . json ( ) ) as NpmApiVersionDownloadsResponse
44- const weeklyDownloadsData = weeklyDownloadsResponse . ok
45- ? ( ( await weeklyDownloadsResponse . json ( ) ) as NpmApiWeeklyDownloadsResponse )
46- : null
4732
48- return {
49- weeklyDownloads : weeklyDownloadsData ?. downloads ,
50- versions : Object . entries ( versionsData . downloads ) . map ( ( [ version , downloads ] ) => ( {
51- version,
52- downloads,
53- } ) ) ,
54- }
33+ return Object . entries ( versionsData . downloads ) . map ( ( [ version , downloads ] ) => ( {
34+ version,
35+ downloads,
36+ } ) )
5537}
0 commit comments