From 88cb5d8d746945289e0f476666ac8ab464643156 Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 4 Sep 2026 10:23:27 +0200 Subject: [PATCH] Refactor components by removing unused imports and components. --- app/(protected)/activity/[id].tsx | 5 +- app/(protected)/activity/add.tsx | 2 +- app/(protected)/activity/index.tsx | 3 +- app/(protected)/dashboard/index.tsx | 2 - app/login.tsx | 7 +- components/CalendarWidget.tsx | 6 +- components/ConstructionSiteCard.tsx | 2 +- components/QualityControlCard.tsx | 2 +- components/SetDescriptionModal.tsx | 114 ---------------------------- components/SupplierFilter.tsx | 2 +- package.json | 4 +- 11 files changed, 12 insertions(+), 137 deletions(-) delete mode 100644 components/SetDescriptionModal.tsx diff --git a/app/(protected)/activity/[id].tsx b/app/(protected)/activity/[id].tsx index 966ac61..d1776a1 100644 --- a/app/(protected)/activity/[id].tsx +++ b/app/(protected)/activity/[id].tsx @@ -5,16 +5,15 @@ import { Image } from 'expo-image'; import ImageView from "react-native-image-viewing"; import { useLocalSearchParams, useRouter, useFocusEffect } from 'expo-router'; import { ChevronLeft, ImageIcon, Users, HardHat, MapPin, Calendar as CalendarIcon, Briefcase, TextAlignStart, CheckCircle2, Wrench, Pencil } from 'lucide-react-native'; -import React, { useCallback, useEffect, useState } from 'react'; +import React, { useCallback, useState } from 'react'; import { Dimensions, RefreshControl, ScrollView, Text, TouchableOpacity, View } from 'react-native'; -import { SafeAreaView, useSafeAreaInsets } from 'react-native-safe-area-context'; +import { SafeAreaView } from 'react-native-safe-area-context'; import { StatusBar } from 'expo-status-bar'; export default function ActivityDetailScreen() { const router = useRouter(); const alert = useAlert(); const params = useLocalSearchParams(); - const insets = useSafeAreaInsets(); const [activityData, setActivityData] = useState(null); const [placeName, setPlaceName] = useState(''); diff --git a/app/(protected)/activity/add.tsx b/app/(protected)/activity/add.tsx index 59d8800..2fba449 100644 --- a/app/(protected)/activity/add.tsx +++ b/app/(protected)/activity/add.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect } from 'react'; -import { View, Text, TouchableOpacity, TextInput, KeyboardAvoidingView, ScrollView, Platform, Dimensions, ActivityIndicator, Modal } from 'react-native'; +import { View, Text, TouchableOpacity, TextInput, Dimensions, ActivityIndicator, Modal } from 'react-native'; import { SafeAreaView } from 'react-native-safe-area-context'; import { useLocalSearchParams, useRouter } from 'expo-router'; import { StatusBar } from 'expo-status-bar'; diff --git a/app/(protected)/activity/index.tsx b/app/(protected)/activity/index.tsx index 446924c..13084e6 100644 --- a/app/(protected)/activity/index.tsx +++ b/app/(protected)/activity/index.tsx @@ -2,14 +2,13 @@ import { useAlert } from '@/components/AlertComponent'; import LoadingScreen from '@/components/LoadingScreen'; import api from '@/utils/api'; import { Plus, Filter, Newspaper, ShoppingBag } from 'lucide-react-native'; -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState, useCallback } from 'react'; import { RefreshControl, ScrollView, Text, TouchableOpacity, View } from 'react-native'; import { SafeAreaView } from 'react-native-safe-area-context'; import FilterModal from '@/components/FilterModal'; import { Place, ActivityItem } from '@/types/types'; import { useRouter, useFocusEffect } from 'expo-router'; import { StatusBar } from 'expo-status-bar'; -import { useCallback } from 'react'; export default function JournalScreen() { const router = useRouter(); diff --git a/app/(protected)/dashboard/index.tsx b/app/(protected)/dashboard/index.tsx index b18a7ed..e3260c1 100644 --- a/app/(protected)/dashboard/index.tsx +++ b/app/(protected)/dashboard/index.tsx @@ -27,8 +27,6 @@ const TOOLTIP_BASE = { const screenWidth = Dimensions.get("window").width; export default function DashboardScreen() { - const router = useRouter(); - const alert = useAlert(); const [chartData, setChartData] = useState({ costiRicavi: null, diff --git a/app/login.tsx b/app/login.tsx index 1df9efe..ea46a33 100644 --- a/app/login.tsx +++ b/app/login.tsx @@ -24,13 +24,10 @@ export default function LoginScreen() { setIsLoading(true); try { - username.trim(); - password.trim(); - // Execute login request const response = await api.post("/user/login", { - username: username, - password: password + username: username.trim(), + password: password.trim() }); if (response.data && response.data.success === false) { diff --git a/components/CalendarWidget.tsx b/components/CalendarWidget.tsx index a5a9f13..39ffae3 100644 --- a/components/CalendarWidget.tsx +++ b/components/CalendarWidget.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import React, { useState } from 'react'; import { View, Text, TouchableOpacity } from 'react-native'; import { ChevronLeft, ChevronRight } from 'lucide-react-native'; import { TimeOffRequest, TimeOffRequestType } from '@/types/types'; @@ -82,10 +82,6 @@ export default function CalendarWidget({ events, types, onMonthChange, initialDa const day = i + 1; const event = getEventForDay(day); - let bgClass = 'bg-transparent'; - let textClass = 'text-gray-700'; - let borderClass = 'border-transparent'; - const bgColor = event?.timeOffRequestType?.color ? `${event.timeOffRequestType.color}25` : 'transparent'; const borderColor = event?.timeOffRequestType?.color || 'transparent'; const textColor = event ? event.timeOffRequestType?.color : '#374151'; diff --git a/components/ConstructionSiteCard.tsx b/components/ConstructionSiteCard.tsx index f70e4d8..4836824 100644 --- a/components/ConstructionSiteCard.tsx +++ b/components/ConstructionSiteCard.tsx @@ -1,5 +1,5 @@ import { ConstructionSite } from '@/types/types'; -import { Building2, MapPin } from 'lucide-react-native'; +import { Building2 } from 'lucide-react-native'; import React from 'react'; import { Text, TouchableOpacity, View } from 'react-native'; diff --git a/components/QualityControlCard.tsx b/components/QualityControlCard.tsx index f50a60f..a7ff6ed 100644 --- a/components/QualityControlCard.tsx +++ b/components/QualityControlCard.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { View, Text } from 'react-native'; -import { CheckCircle2, AlertTriangle, Briefcase, Calendar, MapPin } from 'lucide-react-native'; +import { CheckCircle2, AlertTriangle, Calendar, MapPin } from 'lucide-react-native'; import { QualityControlItem } from '@/types/types'; interface QualityControlCardProps { diff --git a/components/SetDescriptionModal.tsx b/components/SetDescriptionModal.tsx deleted file mode 100644 index 8cd3496..0000000 --- a/components/SetDescriptionModal.tsx +++ /dev/null @@ -1,114 +0,0 @@ -import React, { useEffect, useState } from 'react'; -import { - KeyboardAvoidingView, - Modal, - Platform, - Text, - TextInput, - TouchableOpacity, - View, - Keyboard, - ScrollView -} from 'react-native'; -import { X } from 'lucide-react-native'; - -interface SetDescriptionModalProps { - visible: boolean; - initialDescription: string; - onClose: () => void; - onSave: (desc: string) => void; -} - -export default function SetDescriptionModal({ - visible, - initialDescription, - onClose, - onSave -}: SetDescriptionModalProps) { - const [desc, setDesc] = useState(initialDescription); - - useEffect(() => { - if (visible) { - setDesc(initialDescription || ''); - } - }, [visible, initialDescription]); - - return ( - - - - - {/* Backdrop */} - { - Keyboard.dismiss(); - onClose(); - }} - activeOpacity={1} - /> - - - - {/* Header */} - - Descrizione Foto - - - - - - {/* Text Area with Scroll */} - - - = 250 ? 'text-red-500' : 'text-gray-500'}`}> - {desc.length}/250 - - - - {/* Actions */} - - - Annulla - - - onSave(desc)} - className="flex-1 py-4 rounded-2xl shadow-lg active:scale-[0.98] bg-[#1071C2]" - > - Salva - - - - - - - - ); -} \ No newline at end of file diff --git a/components/SupplierFilter.tsx b/components/SupplierFilter.tsx index 5ec2498..9faf009 100644 --- a/components/SupplierFilter.tsx +++ b/components/SupplierFilter.tsx @@ -96,7 +96,7 @@ export default function SupplierFilter({ selectedSupplierId, onSupplierSelect, t )} - {/* Nested Place Picker Modal */} + {/* Nested Supplier Picker Modal */} setShowPicker(false)}>