Wire up start-session flow (variable-rate aware) + fix About dark mode
- New StartSession screen off MeterDetail: pick vehicle -> duration (from the live multi-estimate ladder, exact cost per option) -> card; detects a free prefix and shows "Free until X, then charged"; explicit Pay $X confirmation before charging via postStartParkingSession; schedules the local expiry reminder on success - About screen themed (was black-on-dark in dark mode) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
9a5c9d445f
commit
f044a9a511
4 changed files with 340 additions and 11 deletions
|
|
@ -20,12 +20,14 @@ import { ProfileScreen } from '@/screens/ProfileScreen';
|
|||
import { VehiclesScreen } from '@/screens/VehiclesScreen';
|
||||
import { PaymentMethodsScreen } from '@/screens/PaymentMethodsScreen';
|
||||
import { NotificationsScreen } from '@/screens/NotificationsScreen';
|
||||
import { StartSessionScreen } from '@/screens/StartSessionScreen';
|
||||
import { useTheme } from '@/theme/ThemeContext';
|
||||
import type { Zone } from 'parksmarter-client';
|
||||
|
||||
export type RootStackParamList = {
|
||||
Tabs: undefined;
|
||||
MeterDetail: { zone: Zone };
|
||||
StartSession: { zone: Zone };
|
||||
About: undefined;
|
||||
Profile: undefined;
|
||||
Vehicles: undefined;
|
||||
|
|
@ -111,6 +113,11 @@ export function RootNavigator() {
|
|||
component={MeterDetailScreen}
|
||||
options={{ title: 'Meter' }}
|
||||
/>
|
||||
<Stack.Screen
|
||||
name="StartSession"
|
||||
component={StartSessionScreen}
|
||||
options={{ title: 'Start session' }}
|
||||
/>
|
||||
<Stack.Screen name="About" component={AboutScreen} options={{ title: 'About' }} />
|
||||
<Stack.Screen name="Profile" component={ProfileScreen} options={{ title: 'Profile' }} />
|
||||
<Stack.Screen name="Vehicles" component={VehiclesScreen} options={{ title: 'Vehicles' }} />
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue