mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-23 00:31:12 -05:00
Refactor: Optimize validation in moderation
This commit is contained in:
@@ -7,7 +7,7 @@ import { useIsMobile } from '@/hooks/use-mobile';
|
||||
import { PhotoSubmissionDisplay } from './PhotoSubmissionDisplay';
|
||||
import { SubmissionChangesDisplay } from './SubmissionChangesDisplay';
|
||||
import { ValidationSummary } from './ValidationSummary';
|
||||
import { useState } from 'react';
|
||||
import { useState, useCallback } from 'react';
|
||||
import { ValidationResult } from '@/lib/entityValidationSchemas';
|
||||
|
||||
interface ItemReviewCardProps {
|
||||
@@ -21,6 +21,10 @@ export function ItemReviewCard({ item, onEdit, onStatusChange, submissionId }: I
|
||||
const isMobile = useIsMobile();
|
||||
const [validationResult, setValidationResult] = useState<ValidationResult | null>(null);
|
||||
|
||||
const handleValidationChange = useCallback((result: ValidationResult) => {
|
||||
setValidationResult(result);
|
||||
}, []);
|
||||
|
||||
const getItemIcon = () => {
|
||||
switch (item.item_type) {
|
||||
case 'park': return <MapPin className="w-4 h-4" />;
|
||||
@@ -117,7 +121,7 @@ export function ItemReviewCard({ item, onEdit, onStatusChange, submissionId }: I
|
||||
item_data: item.item_data,
|
||||
id: item.id,
|
||||
}}
|
||||
onValidationChange={setValidationResult}
|
||||
onValidationChange={handleValidationChange}
|
||||
compact={false}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user