From da8d82955efffcbd52f6e7cd375afe125d61303c Mon Sep 17 00:00:00 2001 From: Amirhossein Khalili Date: Mon, 15 Jun 2026 21:46:20 +0330 Subject: [PATCH] fix(admin-dashboard): refine filter reset controls --- src/views/AdminDashboard.tsx | 54 ++++++++++++++++++++++++++++-------- 1 file changed, 43 insertions(+), 11 deletions(-) diff --git a/src/views/AdminDashboard.tsx b/src/views/AdminDashboard.tsx index 374031e..49c3ea8 100644 --- a/src/views/AdminDashboard.tsx +++ b/src/views/AdminDashboard.tsx @@ -213,13 +213,17 @@ function DateRangeFilter({ value, onChange, onReset, + resetDisabled, + showReset = true, }: { value: DateRangeState; onChange: (next: DateRangeState) => void; onReset: () => void; + resetDisabled?: boolean; + showReset?: boolean; }) { return ( -
+
-
- -
+ {showReset ? ( +
+ +
+ ) : null}
); } +function FilterResetButton({ disabled, onClick }: { disabled: boolean; onClick: () => void }) { + return ( + + ); +} + function FilterCard({ title, description, @@ -1047,7 +1066,6 @@ function TopPostsCard({ posts }: { posts: BlogAnalyticsSchema["top_posts"] }) { {formatNumberPersian(post.comments)} کامنت

- {toPersianDigits(index + 1)} )) ) : ( @@ -1073,7 +1091,12 @@ function UsersSection({ return (
- onFiltersChange({ from: "", to: "" })} /> + onFiltersChange({ from: "", to: "" })} + resetDisabled={!filters.from && !filters.to} + /> {query.isLoading ? : null} {query.isError ? : null} @@ -1131,12 +1154,13 @@ function EventsSection({ return (
-
+
onFiltersChange({ ...filters, ...next })} onReset={reset} + showReset={false} />
@@ -1159,6 +1183,9 @@ function EventsSection({ emptyText="رویدادی پیدا نشد." />
+
+ +
{query.isLoading ? : null} @@ -1222,7 +1249,12 @@ function BlogSection({ return (
- onFiltersChange({ from: "", to: "" })} /> + onFiltersChange({ from: "", to: "" })} + resetDisabled={!filters.from && !filters.to} + /> {query.isLoading ? : null} {query.isError ? : null}