import Constants from 'expo-constants'; /** * Aktualna wersja appki, używana do display'u (BugReportFAB, Update dialog) * i porównań z `/version` z serwera. * * Źródła w kolejności preferencji: * 1. `Constants.expoConfig?.version`, działa gdy OTA manifest ma `extra.expoClient` * (publish_update.py embeduje tam app.json). W release APK przed pierwszym OTA * bierze się to z app.json bundled w build. * 2. Hardcoded fallback, chroni przed OTA-z-pustego-extra (bug 2026-05-12, gdzie * stara wersja publish_update.py wysyłała `extra: {}` → expoConfig=null po * reload-zie → version='0.0.0' → fałszywy "Update available" dialog). * * **Bump przy każdym APK release** żeby APK fallback pasował do realnej wersji. * OTA-only releases (silent JS update) NIE bumpują tego, wtedy version w app.json * też nie idzie do góry, więc consistency jest zachowana. */ export const APP_VERSION: string = (Constants.expoConfig?.version as string | undefined) || '0.2.2';