Remove custom date range

This commit is contained in:
2024-12-21 16:45:48 -05:00
parent 371dfb08d0
commit 243dca4ffc

View File

@@ -566,8 +566,6 @@ const SkeletonTable = () => (
const SalesChart = ({
timeRange = "last30days",
startDate,
endDate,
title = "Sales Overview",
description = "Track your sales performance over time",
}) => {
@@ -584,10 +582,6 @@ const SalesChart = ({
showPrevious: false,
});
const [summaryStats, setSummaryStats] = useState({});
const [customDateRange, setCustomDateRange] = useState({
startDate: formatDateForInput(startDate) || "",
endDate: formatDateForInput(endDate) || "",
});
// Fetch data function
const fetchData = useCallback(async (params) => {
@@ -632,62 +626,15 @@ const SalesChart = ({
const handleTimeRangeChange = useCallback(
(value) => {
setSelectedTimeRange(value);
const params =
value === "custom"
? {
startDate: parseDateFromInput(
customDateRange.startDate
)?.toISOString(),
endDate: parseDateFromInput(
customDateRange.endDate
)?.toISOString(),
}
: { timeRange: value };
fetchData(params);
fetchData({ timeRange: value });
},
[customDateRange, fetchData]
);
// Handle custom date change
const handleCustomDateChange = useCallback(
(field, value) => {
setCustomDateRange((prev) => ({
...prev,
[field]: value,
}));
if (
selectedTimeRange === "custom" &&
customDateRange.startDate &&
customDateRange.endDate
) {
fetchData({
startDate: parseDateFromInput(
customDateRange.startDate
)?.toISOString(),
endDate: parseDateFromInput(customDateRange.endDate)?.toISOString(),
});
}
},
[selectedTimeRange, customDateRange, fetchData]
[fetchData]
);
// Initial load effect
useEffect(() => {
const params =
selectedTimeRange === "custom"
? {
startDate: parseDateFromInput(
customDateRange.startDate
)?.toISOString(),
endDate: parseDateFromInput(customDateRange.endDate)?.toISOString(),
}
: { timeRange: selectedTimeRange };
fetchData(params);
}, [selectedTimeRange, customDateRange, fetchData]);
fetchData({ timeRange: selectedTimeRange });
}, [selectedTimeRange, fetchData]);
// Auto-refresh effect for 'today' view
useEffect(() => {
@@ -745,41 +692,11 @@ const SalesChart = ({
{range.label}
</SelectItem>
))}
<SelectItem value="custom">Custom Range</SelectItem>
</SelectContent>
</Select>
</div>
</div>
{selectedTimeRange === "custom" && (
<div className="grid grid-cols-2 gap-4 max-w-md">
<div className="space-y-2">
<Label htmlFor="startDate">Start Date</Label>
<Input
id="startDate"
type="datetime-local"
value={customDateRange.startDate}
onChange={(e) =>
handleCustomDateChange("startDate", e.target.value)
}
className="h-9"
/>
</div>
<div className="space-y-2">
<Label htmlFor="endDate">End Date</Label>
<Input
id="endDate"
type="datetime-local"
value={customDateRange.endDate}
onChange={(e) =>
handleCustomDateChange("endDate", e.target.value)
}
className="h-9"
/>
</div>
</div>
)}
{/* Show either skeletons or actual stats */}
{loading ? <SkeletonStats /> : <SummaryStats stats={summaryStats} />}