diff --git a/bun.lock b/bun.lock
index 2b79ebf..6f783e4 100644
--- a/bun.lock
+++ b/bun.lock
@@ -24,6 +24,7 @@
},
},
"overrides": {
+ "js-yaml": "3.15.2",
"lighthouse": "13.4.1",
"nanoid": "3.3.18",
"tmp": "0.2.7",
@@ -429,7 +430,7 @@
"js-library-detector": ["js-library-detector@6.7.0", "", {}, "sha512-c80Qupofp43y4cJ7+8TTDN/AsDwLi5oOm/plBrWI+iQt485vKXCco+yVmOwEgdo9VOdsYTuV0UlTeetVPTriXA=="],
- "js-yaml": ["js-yaml@3.15.1", "", { "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag=="],
+ "js-yaml": ["js-yaml@3.15.2", "", { "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-6EuL879VkRA+1Cz578mKMiKvjPNEuk6+r1JaFzoSWejZmtf7xWbIyw1e3KkxlkzTIt9Taw6JBhEppG7utc1P+w=="],
"leaflet": ["leaflet@1.9.4", "", {}, "sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA=="],
diff --git a/package.json b/package.json
index 7d18d51..b913165 100644
--- a/package.json
+++ b/package.json
@@ -22,6 +22,7 @@
"react-dom": "^19.2.8"
},
"overrides": {
+ "js-yaml": "3.15.2",
"lighthouse": "13.4.1",
"nanoid": "3.3.18",
"tmp": "0.2.7"
diff --git a/src/components/ui/icons.tsx b/src/components/ui/icons.tsx
index a7cc6b7..852a1e6 100644
--- a/src/components/ui/icons.tsx
+++ b/src/components/ui/icons.tsx
@@ -53,3 +53,26 @@ export function MailIcon() {
)
}
+
+export function LinkedInIcon() {
+ return (
+
+ )
+}
+
+export function WebsiteIcon() {
+ return (
+
)
-
- if (!person.href) return img
-
- return (
-
- {img}
-
- )
}
function PersonCard({ person, wide }: { person: Person; wide?: boolean }) {
@@ -39,6 +27,21 @@ function PersonCard({ person, wide }: { person: Person; wide?: boolean }) {
{person.name}
{person.role}
+ {person.href && ( + + {new URL(person.href).hostname === 'www.linkedin.com' ? ( +