Traeon
택배 배송조회
+
-
+
diff --git a/frontend/src/pages/MainPage.jsx b/frontend/src/pages/MainPage.jsx
index 1b959d8..7310d02 100644
--- a/frontend/src/pages/MainPage.jsx
+++ b/frontend/src/pages/MainPage.jsx
@@ -13,8 +13,7 @@ import { Loader2, Package, Trash2 } from "lucide-react";
const PAGE_LIMIT = 20;
-function MainPage() {
- const [showForm, setShowForm] = useState(false);
+function MainPage({ showForm, setShowForm }) {
const [selectedId, setSelectedId] = useState(null);
const [deleteMode, setDeleteMode] = useState(false);
const [checkedIds, setCheckedIds] = useState(new Set());
@@ -122,56 +121,91 @@ function MainPage() {
return (
-
-
-
- {deleteMode ? (
- <>
-
-
-
- >
- ) : (
- <>
- {parcels.length > 0 && (
+
+
+
+
+ {!deleteMode && parcels.length > 0 && (
+ <>
- )}
+
+ >
+ )}
+ {!deleteMode && (
- >
- )}
+ )}
+
+
+
+ {deleteMode && (
+
+
+
+
+
+
+
+
+
+ )}
+
@@ -222,31 +256,30 @@ function MainPage() {
}}
>
- {deleteMode && (
-
- {
- e.stopPropagation();
- toggleCheck(parcel.id);
- }}
- className={`w-5 h-5 rounded-md border-2 flex items-center justify-center cursor-pointer transition-all ${
- checkedIds.has(parcel.id)
- ? "bg-primary border-primary"
- : "border-gray-300 hover:border-primary/50"
- }`}
- >
- {checkedIds.has(parcel.id) && (
-
- )}
-
-
- )}
+
{
+ if (!deleteMode) return;
+ e.stopPropagation();
+ toggleCheck(parcel.id);
+ }}
+ className={`w-5 h-5 rounded-md border-2 flex items-center justify-center shrink-0 transition-all duration-300 ${
+ deleteMode
+ ? "opacity-100 scale-100 mr-0"
+ : "opacity-0 scale-0 w-0 -mr-2"
+ } ${
+ deleteMode && checkedIds.has(parcel.id)
+ ? "bg-primary border-primary cursor-pointer"
+ : deleteMode
+ ? "border-gray-300 hover:border-primary/50 cursor-pointer"
+ : "border-transparent"
+ }`}
+ >
+ {checkedIds.has(parcel.id) && deleteMode && (
+
+ )}
+