From 62cd93b7ebe82481f39d3539184b733c665977f0 Mon Sep 17 00:00:00 2001 From: himaniraghav3 Date: Fri, 28 Aug 2026 00:23:32 +0530 Subject: [PATCH] PM-4704 Fix icons for expert skills --- .../expert-skills-statistics.data.spec.ts | 39 +++++++++++++++++++ .../expert-skills-statistics.data.ts | 13 +++++-- 2 files changed, 48 insertions(+), 4 deletions(-) diff --git a/src/statistics/expert-skills-statistics.data.spec.ts b/src/statistics/expert-skills-statistics.data.spec.ts index f75e0b3..3835822 100644 --- a/src/statistics/expert-skills-statistics.data.spec.ts +++ b/src/statistics/expert-skills-statistics.data.spec.ts @@ -33,9 +33,48 @@ describe("expert-skills-statistics.data", () => { "Software Development Lifecycle (SDLC)", ).icon, ).toBe("RefreshIcon"); + expect( + getCategoryAppearance("unused-id", "DevOps and Automation").icon, + ).toBe("CogIcon"); expect( getCategoryAppearance("unused-id", "UX Design and Multimedia").icon, ).toBe("PencilAltIcon"); + expect(getCategoryAppearance("unused-id", "Project Management").icon).toBe( + "ViewBoardsIcon", + ); + }); + + it("gives each known category a unique icon", () => { + const names = [ + "Programming and Development", + "Web Development", + "Networking and Telecommunications", + "Cybersecurity", + "Software Development Lifecycle (SDLC)", + "Cloud Computing", + "Operating Systems", + "DevOps and Automation", + "Data Analysis and Big Data", + "Virtualization", + "Databases and Data Warehousing", + "Mathematics and Statistics", + "Database Management", + "Geospatial Information Systems (GIS)", + "Machine Learning and AI", + "User Experience Design and Multimedia", + "Hardware and Systems Administration", + "Mobile App Development", + "Software Testing and Quality Assurance", + "Blockchain", + "IoT (Internet of Things)", + "Project Management", + "Scripting and Automation", + ]; + const icons = names.map( + (name) => getCategoryAppearance("unused-id", name).icon, + ); + + expect(new Set(icons).size).toBe(names.length); }); it("hashes unknown categories by id so new catalog entries still render", () => { diff --git a/src/statistics/expert-skills-statistics.data.ts b/src/statistics/expert-skills-statistics.data.ts index 43c078d..03ad320 100644 --- a/src/statistics/expert-skills-statistics.data.ts +++ b/src/statistics/expert-skills-statistics.data.ts @@ -50,8 +50,9 @@ const CATEGORY_ICONS = [ "DeviceMobileIcon", "ShareIcon", "WifiIcon", - "ClipboardListIcon", + "ViewBoardsIcon", "CodeIcon", + "CogIcon", ]; export type CategoryAppearance = { @@ -76,12 +77,16 @@ const NAMED_CATEGORY_APPEARANCE: Array<[string[], CategoryAppearance]> = [ ], [["Cybersecurity"], { color: "#5B9BD5", icon: "ShieldCheckIcon" }], [ - ["Software Development Lifecycle (SDLC)", "Software Development Lifecycle"], + [ + "Software Development Lifecycle (SDLC)", + "Software Development Lifecycle", + "SDLC", + ], { color: "#1A3D3D", icon: "RefreshIcon" }, ], [["Cloud Computing"], { color: "#2C4A6E", icon: "CloudIcon" }], [["Operating Systems"], { color: "#3D7EA6", icon: "ChipIcon" }], - [["DevOps and Automation"], { color: "#2D4A3E", icon: "RefreshIcon" }], + [["DevOps and Automation"], { color: "#2D4A3E", icon: "CogIcon" }], [["Data Analysis and Big Data"], { color: "#2C5F8A", icon: "ChartBarIcon" }], [["Virtualization"], { color: "#3D7EA6", icon: "DuplicateIcon" }], [ @@ -113,7 +118,7 @@ const NAMED_CATEGORY_APPEARANCE: Array<[string[], CategoryAppearance]> = [ ], [["Blockchain"], { color: "#2C4A6E", icon: "ShareIcon" }], [["IoT (Internet of Things)"], { color: "#3D8B8F", icon: "WifiIcon" }], - [["Project Management"], { color: "#3D7EA6", icon: "ClipboardListIcon" }], + [["Project Management"], { color: "#3D7EA6", icon: "ViewBoardsIcon" }], [["Scripting and Automation"], { color: "#5B9BD5", icon: "CodeIcon" }], ];