102 lines
2.9 KiB
TypeScript
102 lines
2.9 KiB
TypeScript
/*
|
|
* File: PatientCareStackNavigator.tsx
|
|
* Description: Stack navigator for PatientCare module navigation
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|
|
|
|
import React from 'react';
|
|
import { createStackNavigator } from '@react-navigation/stack';
|
|
|
|
// Import screens
|
|
import { PatientsScreen, PatientDetailsScreen, SeriesDetailScreen } from '../screens';
|
|
|
|
// Import types
|
|
import { PatientCareStackParamList } from './navigationTypes';
|
|
import FeedbackDetailScreen from '../screens/FeedbackDetailScreen';
|
|
|
|
// ============================================================================
|
|
// STACK NAVIGATOR
|
|
// ============================================================================
|
|
|
|
const Stack = createStackNavigator<PatientCareStackParamList>();
|
|
|
|
/**
|
|
* PatientCareStackNavigator Component
|
|
*
|
|
* Purpose: Provides stack navigation for PatientCare module
|
|
*
|
|
* Screens:
|
|
* - PatientsScreen: Main patient list screen
|
|
* - PatientDetailsScreen: Detailed patient information and DICOM images
|
|
* - SeriesDetailScreen: Detailed series information with predictions and feedback
|
|
*
|
|
* Navigation Flow:
|
|
* PatientsScreen → PatientDetailsScreen (with patient data) → SeriesDetailScreen (with series data)
|
|
*/
|
|
const PatientCareStackNavigator: React.FC = () => {
|
|
return (
|
|
<Stack.Navigator
|
|
initialRouteName="PatientsScreen"
|
|
screenOptions={{
|
|
headerShown: false,
|
|
cardStyle: { backgroundColor: 'transparent' },
|
|
cardOverlayEnabled: false,
|
|
gestureEnabled: true,
|
|
gestureDirection: 'horizontal',
|
|
}}
|
|
>
|
|
{/* Patients Screen - Main patient list */}
|
|
<Stack.Screen
|
|
name="PatientsScreen"
|
|
component={PatientsScreen}
|
|
options={{
|
|
title: 'Patients',
|
|
}}
|
|
/>
|
|
|
|
{/* Patient Details Screen - Comprehensive patient information */}
|
|
<Stack.Screen
|
|
name="PatientDetails"
|
|
component={PatientDetailsScreen}
|
|
options={{
|
|
title: 'Patient Details',
|
|
gestureEnabled: true,
|
|
gestureDirection: 'horizontal',
|
|
}}
|
|
/>
|
|
|
|
{/* Series Detail Screen - Detailed series information with predictions and feedback */}
|
|
<Stack.Screen
|
|
name="SeriesDetail"
|
|
component={SeriesDetailScreen}
|
|
options={{
|
|
title: 'Series Details',
|
|
gestureEnabled: true,
|
|
gestureDirection: 'horizontal',
|
|
}}
|
|
/>
|
|
<Stack.Screen
|
|
name="FeedbackDetail"
|
|
component={FeedbackDetailScreen}
|
|
options={{
|
|
title: 'Feedback Details',
|
|
gestureEnabled: true,
|
|
gestureDirection: 'horizontal',
|
|
headerShown: false
|
|
}}
|
|
/>
|
|
|
|
|
|
</Stack.Navigator>
|
|
);
|
|
};
|
|
|
|
export default PatientCareStackNavigator;
|
|
|
|
/*
|
|
* End of File: PatientCareStackNavigator.tsx
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|