mirror of
https://github.com/siteboon/claudecodeui.git
synced 2026-03-03 13:07:43 +00:00
refactor(logo-provider): moved SessionProviderLogo to a dedicated llm-logo-provider folder and updated imports
This commit is contained in:
@@ -1,8 +1,6 @@
|
|||||||
import React, { useState, useEffect, useRef } from 'react';
|
import React, { useState, useEffect, useRef } from 'react';
|
||||||
import { ChevronRight, ChevronLeft, Check, GitBranch, User, Mail, LogIn, ExternalLink, Loader2 } from 'lucide-react';
|
import { ChevronRight, ChevronLeft, Check, GitBranch, User, Mail, LogIn, ExternalLink, Loader2 } from 'lucide-react';
|
||||||
import ClaudeLogo from './ClaudeLogo';
|
import SessionProviderLogo from './llm-logo-provider/SessionProviderLogo';
|
||||||
import CursorLogo from './CursorLogo';
|
|
||||||
import CodexLogo from './CodexLogo';
|
|
||||||
import LoginModal from './LoginModal';
|
import LoginModal from './LoginModal';
|
||||||
import { authenticatedFetch } from '../utils/api';
|
import { authenticatedFetch } from '../utils/api';
|
||||||
import { useAuth } from '../contexts/AuthContext';
|
import { useAuth } from '../contexts/AuthContext';
|
||||||
@@ -347,7 +345,7 @@ const Onboarding = ({ onComplete }) => {
|
|||||||
<div className="flex items-center justify-between">
|
<div className="flex items-center justify-between">
|
||||||
<div className="flex items-center gap-3">
|
<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">
|
<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>
|
<div>
|
||||||
<div className="font-medium text-foreground flex items-center gap-2">
|
<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 justify-between">
|
||||||
<div className="flex items-center gap-3">
|
<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">
|
<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>
|
<div>
|
||||||
<div className="font-medium text-foreground flex items-center gap-2">
|
<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 justify-between">
|
||||||
<div className="flex items-center gap-3">
|
<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">
|
<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>
|
<div>
|
||||||
<div className="font-medium text-foreground flex items-center gap-2">
|
<div className="font-medium text-foreground flex items-center gap-2">
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { SessionProvider } from '../../../../types/app';
|
import { SessionProvider } from '../../../../types/app';
|
||||||
import SessionProviderLogo from '../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import type { Provider } from '../../types/types';
|
import type { Provider } from '../../types/types';
|
||||||
|
|
||||||
type AssistantThinkingIndicatorProps = {
|
type AssistantThinkingIndicatorProps = {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import React, { memo, useMemo } from 'react';
|
import React, { memo, useMemo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import SessionProviderLogo from '../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import type {
|
import type {
|
||||||
ChatMessage,
|
ChatMessage,
|
||||||
ClaudePermissionSuggestion,
|
ClaudePermissionSuggestion,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Check, ChevronDown } from 'lucide-react';
|
import { Check, ChevronDown } from 'lucide-react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import SessionProviderLogo from '../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import NextTaskBanner from '../../../NextTaskBanner.jsx';
|
import NextTaskBanner from '../../../NextTaskBanner.jsx';
|
||||||
import { CLAUDE_MODELS, CURSOR_MODELS, CODEX_MODELS } from '../../../../../shared/modelConstants';
|
import { CLAUDE_MODELS, CURSOR_MODELS, CODEX_MODELS } from '../../../../../shared/modelConstants';
|
||||||
import type { ProjectSession, SessionProvider } from '../../../../types/app';
|
import type { ProjectSession, SessionProvider } from '../../../../types/app';
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
const ClaudeLogo = ({className = 'w-5 h-5'}) => {
|
type ClaudeLogoProps = {
|
||||||
|
className?: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
const ClaudeLogo = ({ className = 'w-5 h-5' }: ClaudeLogoProps) => {
|
||||||
return (
|
return (
|
||||||
<img src="/icons/claude-ai-icon.svg" alt="Claude" className={className} />
|
<img src="/icons/claude-ai-icon.svg" alt="Claude" className={className} />
|
||||||
);
|
);
|
||||||
@@ -1,7 +1,11 @@
|
|||||||
import React from 'react';
|
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();
|
const { isDarkMode } = useTheme();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -1,7 +1,11 @@
|
|||||||
import React from 'react';
|
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();
|
const { isDarkMode } = useTheme();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import type { SessionProvider } from '../types/app';
|
import type { SessionProvider } from '../../types/app';
|
||||||
import ClaudeLogo from './ClaudeLogo';
|
import ClaudeLogo from './ClaudeLogo';
|
||||||
import CodexLogo from './CodexLogo';
|
import CodexLogo from './CodexLogo';
|
||||||
import CursorLogo from './CursorLogo';
|
import CursorLogo from './CursorLogo';
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import SessionProviderLogo from '../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import type { AppTab, Project, ProjectSession } from '../../../../types/app';
|
import type { AppTab, Project, ProjectSession } from '../../../../types/app';
|
||||||
|
|
||||||
type MainContentTitleProps = {
|
type MainContentTitleProps = {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import SessionProviderLogo from '../../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import type { AgentProvider, AuthStatus } from '../../../types/types';
|
import type { AgentProvider, AuthStatus } from '../../../types/types';
|
||||||
|
|
||||||
type AgentListItemProps = {
|
type AgentListItemProps = {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { LogIn } from 'lucide-react';
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { Badge } from '../../../../../../ui/badge';
|
import { Badge } from '../../../../../../ui/badge';
|
||||||
import { Button } from '../../../../../../ui/button';
|
import { Button } from '../../../../../../ui/button';
|
||||||
import SessionProviderLogo from '../../../../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../../../../llm-logo-provider/SessionProviderLogo';
|
||||||
import type { AgentProvider, AuthStatus } from '../../../../../types/types';
|
import type { AgentProvider, AuthStatus } from '../../../../../types/types';
|
||||||
|
|
||||||
type AccountContentProps = {
|
type AccountContentProps = {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { formatTimeAgo } from '../../../../utils/dateUtils';
|
|||||||
import type { Project, ProjectSession, SessionProvider } from '../../../../types/app';
|
import type { Project, ProjectSession, SessionProvider } from '../../../../types/app';
|
||||||
import type { SessionWithProvider, TouchHandlerFactory } from '../../types/types';
|
import type { SessionWithProvider, TouchHandlerFactory } from '../../types/types';
|
||||||
import { createSessionViewModel } from '../../utils/utils';
|
import { createSessionViewModel } from '../../utils/utils';
|
||||||
import SessionProviderLogo from '../../../SessionProviderLogo';
|
import SessionProviderLogo from '../../../llm-logo-provider/SessionProviderLogo';
|
||||||
|
|
||||||
type SidebarSessionItemProps = {
|
type SidebarSessionItemProps = {
|
||||||
project: Project;
|
project: Project;
|
||||||
|
|||||||
Reference in New Issue
Block a user