diff --git a/bugulma/frontend/components/paywall/Paywall.tsx b/bugulma/frontend/components/paywall/Paywall.tsx index 3709ac5..267ee77 100644 --- a/bugulma/frontend/components/paywall/Paywall.tsx +++ b/bugulma/frontend/components/paywall/Paywall.tsx @@ -13,6 +13,7 @@ import { import { useSubscription } from '@/contexts/SubscriptionContext'; import { SubscriptionFeatureFlag, SUBSCRIPTION_PLANS, formatPrice } from '@/types/subscription'; import { useNavigate } from 'react-router-dom'; +import { useTranslation } from '@/hooks/useI18n'; export interface PaywallProps { feature: SubscriptionFeatureFlag | SubscriptionFeatureFlag[]; @@ -38,6 +39,7 @@ export const Paywall = ({ }: PaywallProps) => { const { canAccessFeature, subscription } = useSubscription(); const navigate = useNavigate(); + const { t } = useTranslation(); const [showUpgradeDialog, setShowUpgradeDialog] = React.useState(false); const features = Array.isArray(feature) ? feature : [feature]; @@ -89,8 +91,8 @@ export const Paywall = ({ - Upgrade Your Plan - Choose the plan that's right for you + {t('paywall.upgradeYourPlan')} + {t('paywall.choosePlanDescription')} { {planDetails.description}
{formatPrice(planDetails.price.monthly)} - /month + {t('paywall.perMonth')}
diff --git a/bugulma/frontend/components/resource-flow/ResourceFlowCard.tsx b/bugulma/frontend/components/resource-flow/ResourceFlowCard.tsx index 2460811..3f8da62 100644 --- a/bugulma/frontend/components/resource-flow/ResourceFlowCard.tsx +++ b/bugulma/frontend/components/resource-flow/ResourceFlowCard.tsx @@ -51,7 +51,7 @@ const ResourceFlowCard: React.FC = ({ resourceFlow, onVie {resourceFlow.EconomicData && (
{resourceFlow.EconomicData.cost_out !== undefined && ( - Cost: €{resourceFlow.EconomicData.cost_out.toFixed(2)} + {t('resourceFlow.cost', { cost: resourceFlow.EconomicData.cost_out.toFixed(2) })} )}
)} diff --git a/bugulma/frontend/components/ui/Combobox.tsx b/bugulma/frontend/components/ui/Combobox.tsx index 0fa07d2..075870f 100644 --- a/bugulma/frontend/components/ui/Combobox.tsx +++ b/bugulma/frontend/components/ui/Combobox.tsx @@ -3,6 +3,7 @@ import { clsx } from 'clsx'; import { Check, ChevronsUpDown } from 'lucide-react'; import Input from './Input'; import Button from './Button'; +import { useTranslation } from '@/hooks/useI18n'; export interface ComboboxOption { value: string; @@ -142,7 +143,7 @@ export const Combobox = ({ )} > {filteredOptions.length === 0 ? ( -
No options found
+
{t('ui.noOptionsFound')}
) : (
    {filteredOptions.map((option) => ( diff --git a/bugulma/frontend/components/ui/Dialog.tsx b/bugulma/frontend/components/ui/Dialog.tsx index b396e70..6997af5 100644 --- a/bugulma/frontend/components/ui/Dialog.tsx +++ b/bugulma/frontend/components/ui/Dialog.tsx @@ -1,6 +1,7 @@ import React, { useEffect, useRef } from 'react'; import { clsx } from 'clsx'; import { X } from 'lucide-react'; +import { useTranslation } from '@/hooks/useI18n'; export interface DialogProps { open: boolean; @@ -159,6 +160,7 @@ export interface DialogCloseProps { } export const DialogClose = ({ onClose, className }: DialogCloseProps) => { + const { t } = useTranslation(); return ( ); };