Refactor: Add History Tab

This commit is contained in:
gpt-engineer-app[bot]
2025-10-06 15:55:04 +00:00
parent 9380c8fd68
commit cb1ef6c177
8 changed files with 456 additions and 6 deletions

View File

@@ -21,6 +21,9 @@ import { toast } from '@/hooks/use-toast';
import { useUserRole } from '@/hooks/useUserRole';
import { Edit } from 'lucide-react';
import { VersionIndicator } from '@/components/versioning/VersionIndicator';
import { EntityVersionHistory } from '@/components/versioning/EntityVersionHistory';
import { EntityHistoryTimeline, HistoryEvent } from '@/components/history/EntityHistoryTimeline';
import { FormerNamesSection } from '@/components/history/FormerNamesSection';
export default function ParkDetail() {
const {
@@ -356,11 +359,12 @@ export default function ParkDetail() {
{/* Main Content */}
<Tabs defaultValue="overview" className="w-full">
<TabsList className="grid w-full grid-cols-2 md:grid-cols-4">
<TabsList className="grid w-full grid-cols-2 md:grid-cols-5">
<TabsTrigger value="overview">Overview</TabsTrigger>
<TabsTrigger value="rides">Rides ({rides.length})</TabsTrigger>
<TabsTrigger value="reviews">Reviews</TabsTrigger>
<TabsTrigger value="photos">Photos</TabsTrigger>
<TabsTrigger value="history">History</TabsTrigger>
</TabsList>
<TabsContent value="overview" className="mt-6">
@@ -587,6 +591,43 @@ export default function ParkDetail() {
entityName={park.name}
/>
</TabsContent>
<TabsContent value="history" className="mt-6">
<Tabs defaultValue="park-history" className="w-full">
<TabsList className="w-full max-w-md">
<TabsTrigger value="park-history">Park History</TabsTrigger>
<TabsTrigger value="version-history">Version History</TabsTrigger>
</TabsList>
<TabsContent value="park-history" className="mt-6 space-y-6">
<EntityHistoryTimeline
events={[
...(park.opening_date ? [{
date: park.opening_date,
title: `${park.name} Opened`,
description: `${park.name} opened to the public`,
type: 'milestone' as const
}] : []),
...(park.closing_date ? [{
date: park.closing_date,
title: `${park.name} Closed`,
description: `${park.name} ceased operation`,
type: 'status_change' as const
}] : []),
]}
entityName={park.name}
/>
</TabsContent>
<TabsContent value="version-history" className="mt-6">
<EntityVersionHistory
entityType="park"
entityId={park.id}
entityName={park.name}
/>
</TabsContent>
</Tabs>
</TabsContent>
</Tabs>
{/* Add Ride Modal */}