SPB Git

spb/uqo-chat

Public
1.4 KB · 29 lines tsx
1import { cn } from '@/lib/cn';23const USE_OFFICIAL = import.meta.env.VITE_USE_OFFICIAL_LOGO === 'true';45/** Fallback logotype (official UQO logo requires authorisation from Service des communications). */6export function Logo({ className, inverted = false, withText = true }: { className?: string; inverted?: boolean; withText?: boolean }) {7  if (USE_OFFICIAL) {8    return <img src={inverted ? '/uqo-logo-white.svg' : '/uqo-logo.svg'} alt="UQO" className={cn('h-8', className)} />;9  }10  const fg = inverted ? '#FFFFFF' : '#00467F';11  return (12    <span className={cn('inline-flex items-center gap-2', className)} aria-label="UQO-Chat">13      <svg width="30" height="30" viewBox="0 0 32 32" aria-hidden="true">14        <rect x="1" y="1" width="30" height="30" rx="8" fill={inverted ? 'rgba(255,255,255,.14)' : '#00467F'} />15        <path d="M8 24V13l8-6 8 6v11h-5v-6h-6v6H8z" fill={inverted ? '#FFFFFF' : '#FFFFFF'} />16        <rect x="21" y="8" width="3" height="4" rx=".6" fill="#78BE20" />17      </svg>18      {withText && (19        <span className="leading-none">20          <span className="block font-bold tracking-tight" style={{ color: fg, fontSize: 17 }}>UQO-Chat</span>21          <span className="block text-[10.5px] font-medium tracking-wide" style={{ color: inverted ? 'rgba(255,255,255,.8)' : '#5B6B7B' }}>22            Tuteur IA — IMM1003 · IMM103323          </span>24        </span>25      )}26    </span>27  );28}29
Files · cd08d441f7c277e8fedd6f3d3be82f02b44553ba
Menu

Theme