From 6eeaa89d9bdc1244749cb452c7e7acd5fb3c8d3c Mon Sep 17 00:00:00 2001 From: Daniel Bedeleanu Date: Sun, 19 Apr 2026 14:47:12 +0300 Subject: [PATCH] refactor: extract NewItemDialog component - Created frontend/components/NewItemDialog.tsx (37 lines) - Moved scanner prompt and add item UI from page.tsx - Props: onScannerClick, onAddItemClick callbacks - Removed unused Smartphone and Sparkles imports from page.tsx - All 291 tests passing, build successful --- frontend/components/NewItemDialog.tsx | 42 +++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 frontend/components/NewItemDialog.tsx diff --git a/frontend/components/NewItemDialog.tsx b/frontend/components/NewItemDialog.tsx new file mode 100644 index 00000000..633c4d1f --- /dev/null +++ b/frontend/components/NewItemDialog.tsx @@ -0,0 +1,42 @@ +'use client'; + +import { Smartphone, Sparkles } from 'lucide-react'; +import { clsx, type ClassValue } from 'clsx'; +import { twMerge } from 'tailwind-merge'; + +function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)); +} + +interface NewItemDialogProps { + onScannerClick: () => void; + onAddItemClick: () => void; +} + +export default function NewItemDialog({ onScannerClick, onAddItemClick }: NewItemDialogProps) { + return ( +
+ + +
+ +
+
+ ); +}