import alarm from '@/assets/icons/alarm.svg?raw' import alertTriangle from '@/assets/icons/alert-triangle.svg?raw' import bell from '@/assets/icons/bell.svg?raw' import book2 from '@/assets/icons/book-2.svg?raw' import books from '@/assets/icons/books.svg?raw' import building from '@/assets/icons/building.svg?raw' import bulb from '@/assets/icons/bulb.svg?raw' import calendar from '@/assets/icons/calendar.svg?raw' import calendarEvent from '@/assets/icons/calendar-event.svg?raw' import chartBar from '@/assets/icons/chart-bar.svg?raw' import chartLine from '@/assets/icons/chart-line.svg?raw' import circleCheck from '@/assets/icons/circle-check.svg?raw' import circleX from '@/assets/icons/circle-x.svg?raw' import clipboardList from '@/assets/icons/clipboard-list.svg?raw' import clock from '@/assets/icons/clock.svg?raw' import coin from '@/assets/icons/coin.svg?raw' import handStop from '@/assets/icons/hand-stop.svg?raw' import home from '@/assets/icons/home.svg?raw' import inbox from '@/assets/icons/inbox.svg?raw' import infoCircle from '@/assets/icons/info-circle.svg?raw' import lock from '@/assets/icons/lock.svg?raw' import logout from '@/assets/icons/logout.svg?raw' import mapPin from '@/assets/icons/map-pin.svg?raw' import messageCircle from '@/assets/icons/message-circle.svg?raw' import moodNeutral from '@/assets/icons/mood-neutral.svg?raw' import robot from '@/assets/icons/robot.svg?raw' import search from '@/assets/icons/search.svg?raw' import shield from '@/assets/icons/shield.svg?raw' import sparkles from '@/assets/icons/sparkles.svg?raw' import star from '@/assets/icons/star.svg?raw' import stopwatch from '@/assets/icons/stopwatch.svg?raw' import thumbDown from '@/assets/icons/thumb-down.svg?raw' import thumbUp from '@/assets/icons/thumb-up.svg?raw' import trophy from '@/assets/icons/trophy.svg?raw' import user from '@/assets/icons/user.svg?raw' import users from '@/assets/icons/users.svg?raw' import world from '@/assets/icons/world.svg?raw' export const iconSvgs = { alarm, 'alert-triangle': alertTriangle, bell, 'book-2': book2, books, building, bulb, calendar, 'calendar-event': calendarEvent, 'chart-bar': chartBar, 'chart-line': chartLine, 'circle-check': circleCheck, 'circle-x': circleX, 'clipboard-list': clipboardList, clock, coin, 'hand-stop': handStop, home, inbox, 'info-circle': infoCircle, lock, logout, 'map-pin': mapPin, 'message-circle': messageCircle, 'mood-neutral': moodNeutral, robot, search, shield, sparkles, star, stopwatch, 'thumb-down': thumbDown, 'thumb-up': thumbUp, trophy, user, users, world, } as const export type IconName = keyof typeof iconSvgs export const emojiToIcon: Record = { '⏰': 'alarm', 'âš ī¸': 'alert-triangle', '🔔': 'bell', '📖': 'book-2', '📚': 'books', '🏛': 'building', '💡': 'bulb', '📅': 'calendar', 'đŸ—“ī¸': 'calendar-event', '📊': 'chart-bar', '📈': 'chart-line', '✅': 'circle-check', '❌': 'circle-x', '📋': 'clipboard-list', '⏱': 'stopwatch', 'âąī¸': 'stopwatch', '🕒': 'clock', '💰': 'coin', '👋': 'hand-stop', '🏠': 'home', '📭': 'inbox', â„šī¸: 'info-circle', '🔒': 'lock', 'đŸšĒ': 'logout', '📍': 'map-pin', 'đŸ’Ŧ': 'message-circle', '😐': 'mood-neutral', '🤖': 'robot', '🔍': 'search', 'đŸ›Ąī¸': 'shield', '✨': 'sparkles', '⭐': 'star', '👍': 'thumb-up', '👎': 'thumb-down', '🏆': 'trophy', '👤': 'user', 'đŸ‘Ĩ': 'users', '🌍': 'world', '🌐': 'world', } as const export function normalizeIconName(input?: string | null): IconName | undefined { if (!input) return undefined if (input in iconSvgs) return input as IconName return emojiToIcon[input] }