refactor(logo-provider): moved SessionProviderLogo to a dedicated llm-logo-provider folder and updated imports

This commit is contained in:
Haileyesus
2026-02-18 13:27:25 +03:00
parent 23457365cf
commit 233a16b64e
12 changed files with 29 additions and 19 deletions

View File

@@ -1,8 +1,6 @@
import React, { useState, useEffect, useRef } from 'react';
import { ChevronRight, ChevronLeft, Check, GitBranch, User, Mail, LogIn, ExternalLink, Loader2 } from 'lucide-react';
import ClaudeLogo from './ClaudeLogo';
import CursorLogo from './CursorLogo';
import CodexLogo from './CodexLogo';
import SessionProviderLogo from './llm-logo-provider/SessionProviderLogo';
import LoginModal from './LoginModal';
import { authenticatedFetch } from '../utils/api';
import { useAuth } from '../contexts/AuthContext';
@@ -347,7 +345,7 @@ const Onboarding = ({ onComplete }) => {
<div className="flex items-center justify-between">
<div className="flex items-center gap-3">
<div className="w-10 h-10 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center">
<ClaudeLogo size={20} />
<SessionProviderLogo provider="claude" className="w-5 h-5" />
</div>
<div>
<div className="font-medium text-foreground flex items-center gap-2">
@@ -380,7 +378,7 @@ const Onboarding = ({ onComplete }) => {
<div className="flex items-center justify-between">
<div className="flex items-center gap-3">
<div className="w-10 h-10 bg-purple-100 dark:bg-purple-900/30 rounded-full flex items-center justify-center">
<CursorLogo size={20} />
<SessionProviderLogo provider="cursor" className="w-5 h-5" />
</div>
<div>
<div className="font-medium text-foreground flex items-center gap-2">
@@ -413,7 +411,7 @@ const Onboarding = ({ onComplete }) => {
<div className="flex items-center justify-between">
<div className="flex items-center gap-3">
<div className="w-10 h-10 bg-gray-100 dark:bg-gray-800 rounded-full flex items-center justify-center">
<CodexLogo className="w-5 h-5" />
<SessionProviderLogo provider="codex" className="w-5 h-5" />
</div>
<div>
<div className="font-medium text-foreground flex items-center gap-2">

View File

@@ -1,5 +1,5 @@
import { SessionProvider } from '../../../../types/app';
import SessionProviderLogo from '../../../SessionProviderLogo';
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
import type { Provider } from '../../types/types';
type AssistantThinkingIndicatorProps = {

View File

@@ -1,6 +1,6 @@
import React, { memo, useMemo } from 'react';
import { useTranslation } from 'react-i18next';
import SessionProviderLogo from '../../../SessionProviderLogo';
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
import type {
ChatMessage,
ClaudePermissionSuggestion,

View File

@@ -1,7 +1,7 @@
import React from 'react';
import { Check, ChevronDown } from 'lucide-react';
import { useTranslation } from 'react-i18next';
import SessionProviderLogo from '../../../SessionProviderLogo';
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
import NextTaskBanner from '../../../NextTaskBanner.jsx';
import { CLAUDE_MODELS, CURSOR_MODELS, CODEX_MODELS } from '../../../../../shared/modelConstants';
import type { ProjectSession, SessionProvider } from '../../../../types/app';

View File

@@ -1,6 +1,10 @@
import React from 'react';
const ClaudeLogo = ({className = 'w-5 h-5'}) => {
type ClaudeLogoProps = {
className?: string;
};
const ClaudeLogo = ({ className = 'w-5 h-5' }: ClaudeLogoProps) => {
return (
<img src="/icons/claude-ai-icon.svg" alt="Claude" className={className} />
);

View File

@@ -1,7 +1,11 @@
import React from 'react';
import { useTheme } from '../contexts/ThemeContext';
import { useTheme } from '../../contexts/ThemeContext';
const CodexLogo = ({ className = 'w-5 h-5' }) => {
type CodexLogoProps = {
className?: string;
};
const CodexLogo = ({ className = 'w-5 h-5' }: CodexLogoProps) => {
const { isDarkMode } = useTheme();
return (

View File

@@ -1,7 +1,11 @@
import React from 'react';
import { useTheme } from '../contexts/ThemeContext';
import { useTheme } from '../../contexts/ThemeContext';
const CursorLogo = ({ className = 'w-5 h-5' }) => {
type CursorLogoProps = {
className?: string;
};
const CursorLogo = ({ className = 'w-5 h-5' }: CursorLogoProps) => {
const { isDarkMode } = useTheme();
return (

View File

@@ -1,4 +1,4 @@
import type { SessionProvider } from '../types/app';
import type { SessionProvider } from '../../types/app';
import ClaudeLogo from './ClaudeLogo';
import CodexLogo from './CodexLogo';
import CursorLogo from './CursorLogo';

View File

@@ -1,5 +1,5 @@
import { useTranslation } from 'react-i18next';
import SessionProviderLogo from '../../../SessionProviderLogo';
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
import type { AppTab, Project, ProjectSession } from '../../../../types/app';
type MainContentTitleProps = {

View File

@@ -1,5 +1,5 @@
import { useTranslation } from 'react-i18next';
import SessionProviderLogo from '../../../../SessionProviderLogo';
import SessionProviderLogo from '../../../../llm-logo-provider/SessionProviderLogo';
import type { AgentProvider, AuthStatus } from '../../../types/types';
type AgentListItemProps = {

View File

@@ -2,7 +2,7 @@ import { LogIn } from 'lucide-react';
import { useTranslation } from 'react-i18next';
import { Badge } from '../../../../../../ui/badge';
import { Button } from '../../../../../../ui/button';
import SessionProviderLogo from '../../../../../../SessionProviderLogo';
import SessionProviderLogo from '../../../../../../llm-logo-provider/SessionProviderLogo';
import type { AgentProvider, AuthStatus } from '../../../../../types/types';
type AccountContentProps = {

View File

@@ -7,7 +7,7 @@ import { formatTimeAgo } from '../../../../utils/dateUtils';
import type { Project, ProjectSession, SessionProvider } from '../../../../types/app';
import type { SessionWithProvider, TouchHandlerFactory } from '../../types/types';
import { createSessionViewModel } from '../../utils/utils';
import SessionProviderLogo from '../../../SessionProviderLogo';
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
type SidebarSessionItemProps = {
project: Project;