From e9927bf0f51a9e2f9c52bd7e91cec33748448919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Tue, 3 Mar 2026 19:06:00 +0100 Subject: [PATCH] feat: add copy button with toast to units result field Co-Authored-By: Claude Sonnet 4.6 --- components/units/MainConverter.tsx | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/components/units/MainConverter.tsx b/components/units/MainConverter.tsx index 5e1ecc3..8fd08cb 100644 --- a/components/units/MainConverter.tsx +++ b/components/units/MainConverter.tsx @@ -1,7 +1,8 @@ 'use client'; import { useState, useEffect, useCallback } from 'react'; -import { ArrowLeftRight, BarChart3, Grid3X3 } from 'lucide-react'; +import { ArrowLeftRight, BarChart3, Grid3X3, Copy } from 'lucide-react'; +import { toast } from 'sonner'; import SearchUnits from './SearchUnits'; import VisualComparison from './VisualComparison'; import { @@ -131,10 +132,9 @@ export default function MainConverter() { onClick={() => handleCategorySelect(measure)} className={cn( 'w-full flex items-center gap-2 px-2 py-1.5 rounded-lg transition-all text-left', - 'border-l-2', isSelected - ? 'bg-primary/10 border-primary text-primary' - : 'border-transparent text-foreground/65 hover:bg-primary/8 hover:text-foreground' + ? 'bg-primary/10 text-primary' + : 'text-foreground/65 hover:bg-primary/8 hover:text-foreground' )} > {formatMeasureName(measure)} @@ -218,7 +218,20 @@ export default function MainConverter() { {/* Result display */} {resultValue !== null && (
-
Result
+
+
Result
+ +
{formatNumber(resultValue)}