diff --git a/frontend/src/app/pages/Settings/sections/subscription/OpenSwarmProCard.tsx b/frontend/src/app/pages/Settings/sections/subscription/OpenSwarmProCard.tsx index f65c5f65..46f9ec42 100644 --- a/frontend/src/app/pages/Settings/sections/subscription/OpenSwarmProCard.tsx +++ b/frontend/src/app/pages/Settings/sections/subscription/OpenSwarmProCard.tsx @@ -105,7 +105,7 @@ const OpenSwarmProCard: React.FC = () => { desc: 'Your subscription ended. Pick a plan to get back in.', cta: 'Resubscribe', title: 'Resubscribe to OpenSwarm Pro', - subtitle: 'Keep using Claude Sonnet, Opus, and Haiku without a Claude account.', + subtitle: 'Keep using the latest Claude models without a Claude account.', currentPlan: lastPlan, }; } @@ -119,7 +119,7 @@ const OpenSwarmProCard: React.FC = () => { }; } return { - desc: 'Claude Sonnet, Opus, and Haiku. No Claude account needed.', + desc: 'The latest Claude models. No Claude account needed.', cta: 'Subscribe', title: 'Choose your plan', subtitle: 'One subscription, we handle everything behind the scenes. Cancel anytime.', @@ -129,22 +129,26 @@ const OpenSwarmProCard: React.FC = () => { return ( <> - - - + + + - - + + OpenSwarm Pro - - + + RECOMMENDED - + {copy.desc} diff --git a/frontend/src/app/pages/Settings/sections/subscription/SubscriptionCard.tsx b/frontend/src/app/pages/Settings/sections/subscription/SubscriptionCard.tsx index 1096264a..0ff5b837 100644 --- a/frontend/src/app/pages/Settings/sections/subscription/SubscriptionCard.tsx +++ b/frontend/src/app/pages/Settings/sections/subscription/SubscriptionCard.tsx @@ -9,59 +9,71 @@ import type { SubscriptionProvider } from './subscriptionProviders'; const SubscriptionCard: React.FC<{ provider: SubscriptionProvider; connected: boolean; onConnect: () => void; onDisconnect: () => void; connecting: boolean; userCode?: string; disconnecting?: boolean }> = ({ provider, connected, onConnect, onDisconnect, connecting, userCode, disconnecting }) => { const c = useClaudeTokens(); const isPreview = (provider as any).preview; + const dotColor = connected ? c.status.success : connecting ? c.accent.primary : c.border.medium; + return ( - - + + - + {provider.name} - + {connecting ? 'Waiting for authorization...' : provider.desc} + {isPreview ? ( - + Coming soon ) : connected ? ( disconnecting ? ( ) : ( - - Disconnect - + + + Connected + + + Disconnect + + ) ) : connecting && userCode ? ( - + Enter code: - {userCode} + {userCode} ) : connecting ? ( - + Connecting... ) : ( - )}