File tree Expand file tree Collapse file tree 3 files changed +31
-7
lines changed Expand file tree Collapse file tree 3 files changed +31
-7
lines changed Original file line number Diff line number Diff line change @@ -208,6 +208,8 @@ export interface Package {
208
208
official ?: boolean ;
209
209
210
210
typescript : boolean ;
211
+
212
+ svCmd ?: string ;
211
213
}
212
214
213
215
/**
Original file line number Diff line number Diff line change 1
- import { PACKAGES_META } from '. /packages-meta' ;
1
+ import { PACKAGES_META } from '$lib /packages-meta' ;
2
2
import { registry , type Package } from '$lib/server/content' ;
3
3
4
4
export const prerender = false ;
5
5
6
+ const arrToPackages = ( arr : string [ ] ) => {
7
+ return arr
8
+ . map ( ( name ) => {
9
+ const pkg = registry . find ( ( pkg ) => pkg . name === name ) ?? null ;
10
+ if ( pkg )
11
+ pkg . svCmd = PACKAGES_META . SV_ADD_CMD [ pkg . name as keyof typeof PACKAGES_META . SV_ADD_CMD ] ;
12
+
13
+ return pkg ;
14
+ } )
15
+ . filter ( ( v ) => Boolean ( v ) ) as Package [ ] ;
16
+ } ;
17
+
6
18
// Netflix style page. Send pre-done cards with categories
7
19
const homepage_data : { title : string ; packages : Package [ ] } [ ] = [
8
20
{
9
21
title : 'sv add' ,
10
- packages : PACKAGES_META . SV_ADD . packages
11
- . map ( ( name ) => registry . find ( ( pkg ) => pkg . name === name ) ?? null )
12
- . filter ( ( v ) => Boolean ( v ) ) as Package [ ]
22
+ packages : arrToPackages ( PACKAGES_META . SV_ADD . packages )
13
23
}
14
24
] ;
15
25
16
26
for ( const { packages, title } of PACKAGES_META . FEATURED ) {
17
27
homepage_data . push ( {
18
28
title,
19
- packages : packages
20
- . map ( ( name ) => registry . find ( ( pkg ) => pkg . name === name ) ?? null )
21
- . filter ( ( v ) => Boolean ( v ) ) as Package [ ]
29
+ packages : arrToPackages ( packages )
22
30
} ) ;
23
31
}
24
32
Original file line number Diff line number Diff line change 30
30
31
31
<p class ="description" >{pkg .description }</p >
32
32
33
+ {#if pkg .svCmd }
34
+ <div class =" sv-cmd" >
35
+ <span data-icon =" svelte" ></span >
36
+ <span >{pkg .svCmd }</span >
37
+ </div >
38
+ {/if }
33
39
<p class =" stats" >
34
40
{#if pkg .downloads }
35
41
<span title =" {pkg .downloads } downloads" >
199
205
text-overflow : ellipsis ;
200
206
max-height : 2 lh;
201
207
}
208
+
209
+ .sv-cmd {
210
+ font : var (--sk-font-ui-small );
211
+ color : var (--sk-fg-3 );
212
+ background : var (--sk-bg-3 );
213
+ padding : 0.5rem ;
214
+ display : inline-block ;
215
+ }
202
216
}
203
217
</style >
You can’t perform that action at this time.
0 commit comments