'use client' import dynamic from 'next/dynamic' import type { ComponentType } from 'react' interface IconProps { size?: number } /* Dynamic imports — each icon is 'use client' and tree-shaken */ const icons: Record> = { Anthropic: dynamic(() => import('@lobehub/icons/es/Anthropic').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Google: dynamic(() => import('@lobehub/icons/es/Google').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), OpenAI: dynamic(() => import('@lobehub/icons/es/OpenAI').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Meta: dynamic(() => import('@lobehub/icons/es/Meta').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), xAI: dynamic(() => import('@lobehub/icons/es/XAI').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), DeepSeek: dynamic(() => import('@lobehub/icons/es/DeepSeek').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Moonshot: dynamic(() => import('@lobehub/icons/es/Moonshot').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Alibaba: dynamic(() => import('@lobehub/icons/es/Alibaba').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), 'MiniMax AI': dynamic(() => import('@lobehub/icons/es/Minimax').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), zAI: dynamic(() => import('@lobehub/icons/es/Zhipu').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Microsoft: dynamic(() => import('@lobehub/icons/es/Microsoft').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), Amazon: dynamic(() => import('@lobehub/icons/es/Aws').then(m => ({ default: m.default.Avatar as unknown as ComponentType }))), GovTech: dynamic(() => Promise.resolve({ default: ({ size = 18 }: IconProps) => ( GovTech )})), } export function LabLogo({ creator, size = 18 }: { creator: string; size?: number }) { const Icon = icons[creator] if (!Icon) return null return }