From a51c1ed1f3db1a7eb8db24f2deb37b01d6fee068 Mon Sep 17 00:00:00 2001 From: Yolando Date: Sat, 11 Apr 2026 01:41:02 +0700 Subject: [PATCH] feat: implement skill management form and dynamic icon rendering component --- src/features/skills/skill-form.tsx | 6 ++++-- src/features/skills/skill-icon.tsx | 6 +++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/features/skills/skill-form.tsx b/src/features/skills/skill-form.tsx index 197bd12..00c9cf1 100644 --- a/src/features/skills/skill-form.tsx +++ b/src/features/skills/skill-form.tsx @@ -104,7 +104,7 @@ export function SkillForm({ initialData, skillId }: { initialData?: any; skillId
{iconPreview} { (e.target as HTMLImageElement).style.display = 'none'; }} diff --git a/src/features/skills/skill-icon.tsx b/src/features/skills/skill-icon.tsx index 4af4e77..a4f64fe 100644 --- a/src/features/skills/skill-icon.tsx +++ b/src/features/skills/skill-icon.tsx @@ -14,9 +14,13 @@ export function SkillIcon({ iconName, name }: { iconName: string | null; name: s ); } + const iconSrc = iconName.startsWith("http") || iconName.startsWith("/") + ? iconName + : `https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/${iconName}/${iconName}-original.svg`; + return ( {name} setErrored(true)}