From c4ddc573d4c3fb08030735437c789f0e8abe7fdd Mon Sep 17 00:00:00 2001 From: Jean-Luc Makiola Date: Mon, 13 Apr 2026 21:33:32 +0200 Subject: [PATCH] fix: price labels use user's selected currency instead of hardcoded $ Replaced hardcoded "Price ($)" labels across 6 components and 2 locale files to display the user's selected currency (EUR, GBP, USD, etc.). AddToCollectionModal also updated to show correct currency. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/client/components/AddToCollectionModal.tsx | 4 +++- src/client/components/CandidateForm.tsx | 4 +++- src/client/components/ItemForm.tsx | 4 +++- src/client/components/ManualEntryForm.tsx | 4 +++- src/client/locales/de/collection.json | 2 +- src/client/locales/en/collection.json | 2 +- src/client/routes/items/$itemId.tsx | 4 +++- .../routes/threads/$threadId/candidates/$candidateId.tsx | 4 +++- src/client/routes/threads/$threadId/index.tsx | 4 +++- 9 files changed, 23 insertions(+), 9 deletions(-) diff --git a/src/client/components/AddToCollectionModal.tsx b/src/client/components/AddToCollectionModal.tsx index c5c382f..98e8621 100644 --- a/src/client/components/AddToCollectionModal.tsx +++ b/src/client/components/AddToCollectionModal.tsx @@ -1,6 +1,7 @@ import { useEffect, useState } from "react"; import { toast } from "sonner"; import { useCategories } from "../hooks/useCategories"; +import { useCurrency } from "../hooks/useCurrency"; import { useCreateItem } from "../hooks/useItems"; import { useUIStore } from "../stores/uiStore"; import { CategoryPicker } from "./CategoryPicker"; @@ -12,6 +13,7 @@ export function AddToCollectionModal() { const closeAddToCollection = useUIStore((s) => s.closeAddToCollection); const { data: categories } = useCategories(); + const { currency } = useCurrency(); const createItem = useCreateItem(); const [categoryId, setCategoryId] = useState(null); @@ -127,7 +129,7 @@ export function AddToCollectionModal() { htmlFor="collection-price" className="block text-sm font-medium text-gray-700 mb-1" > - Purchase Price ($) + Purchase Price ({currency}) - Price ($) + {`Price (${currency})`} s.openConfirmDelete); @@ -192,7 +194,7 @@ export function ItemForm({ mode, itemId, onClose }: ItemFormProps) { htmlFor="item-price" className="block text-sm font-medium text-gray-700 mb-1" > - Price ($) + {`Price (${currency})`} - Purchase Price ($) + {`Purchase Price (${currency})`}
s.openResolveDialog); const openConfirmDeleteCandidate = useUIStore( (s) => s.openConfirmDeleteCandidate, @@ -330,7 +332,7 @@ function CandidateDetailPage() {
(INITIAL_MODAL_FORM); const [errors, setErrors] = useState>({}); @@ -490,7 +492,7 @@ function AddCandidateModal({ threadId, onClose }: AddCandidateModalProps) { htmlFor="modal-candidate-price" className="block text-sm font-medium text-gray-700 mb-1" > - Price ($) + {`Price (${currency})`}