From 46fe7f7cdfe37ce16c4f6af57236f13f7c740a00 Mon Sep 17 00:00:00 2001 From: tapframe <85391825+tapframe@users.noreply.github.com> Date: Tue, 17 Feb 2026 03:31:29 +0530 Subject: [PATCH] Add Nuvio Sync feature and update branding assets --- assets/nuvio-sync-icon-og.png | Bin 0 -> 73562 bytes assets/text_only_og.png | Bin 0 -> 9117 bytes src/screens/AuthScreen.tsx | 144 +++++----- src/screens/SettingsScreen.tsx | 68 +++-- src/screens/SyncSettingsScreen.tsx | 287 +++++++++++++------ src/screens/settings/AboutSettingsScreen.tsx | 2 +- 6 files changed, 313 insertions(+), 188 deletions(-) create mode 100644 assets/nuvio-sync-icon-og.png create mode 100644 assets/text_only_og.png diff --git a/assets/nuvio-sync-icon-og.png b/assets/nuvio-sync-icon-og.png new file mode 100644 index 0000000000000000000000000000000000000000..28bf19e55ee55afa3677c41f3e2805ec4e65f453 GIT binary patch literal 73562 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 G3jQAoHh#hY literal 0 HcmV?d00001 diff --git a/assets/text_only_og.png b/assets/text_only_og.png new file mode 100644 index 0000000000000000000000000000000000000000..35eca9a465995195bdc82e85991859ffef3f19bd GIT binary patch literal 9117 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�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 literal 0 HcmV?d00001 diff --git a/src/screens/AuthScreen.tsx b/src/screens/AuthScreen.tsx index fc7858082..373bb5129 100644 --- a/src/screens/AuthScreen.tsx +++ b/src/screens/AuthScreen.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useMemo, useRef, useState } from 'react'; -import { View, TextInput, Text, TouchableOpacity, StyleSheet, ActivityIndicator, SafeAreaView, KeyboardAvoidingView, Platform, Dimensions, Animated, Easing, Keyboard } from 'react-native'; +import { View, TextInput, Text, TouchableOpacity, StyleSheet, ActivityIndicator, SafeAreaView, KeyboardAvoidingView, Platform, Animated, Easing, Keyboard, StatusBar, useWindowDimensions } from 'react-native'; import { mmkvStorage } from '../services/mmkvStorage'; import { LinearGradient } from 'expo-linear-gradient'; import { MaterialIcons } from '@expo/vector-icons'; @@ -10,8 +10,8 @@ import * as Haptics from 'expo-haptics'; import { useToast } from '../contexts/ToastContext'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; -const { width, height } = Dimensions.get('window'); const EMAIL_CONFIRMATION_REQUIRED_PREFIX = '__EMAIL_CONFIRMATION__'; +const AUTH_BG_GRADIENT = ['#07090F', '#0D1020', '#140B24']; const normalizeAuthErrorMessage = (input: string): string => { const raw = (input || '').trim(); @@ -40,12 +40,16 @@ const normalizeAuthErrorMessage = (input: string): string => { }; const AuthScreen: React.FC = () => { + const { width, height } = useWindowDimensions(); + const isTablet = width >= 768; const { currentTheme } = useTheme(); const { signIn, signUp } = useAccount(); const navigation = useNavigation(); const route = useRoute(); const fromOnboarding = !!route?.params?.fromOnboarding; const insets = useSafeAreaInsets(); + const safeTopInset = Math.max(insets.top, Platform.OS === 'android' ? (StatusBar.currentHeight || 0) : 0); + const backButtonTop = safeTopInset + 8; const { showError, showSuccess } = useToast(); const [email, setEmail] = useState(''); @@ -70,8 +74,6 @@ const AuthScreen: React.FC = () => { const modeAnim = useRef(new Animated.Value(0)).current; // 0 = signin, 1 = signup const [switchWidth, setSwitchWidth] = useState(0); // Legacy local toast state removed in favor of global toast - const [headerHeight, setHeaderHeight] = useState(0); - const headerHideAnim = useRef(new Animated.Value(0)).current; // 0 visible, 1 hidden const [keyboardHeight, setKeyboardHeight] = useState(0); useEffect(() => { @@ -137,21 +139,9 @@ const AuthScreen: React.FC = () => { const onShow = (e: any) => { const kh = e?.endCoordinates?.height ?? 0; setKeyboardHeight(kh); - Animated.timing(headerHideAnim, { - toValue: 1, - duration: 180, - easing: Easing.out(Easing.cubic), - useNativeDriver: true, - }).start(); }; const onHide = () => { setKeyboardHeight(0); - Animated.timing(headerHideAnim, { - toValue: 0, - duration: 180, - easing: Easing.out(Easing.cubic), - useNativeDriver: true, - }).start(); }; const subShow = Keyboard.addListener(showEvt, onShow as any); const subHide = Keyboard.addListener(hideEvt, onHide as any); @@ -159,7 +149,7 @@ const AuthScreen: React.FC = () => { subShow.remove(); subHide.remove(); }; - }, [headerHideAnim]); + }, []); const isEmailValid = useMemo(() => /\S+@\S+\.\S+/.test(email.trim()), [email]); const isPasswordValid = useMemo(() => password.length >= 6, [password]); @@ -231,14 +221,10 @@ const AuthScreen: React.FC = () => { return ( - {Platform.OS !== 'android' ? ( - - ) : ( - - )} + {/* Background Pattern (iOS only) */} {Platform.OS !== 'android' && ( @@ -260,64 +246,55 @@ const AuthScreen: React.FC = () => { )} - {/* Header outside KeyboardAvoidingView to avoid being overlapped */} - setHeaderHeight(e.nativeEvent.layout.height)} - style={[ - styles.header, - { - opacity: Animated.multiply( - introOpacity, - headerHideAnim.interpolate({ inputRange: [0, 1], outputRange: [1, 0] }) - ), - transform: [ - { - translateY: Animated.add( - introTranslateY, - headerHideAnim.interpolate({ inputRange: [0, 1], outputRange: [0, -12] }) - ), - }, - ], - }, - ]} - > - {navigation.canGoBack() && ( - navigation.goBack()} style={[styles.backButton, Platform.OS === 'android' ? { top: Math.max(insets.top + 6, 18) } : null]} hitSlop={{ top: 8, bottom: 8, left: 8, right: 8 }}> - - - )} - - {mode === 'signin' ? 'Welcome back' : 'Create your account'} - - - Sync your addons, progress and settings across devices - - + {navigation.canGoBack() && ( + navigation.goBack()} + style={[styles.backButton, { top: backButtonTop }]} + hitSlop={{ top: 8, bottom: 8, left: 8, right: 8 }} + > + + + )} 0 ? { - paddingTop: Platform.OS === 'ios' ? 6 : 10, - transform: [ - { - translateY: - Platform.OS === 'ios' - ? -Math.min(120, keyboardHeight * 0.35) - : -Math.min(84, keyboardHeight * 0.22), - }, - ], + justifyContent: 'flex-start', + paddingTop: Platform.OS === 'ios' ? 12 : safeTopInset + 8, } : null, ]} > - 0 ? styles.centerHeaderCompact : null, + { + opacity: introOpacity, + transform: [{ translateY: introTranslateY }], + }, + ]} + > + + {mode === 'signin' ? 'Welcome back' : 'Create your account'} + + {keyboardHeight === 0 && ( + + Sync your addons, progress and settings across devices + + )} + + + 0 ? styles.cardCompact : null, { backgroundColor: Platform.OS === 'android' ? '#121212' : 'rgba(255,255,255,0.02)', borderColor: Platform.OS === 'android' ? '#1f1f1f' : 'rgba(255,255,255,0.06)', ...(Platform.OS !== 'android' ? { @@ -601,9 +578,20 @@ const styles = StyleSheet.create({ }, header: { alignItems: 'center', - paddingTop: 64, paddingBottom: 8, }, + centerHeader: { + width: '100%', + alignItems: 'center', + marginBottom: 18, + paddingHorizontal: 20, + }, + centerHeaderTablet: { + maxWidth: 620, + }, + centerHeaderCompact: { + marginBottom: 10, + }, logoContainer: { position: 'relative', alignItems: 'center', @@ -639,11 +627,14 @@ const styles = StyleSheet.create({ centerContainer: { flex: 1, alignItems: 'center', - justifyContent: 'flex-start', + justifyContent: 'center', paddingHorizontal: 20, - paddingTop: 20, + paddingTop: 0, paddingBottom: 28, }, + centerContainerTablet: { + paddingHorizontal: 36, + }, card: { width: '100%', maxWidth: 400, @@ -652,6 +643,13 @@ const styles = StyleSheet.create({ borderWidth: 1, elevation: 20, }, + cardTablet: { + maxWidth: 560, + }, + cardCompact: { + padding: 18, + borderRadius: 16, + }, switchRow: { flexDirection: 'row', borderRadius: 14, @@ -739,7 +737,7 @@ const styles = StyleSheet.create({ backButton: { position: 'absolute', left: 16, - top: 8, + zIndex: 20, }, switchModeText: { textAlign: 'center', diff --git a/src/screens/SettingsScreen.tsx b/src/screens/SettingsScreen.tsx index 5c54597a0..cd545c8f6 100644 --- a/src/screens/SettingsScreen.tsx +++ b/src/screens/SettingsScreen.tsx @@ -379,6 +379,23 @@ const SettingsScreen: React.FC = () => { case 'account': return ( + {showCloudSyncItem && ( + + } + renderControl={() => } + onPress={() => (navigation as any).navigate('SyncSettings')} + isLast={!showTraktItem && !showSimklItem} + isTablet={isTablet} + /> + )} {showTraktItem && ( { customIcon={} renderControl={() => } onPress={() => navigation.navigate('TraktSettings')} - isLast={!showSimklItem && !showCloudSyncItem} + isLast={!showSimklItem} isTablet={isTablet} /> )} @@ -397,17 +414,6 @@ const SettingsScreen: React.FC = () => { customIcon={} renderControl={() => } onPress={() => navigation.navigate('SimklSettings')} - isLast={!showCloudSyncItem} - isTablet={isTablet} - /> - )} - {showCloudSyncItem && ( - } - onPress={() => (navigation as any).navigate('SyncSettings')} isLast={true} isTablet={isTablet} /> @@ -698,6 +704,22 @@ const SettingsScreen: React.FC = () => { {/* Account */} {(settingsConfig?.categories?.['account']?.visible !== false) && (showTraktItem || showSimklItem || showCloudSyncItem) && ( + {showCloudSyncItem && ( + + } + renderControl={() => } + onPress={() => (navigation as any).navigate('SyncSettings')} + isLast={!showTraktItem && !showSimklItem} + /> + )} {showTraktItem && ( { customIcon={} renderControl={() => } onPress={() => navigation.navigate('TraktSettings')} - isLast={!showSimklItem && !showCloudSyncItem} + isLast={!showSimklItem} /> )} {showSimklItem && ( @@ -715,16 +737,6 @@ const SettingsScreen: React.FC = () => { customIcon={} renderControl={() => } onPress={() => navigation.navigate('SimklSettings')} - isLast={!showCloudSyncItem} - /> - )} - {showCloudSyncItem && ( - } - onPress={() => (navigation as any).navigate('SyncSettings')} isLast={true} /> )} @@ -952,7 +964,7 @@ const SettingsScreen: React.FC = () => { @@ -1222,6 +1234,14 @@ const styles = StyleSheet.create({ width: 180, height: 180, }, + syncLogoIcon: { + width: 20, + height: 20, + }, + syncLogoIconTablet: { + width: 24, + height: 24, + }, brandLogoContainer: { alignItems: 'center', justifyContent: 'center', diff --git a/src/screens/SyncSettingsScreen.tsx b/src/screens/SyncSettingsScreen.tsx index cc73b531b..78daebd6b 100644 --- a/src/screens/SyncSettingsScreen.tsx +++ b/src/screens/SyncSettingsScreen.tsx @@ -1,28 +1,37 @@ import React, { useCallback, useMemo, useState } from 'react'; import { ActivityIndicator, + SafeAreaView, ScrollView, StatusBar, StyleSheet, Text, TouchableOpacity, + useWindowDimensions, View, } from 'react-native'; import { NavigationProp, useFocusEffect, useNavigation } from '@react-navigation/native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; import { MaterialIcons } from '@expo/vector-icons'; import { RootStackParamList } from '../navigation/AppNavigator'; -import ScreenHeader from '../components/common/ScreenHeader'; import { useTheme } from '../contexts/ThemeContext'; import CustomAlert from '../components/CustomAlert'; import { supabaseSyncService, SupabaseUser, RemoteSyncStats } from '../services/supabaseSyncService'; import { useAccount } from '../contexts/AccountContext'; +import { useTraktContext } from '../contexts/TraktContext'; +import { useSimklContext } from '../contexts/SimklContext'; +import { useTranslation } from 'react-i18next'; const SyncSettingsScreen: React.FC = () => { const { currentTheme } = useTheme(); + const { t } = useTranslation(); + const { width } = useWindowDimensions(); + const isTablet = width >= 768; const navigation = useNavigation>(); const insets = useSafeAreaInsets(); const { user, signOut } = useAccount(); + const { isAuthenticated: traktAuthenticated } = useTraktContext(); + const { isAuthenticated: simklAuthenticated } = useSimklContext(); const [loading, setLoading] = useState(false); const [syncCodeLoading, setSyncCodeLoading] = useState(false); @@ -84,6 +93,15 @@ const SyncSettingsScreen: React.FC = () => { { label: 'Linked Devices', value: remoteStats.linkedDevices }, ]; }, [remoteStats]); + const isSignedIn = Boolean(user); + const externalSyncServices = useMemo( + () => [ + traktAuthenticated ? 'Trakt' : null, + simklAuthenticated ? 'Simkl' : null, + ].filter(Boolean) as string[], + [traktAuthenticated, simklAuthenticated] + ); + const externalSyncActive = externalSyncServices.length > 0; const handleManualSync = async () => { setSyncCodeLoading(true); @@ -123,24 +141,26 @@ const SyncSettingsScreen: React.FC = () => { } }; - if (loading) { - return ( - - - navigation.goBack()} /> + return ( + + + + navigation.goBack()} style={styles.backButton}> + + {t('settings.title')} + + + + Nuvio Sync + + {loading ? ( - - ); - } + ) : ( + <> - return ( - - - navigation.goBack()} /> - - + @@ -152,6 +172,18 @@ const SyncSettingsScreen: React.FC = () => { + + + + External Sync Priority + + + {externalSyncActive + ? `${externalSyncServices.join(' + ')} is active. Watch progress and library updates are managed by these services instead of Nuvio cloud database.` + : 'If Trakt or Simkl sync is enabled, watch progress and library updates will use those services instead of Nuvio cloud database.'} + + + @@ -161,7 +193,7 @@ const SyncSettingsScreen: React.FC = () => { {user?.email ? `Signed in as ${user.email}` : 'Not signed in'} - {!user ? ( + {!isSignedIn ? ( navigation.navigate('Account')} @@ -188,83 +220,109 @@ const SyncSettingsScreen: React.FC = () => { - - - - Connection - - {authLabel} - - Effective owner: {ownerId || 'Unavailable'} - - {!supabaseSyncService.isConfigured() && ( - - Set EXPO_PUBLIC_SUPABASE_URL and EXPO_PUBLIC_SUPABASE_ANON_KEY to enable sync. - - )} - - - - - - Database Stats - - {!remoteStats ? ( - - Sign in to load remote data counts. - - ) : ( - - {statItems.map((item) => ( - - {item.value} - {item.label} - - ))} + {!isSignedIn ? ( + + + + Before You Sync - )} - - - - - - Actions + + Sign in to start cloud sync and keep your data consistent across devices. + + + • Addons and plugin settings + • Watch progress and library + • Linked devices and sync stats + + {!supabaseSyncService.isConfigured() && ( + + Set EXPO_PUBLIC_SUPABASE_URL and EXPO_PUBLIC_SUPABASE_ANON_KEY to enable sync. + + )} - - Pull to refresh this device from cloud, or upload this device as the latest source. - - - - {syncCodeLoading ? ( - - ) : ( - Pull From Cloud + ) : ( + <> + + + + Connection + + {authLabel} + + Effective owner: {ownerId || 'Unavailable'} + + {!supabaseSyncService.isConfigured() && ( + + Set EXPO_PUBLIC_SUPABASE_URL and EXPO_PUBLIC_SUPABASE_ANON_KEY to enable sync. + )} - - - Upload This Device - - - + + + + + + Database Stats + + {!remoteStats ? ( + + Sign in to load remote data counts. + + ) : ( + + {statItems.map((item) => ( + + {item.value} + {item.label} + + ))} + + )} + + + + + + Actions + + + Pull to refresh this device from cloud, or upload this device as the latest source. + + + + {syncCodeLoading ? ( + + ) : ( + Pull From Cloud + )} + + + Upload This Device + + + + + )} + + )} { actions={alertActions} onClose={() => setAlertVisible(false)} /> - + ); }; @@ -286,10 +344,42 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'center', }, + header: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + paddingHorizontal: 16, + paddingTop: 8, + }, + backButton: { + flexDirection: 'row', + alignItems: 'center', + paddingVertical: 8, + }, + backText: { + marginLeft: 8, + fontSize: 16, + fontWeight: '600', + }, + headerActions: { + minWidth: 32, + }, + screenTitle: { + fontSize: 32, + fontWeight: '800', + paddingHorizontal: 16, + marginTop: 4, + marginBottom: 10, + }, content: { padding: 16, gap: 14, }, + contentTablet: { + alignSelf: 'center', + width: '100%', + maxWidth: 980, + }, heroCard: { borderWidth: 1, borderRadius: 16, @@ -318,6 +408,23 @@ const styles = StyleSheet.create({ padding: 14, gap: 10, }, + noteCard: { + borderWidth: 1, + borderRadius: 14, + padding: 14, + gap: 8, + }, + preAuthCard: { + gap: 12, + }, + preAuthList: { + gap: 6, + marginTop: 2, + }, + preAuthItem: { + fontSize: 13, + lineHeight: 18, + }, sectionHeader: { flexDirection: 'row', alignItems: 'center', diff --git a/src/screens/settings/AboutSettingsScreen.tsx b/src/screens/settings/AboutSettingsScreen.tsx index 04e3d3d48..18f39bb19 100644 --- a/src/screens/settings/AboutSettingsScreen.tsx +++ b/src/screens/settings/AboutSettingsScreen.tsx @@ -391,7 +391,7 @@ export const AboutFooter: React.FC<{ displayDownloads: number | null }> = ({ dis