@@ -27,16 +27,24 @@ const FullCard = ({ card }) => {
27
27
< p className = "card-text" > { card . description } </ p >
28
28
29
29
< div className = "d-grid gap-2" >
30
- { card . items . map ( ( child ) => (
31
- < Link
32
- key = { child . path }
33
- to = { child . path }
34
- className = "btn btn-link text-start p-0"
35
- >
36
- { child . navTitle || child . title }
37
- { child . interactive && < KatacodaBadge /> }
38
- </ Link >
39
- ) ) }
30
+ { card . items . slice ( 0 , 5 ) . map (
31
+ ( child , i ) =>
32
+ ( i === 4 && card . items . length > 5 && (
33
+ < Link to = { card . path } className = "btn btn-link text-start p-0" >
34
+ { `+ ${ card . items . length - 4 } more` }
35
+ </ Link >
36
+ ) ) ||
37
+ ( ( i < 5 || ( i === 4 && card . items . length <= 4 ) ) && (
38
+ < Link
39
+ key = { child . path }
40
+ to = { child . path }
41
+ className = "btn btn-link text-start p-0"
42
+ >
43
+ { child . navTitle || child . title }
44
+ { child . interactive && < KatacodaBadge /> }
45
+ </ Link >
46
+ ) ) ,
47
+ ) }
40
48
</ div >
41
49
</ div >
42
50
</ div >
@@ -54,16 +62,24 @@ const ExtraCard = ({ card }) => {
54
62
< p className = "card-text" > { card . description } </ p >
55
63
56
64
< div className = "d-grid gap-2" >
57
- { card . items . map ( ( child ) => (
58
- < Link
59
- key = { child . path }
60
- to = { child . path }
61
- className = "btn btn-link text-start p-0"
62
- >
63
- { child . navTitle || child . title }
64
- { child . interactive && < KatacodaBadge /> }
65
- </ Link >
66
- ) ) }
65
+ { card . items . slice ( 0 , 5 ) . map (
66
+ ( child , i ) =>
67
+ ( i === 4 && card . items . length > 5 && (
68
+ < Link to = { card . path } className = "btn btn-link text-start p-0" >
69
+ { `+ ${ card . items . length - 4 } more` }
70
+ </ Link >
71
+ ) ) ||
72
+ ( ( i < 5 || ( i === 4 && card . items . length <= 4 ) ) && (
73
+ < Link
74
+ key = { child . path }
75
+ to = { child . path }
76
+ className = "btn btn-link text-start p-0"
77
+ >
78
+ { child . navTitle || child . title }
79
+ { child . interactive && < KatacodaBadge /> }
80
+ </ Link >
81
+ ) ) ,
82
+ ) }
67
83
</ div >
68
84
</ div >
69
85
</ div >
0 commit comments