cập nhật thông tin cảng trong modal add/edit trip, tối ưu lại UI modal add/edit trip
This commit is contained in:
@@ -14,7 +14,7 @@ import { useRouter } from "expo-router";
|
||||
import FilterButton from "@/components/diary/FilterButton";
|
||||
import TripCard from "@/components/diary/TripCard";
|
||||
import FilterModal, { FilterValues } from "@/components/diary/FilterModal";
|
||||
import AddTripModal from "@/components/diary/TripFormModal";
|
||||
import TripFormModal from "@/components/diary/TripFormModal";
|
||||
import { useThings } from "@/state/use-thing";
|
||||
import { useTripsList } from "@/state/use-tripslist";
|
||||
import dayjs from "dayjs";
|
||||
@@ -26,7 +26,7 @@ export default function diary() {
|
||||
const { colors } = useThemeContext();
|
||||
const router = useRouter();
|
||||
const [showFilterModal, setShowFilterModal] = useState(false);
|
||||
const [showAddTripModal, setShowAddTripModal] = useState(false);
|
||||
const [showTripFormModal, setShowTripFormModal] = useState(false);
|
||||
const [editingTrip, setEditingTrip] = useState<Model.Trip | null>(null);
|
||||
const [filters, setFilters] = useState<FilterValues>({
|
||||
status: null,
|
||||
@@ -41,7 +41,7 @@ export default function diary() {
|
||||
const [hasMore, setHasMore] = useState(true);
|
||||
const isInitialLoad = useRef(true);
|
||||
const flatListRef = useRef<FlatList>(null);
|
||||
|
||||
|
||||
// Refs to prevent duplicate API calls from React Compiler/Strict Mode
|
||||
const hasInitializedThings = useRef(false);
|
||||
const hasInitializedTrips = useRef(false);
|
||||
@@ -193,9 +193,9 @@ export default function diary() {
|
||||
if (tripToView) {
|
||||
router.push({
|
||||
pathname: "/trip-detail",
|
||||
params: {
|
||||
tripId: tripToView.id,
|
||||
tripData: JSON.stringify(tripToView)
|
||||
params: {
|
||||
tripId: tripToView.id,
|
||||
tripData: JSON.stringify(tripToView),
|
||||
},
|
||||
});
|
||||
}
|
||||
@@ -206,7 +206,7 @@ export default function diary() {
|
||||
const tripToEdit = allTrips.find((trip) => trip.id === tripId);
|
||||
if (tripToEdit) {
|
||||
setEditingTrip(tripToEdit);
|
||||
setShowAddTripModal(true);
|
||||
setShowTripFormModal(true);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -351,7 +351,7 @@ export default function diary() {
|
||||
/>
|
||||
<TouchableOpacity
|
||||
style={[styles.addButton, themedStyles.addButton]}
|
||||
onPress={() => setShowAddTripModal(true)}
|
||||
onPress={() => setShowTripFormModal(true)}
|
||||
activeOpacity={0.7}
|
||||
>
|
||||
<Ionicons name="add" size={20} color="#FFFFFF" />
|
||||
@@ -391,10 +391,10 @@ export default function diary() {
|
||||
/>
|
||||
|
||||
{/* Add/Edit Trip Modal */}
|
||||
<AddTripModal
|
||||
visible={showAddTripModal}
|
||||
<TripFormModal
|
||||
visible={showTripFormModal}
|
||||
onClose={() => {
|
||||
setShowAddTripModal(false);
|
||||
setShowTripFormModal(false);
|
||||
setEditingTrip(null);
|
||||
}}
|
||||
onSuccess={handleTripAddSuccess}
|
||||
|
||||
Reference in New Issue
Block a user