Messenger/packages/mobile/app.config.ts
Заид Омар Медхат | Zaid Omar Medhat f653b083aa f
2026-07-13 12:32:00 +05:00

46 lines
1.3 KiB
TypeScript

import type { ExpoConfig } from 'expo/config';
// Public runtime config only — real secrets stay server-side. The API/WS base
// URLs point at the same gateway the web client uses; override per environment
// with EXPO_PUBLIC_API_URL / EXPO_PUBLIC_WS_URL (e.g. a LAN IP for a device).
const apiUrl = process.env['EXPO_PUBLIC_API_URL'] ?? 'http://localhost:8080/api';
const wsUrl = process.env['EXPO_PUBLIC_WS_URL'] ?? 'ws://localhost:8080/connection/websocket';
const config: ExpoConfig = {
name: 'Zovi',
slug: 'zovi',
scheme: 'zovi',
version: '0.1.0',
orientation: 'portrait',
userInterfaceStyle: 'automatic',
newArchEnabled: true,
ios: {
supportsTablet: true,
bundleIdentifier: 'com.altricade.messenger',
},
android: {
package: 'com.altricade.messenger',
edgeToEdgeEnabled: true,
},
plugins: [
'expo-router',
'expo-secure-store',
['expo-audio', { microphonePermission: 'Zovi uses the microphone to record voice messages.' }],
'expo-video',
['expo-camera', { cameraPermission: 'Zovi uses the camera for video messages.' }],
[
'expo-image-picker',
{ photosPermission: 'Zovi accesses your photos to share images and videos.' },
],
'expo-notifications',
],
experiments: {
typedRoutes: true,
},
extra: {
apiUrl,
wsUrl,
},
};
export default config;