Refactor: Implement Phase 3C cleanup

This commit is contained in:
gpt-engineer-app[bot]
2025-10-03 14:24:43 +00:00
parent b8f1efee97
commit b778fc95f6
6 changed files with 119 additions and 81 deletions

View File

@@ -0,0 +1,85 @@
/**
* Type definitions for submission data structures
* These replace the `any` types in entityTransformers.ts
*/
export interface ParkSubmissionData {
name: string;
slug: string;
description?: string | null;
park_type: string;
status: string;
opening_date?: string | null;
closing_date?: string | null;
website_url?: string | null;
phone?: string | null;
email?: string | null;
operator_id?: string | null;
property_owner_id?: string | null;
location_id?: string | null;
banner_image_url?: string | null;
banner_image_id?: string | null;
card_image_url?: string | null;
card_image_id?: string | null;
}
export interface RideSubmissionData {
name: string;
slug: string;
description?: string | null;
category: string;
ride_sub_type?: string | null;
status: string;
park_id: string;
ride_model_id?: string | null;
manufacturer_id?: string | null;
designer_id?: string | null;
opening_date?: string | null;
closing_date?: string | null;
height_requirement?: number | null;
age_requirement?: number | null;
capacity_per_hour?: number | null;
duration_seconds?: number | null;
max_speed_kmh?: number | null;
max_height_meters?: number | null;
length_meters?: number | null;
drop_height_meters?: number | null;
inversions?: number | null;
max_g_force?: number | null;
coaster_type?: string | null;
seating_type?: string | null;
intensity_level?: string | null;
banner_image_url?: string | null;
banner_image_id?: string | null;
card_image_url?: string | null;
card_image_id?: string | null;
image_url?: string | null;
}
export interface CompanySubmissionData {
name: string;
slug: string;
description?: string | null;
person_type?: 'company' | 'individual';
founded_year?: number | null;
headquarters_location?: string | null;
website_url?: string | null;
logo_url?: string | null;
banner_image_url?: string | null;
banner_image_id?: string | null;
card_image_url?: string | null;
card_image_id?: string | null;
}
export interface RideModelSubmissionData {
name: string;
slug: string;
manufacturer_id: string;
category: string;
ride_type?: string | null;
description?: string | null;
banner_image_url?: string | null;
banner_image_id?: string | null;
card_image_url?: string | null;
card_image_id?: string | null;
}