import React, { useEffect, useState } from 'react'; import { View, Text } from 'react-native'; import { useTranslation } from 'react-i18next'; import { authService } from '~/features/auth/services/authService'; interface B2BInfo { disableRevenueCat: boolean; organizationId?: string; plan?: string; role?: string; } export const B2BSubscriptionMessage: React.FC = () => { const { t } = useTranslation(); const [b2bInfo, setB2BInfo] = useState(null); const [isLoading, setIsLoading] = useState(true); useEffect(() => { const fetchB2BInfo = async () => { try { const info = await authService.getB2BInfo(); console.log('[B2BSubscriptionMessage] B2B info:', info); setB2BInfo(info); } catch (error) { console.error('Error fetching B2B info:', error); } finally { setIsLoading(false); } }; fetchB2BInfo(); }, []); // Show loading state if (isLoading) { return null; } return ( {/* Header */} 🏢 {t('subscription.b2b.title', 'Enterprise Account')} {/* Content */} {t('subscription.b2b.message', 'You have an enterprise account with managed billing.')} {b2bInfo?.organizationId && ( {t('subscription.b2b.organization', 'Organization')} {b2bInfo.organizationId} )} {b2bInfo?.plan && ( {t('subscription.b2b.plan', 'Plan')} {b2bInfo.plan} )} {b2bInfo?.role && ( {t('subscription.b2b.role', 'Role')} {b2bInfo.role} )} {t( 'subscription.b2b.contact_admin', 'For billing questions, please contact your organization administrator.' )} ); };