Added onboarding + a lightweight install banner to both the mobile login screen and the settings screen, with Android/Chromium

install prompt support and iOS “Share → Add to Home Screen” guidance. Also added a small helper + tests to decide
  when/which banner variant should show, and shared copy in common.json.
This commit is contained in:
Codex Agent
2025-12-28 18:26:17 +01:00
parent b780d82d62
commit d5f038d098
17 changed files with 831 additions and 8 deletions

View File

@@ -744,9 +744,20 @@ export default function MobileEventPhotosPage() {
) : photos.length === 0 ? (
<MobileCard alignItems="center" justifyContent="center" space="$2">
<ImageIcon size={28} color={muted} />
<Text fontSize="$sm" color={muted}>
{t('mobilePhotos.empty', 'No photos found.')}
<Text fontSize="$sm" fontWeight="700" color={text}>
{t('mobilePhotos.emptyTitle', 'No uploads yet')}
</Text>
<Text fontSize="$xs" color={muted} textAlign="center">
{t('mobilePhotos.emptyBody', 'Share the QR code so guests can start uploading photos.')}
</Text>
{slug ? (
<CTAButton
label={t('mobilePhotos.emptyAction', 'Share QR code')}
tone="ghost"
fullWidth={false}
onPress={() => navigate(adminPath(`/mobile/events/${slug}/qr`))}
/>
) : null}
</MobileCard>
) : (
<YStack space="$3">