didi-lot3-frontend/android/didi-app-source/App.tsx
Top Clossers cec967f953 Livrare Lot 3 (Frontend): aplicație web, aplicație mobilă Android, extensie browser
- Surse complete web (React/Vite) + mobil (React Native/Expo) + extensie (MV3)
- Documentație de livrare: ghid utilizare, matrice trasabilitate cerințe, raport testare furnizor
- Artefacte binare: imagine Docker didi-frontend:lot3-1.0, APK, extensie v3.2.6 + SHA256SUMS
- Configurare adresă platformă externalizată (build args / .env / config.js)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 12:40:40 +03:00

30 lines
1,016 B
TypeScript

import React from 'react';
import { View, ActivityIndicator } from 'react-native';
import { StatusBar } from 'expo-status-bar';
import { ShareIntentProvider } from 'expo-share-intent';
import { useFonts } from 'expo-font';
import AppNavigator from './src/navigation/AppNavigator';
import { COLORS } from './src/theme/colors';
export default function App() {
const [fontsLoaded] = useFonts({
'Merriweather-Regular': require('./assets/fonts/Merriweather-Regular.ttf'),
'Merriweather-Italic': require('./assets/fonts/Merriweather-Italic.ttf'),
'Merriweather-Bold': require('./assets/fonts/Merriweather-Bold.ttf'),
});
if (!fontsLoaded) {
return (
<View style={{ flex: 1, backgroundColor: COLORS.bg.primary, justifyContent: 'center', alignItems: 'center' }}>
<ActivityIndicator color={COLORS.brand.primaryLight} size="large" />
</View>
);
}
return (
<ShareIntentProvider>
<StatusBar style="light" />
<AppNavigator />
</ShareIntentProvider>
);
}