feat(leads): implement reactive search for exhibitors and lead tracking

- Implemented V3-style reactive search (Local Cache -> Remote Revalidation) for exhibitors.
- Standardized search fields to 'name' for Exhibits and 'event_badge_full_name' for Lead Tracking.
- Refactored Leads UI with standardized search components and grid layout.
- Updated event routing to exclusively use string-based IDs (Triple-ID pattern).
- Hardened 'ae_EventSession' type definitions to handle null values from V3 API/Dexie.
This commit is contained in:
Scott Idem
2026-01-28 12:05:42 -05:00
parent f145b4dcac
commit cc3a6b0f59
11 changed files with 937 additions and 42 deletions

View File

@@ -550,22 +550,22 @@ export interface ae_EventSession extends ae_BaseObj {
event_session_id_random: string;
event_id: string;
event_id_random: string;
event_location_id?: string;
event_location_id_random?: string;
event_track_id?: string;
event_track_id_random?: string;
event_location_id?: string | null;
event_location_id_random?: string | null;
event_track_id?: string | null;
event_track_id_random?: string | null;
type_code?: string;
start_datetime?: string | Date;
end_datetime?: string | Date;
type_code?: string | null;
start_datetime?: string | Date | null;
end_datetime?: string | Date | null;
internal_use?: boolean;
record_audio?: boolean;
record_video?: boolean;
internal_use?: boolean | null;
record_audio?: boolean | null;
record_video?: boolean | null;
status?: number;
approve?: boolean;
ready?: boolean;
status?: number | null;
approve?: boolean | null;
ready?: boolean | null;
data_json?: any;