Skip to content

Commit f16cf99

Browse files
committed
client: add BadgeItem.tsx
1 parent 4f8079d commit f16cf99

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import { Badge } from "../../types";
2+
3+
type Props = {
4+
badge: Badge;
5+
};
6+
7+
const BadgeItem = ({ badge }: Props) => {
8+
return (
9+
<div className="flex cursor-pointer items-center gap-3 border border-solid border-gh-bg-secondary bg-gh-bg-secondary px-3 py-[.45rem] transition-all duration-150">
10+
<img
11+
onError={(e) => {
12+
e.currentTarget.style.display = "none";
13+
}}
14+
className="h-4 w-4"
15+
src={`https://cdn.simpleicons.org/${encodeURI(badge.icon)}/${
16+
badge.color === "auto" ? "" : badge.color.replace("#", "")
17+
}`}
18+
alt={`${badge.icon}`}
19+
/>
20+
21+
<span className="py-[.145rem] font-dejavu text-[.70rem] font-bold uppercase leading-none tracking-wider text-white">
22+
{badge.label}
23+
</span>
24+
</div>
25+
);
26+
};
27+
28+
export default BadgeItem;

client/src/components/lines/LineItem.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { useMultistepContext } from "../../hooks/useMultistepContext";
22
import { Line } from "../../types";
33
import Hr from "../ui/Hr";
44
import { formatNumberWord } from "../ui/utils";
5+
import BadgeItem from "./BadgeItem";
56
import NewBadge from "./NewBadge";
67

78
type Props = {
@@ -18,10 +19,16 @@ const LineItem = ({ line }: Props) => {
1819
</div>
1920

2021
<div className="flex flex-col gap-2 px-3 py-2">
21-
{line.badges.length < 1 && (
22+
{line.badges.length < 1 ? (
2223
<div className="text-center text-sm text-gh-text-secondary">
2324
🥱 No badges selected.
2425
</div>
26+
) : (
27+
<div className="flex flex-wrap gap-2">
28+
{line.badges.map((badge, i) => (
29+
<BadgeItem key={i} badge={badge} />
30+
))}
31+
</div>
2532
)}
2633

2734
<Hr />

client/tailwind.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export default {
3232
},
3333
fontFamily: {
3434
segoe: ["Segoe UI", "Tahoma", "Geneva", "Verdana", "sans-serif"],
35+
dejavu: ["DejaVu Sans", "sans-serif"],
3536
},
3637
},
3738
},

0 commit comments

Comments
 (0)