// Shared legacy-Feather-name -> ant-design-vue icon map. // // Originally lived only inside TooltipBtn.vue (row-action icons). Extracted // here so the sidebar (navMenuItems.ts icon: values) can resolve the SAME // names through the SAME map instead of duplicating it — one source of // truth for "legacy Feather icon name" -> "ant component" across the app. import { AppstoreOutlined, BarChartOutlined, BellOutlined, BlockOutlined, BookOutlined, CameraOutlined, CheckOutlined, CloseOutlined, CreditCardOutlined, DeleteOutlined, DollarOutlined, EditOutlined, EyeOutlined, FileOutlined, FileTextOutlined, GiftOutlined, HomeOutlined, InboxOutlined, MailOutlined, MessageOutlined, PercentageOutlined, PlusOutlined, SettingOutlined, ShoppingOutlined, StopOutlined, TeamOutlined, UnorderedListOutlined, UserAddOutlined, UserOutlined, } from '@ant-design/icons-vue'; /** legacy Feather name -> ant component. */ export const ICONS: Record = { // row-action icons (TooltipBtn.vue's original set) ListIcon: UnorderedListOutlined, FileIcon: FileOutlined, TrashIcon: DeleteOutlined, EditIcon: EditOutlined, CheckIcon: CheckOutlined, CameraIcon: CameraOutlined, EyeIcon: EyeOutlined, PlusIcon: PlusOutlined, XIcon: CloseOutlined, FileTextIcon: FileTextOutlined, // sidebar icons (navMenuItems.ts), added when the sidebar started // rendering them for the first time HomeIcon: HomeOutlined, PackageIcon: InboxOutlined, UserIcon: UserOutlined, UsersIcon: TeamOutlined, UserPlusIcon: UserAddOutlined, ShoppingBagIcon: ShoppingOutlined, BoxIcon: InboxOutlined, GridIcon: AppstoreOutlined, LayersIcon: BlockOutlined, CreditCardIcon: CreditCardOutlined, DollarSignIcon: DollarOutlined, PercentIcon: PercentageOutlined, GiftIcon: GiftOutlined, SlashIcon: StopOutlined, BookIcon: BookOutlined, MessageSquareIcon: MessageOutlined, MailIcon: MailOutlined, BellIcon: BellOutlined, BarChartIcon: BarChartOutlined, SettingsIcon: SettingOutlined, InboxIcon: InboxOutlined, }; export function resolveIcon(name: string | undefined): unknown | undefined { if (!name) return undefined; return ICONS[name]; }