mirror of
https://github.com/pezkuwichain/pwap.git
synced 2026-06-15 17:41:01 +00:00
Add new screens with proper headers and AppsScreen MiniApps Store
- Add 13 new placeholder screens with back button headers: Assembly, Bank, Certificates, Events, Help, Justice, Music, Polls, Research, University, VPN, WhatsKURD - Update AppNavigator with all new screen routes - Redesign AppsScreen with MiniApps Store: - Search bar for app discovery - Horizontal scrolling categories - Build on Pezkuwichain section with submission form - Professional submission modal - Featured apps section
This commit is contained in:
@@ -0,0 +1,152 @@
|
||||
import React from 'react';
|
||||
import {
|
||||
View,
|
||||
Text,
|
||||
StyleSheet,
|
||||
SafeAreaView,
|
||||
StatusBar,
|
||||
TouchableOpacity,
|
||||
Platform,
|
||||
} from 'react-native';
|
||||
import { useNavigation } from '@react-navigation/native';
|
||||
import { KurdistanColors } from '../theme/colors';
|
||||
|
||||
const VPNScreen: React.FC = () => {
|
||||
const navigation = useNavigation();
|
||||
|
||||
return (
|
||||
<SafeAreaView style={styles.container}>
|
||||
<StatusBar barStyle="dark-content" backgroundColor="#FFFFFF" />
|
||||
|
||||
{/* Header */}
|
||||
<View style={styles.header}>
|
||||
<TouchableOpacity onPress={() => navigation.goBack()} style={styles.backButton}>
|
||||
<Text style={styles.backButtonText}>← Back</Text>
|
||||
</TouchableOpacity>
|
||||
<Text style={styles.headerTitle}>VPN</Text>
|
||||
<View style={styles.placeholder} />
|
||||
</View>
|
||||
|
||||
{/* Content */}
|
||||
<View style={styles.content}>
|
||||
<Text style={styles.icon}>🛡️</Text>
|
||||
<Text style={styles.title}>Coming Soon</Text>
|
||||
<Text style={styles.titleEn}>Decentralized VPN</Text>
|
||||
<View style={styles.messageBox}>
|
||||
<Text style={styles.message}>
|
||||
Decentralized VPN will be available soon!
|
||||
</Text>
|
||||
<Text style={styles.messageEn}>
|
||||
Privacy-first, community-powered VPN network.
|
||||
</Text>
|
||||
</View>
|
||||
<View style={styles.featureList}>
|
||||
<Text style={styles.featureTitle}>Planned Features:</Text>
|
||||
<Text style={styles.featureItem}>• Decentralized relay network</Text>
|
||||
<Text style={styles.featureItem}>• Pay-per-use with HEZ tokens</Text>
|
||||
<Text style={styles.featureItem}>• No-logs policy guaranteed</Text>
|
||||
<Text style={styles.featureItem}>• Community node operators</Text>
|
||||
<Text style={styles.featureItem}>• Bypass censorship</Text>
|
||||
</View>
|
||||
</View>
|
||||
</SafeAreaView>
|
||||
);
|
||||
};
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
container: {
|
||||
flex: 1,
|
||||
backgroundColor: '#F5F5F5',
|
||||
paddingTop: Platform.OS === 'android' ? StatusBar.currentHeight : 0,
|
||||
},
|
||||
header: {
|
||||
flexDirection: 'row',
|
||||
justifyContent: 'space-between',
|
||||
alignItems: 'center',
|
||||
paddingHorizontal: 16,
|
||||
paddingVertical: 12,
|
||||
backgroundColor: '#FFFFFF',
|
||||
borderBottomWidth: 1,
|
||||
borderBottomColor: '#E5E5E5',
|
||||
},
|
||||
backButton: {
|
||||
paddingVertical: 4,
|
||||
paddingRight: 8,
|
||||
},
|
||||
backButtonText: {
|
||||
fontSize: 16,
|
||||
color: KurdistanColors.kesk,
|
||||
fontWeight: '500',
|
||||
},
|
||||
headerTitle: {
|
||||
fontSize: 18,
|
||||
fontWeight: 'bold',
|
||||
color: KurdistanColors.reş,
|
||||
},
|
||||
placeholder: {
|
||||
width: 60,
|
||||
},
|
||||
content: {
|
||||
flex: 1,
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
paddingHorizontal: 32,
|
||||
},
|
||||
icon: {
|
||||
fontSize: 80,
|
||||
marginBottom: 24,
|
||||
},
|
||||
title: {
|
||||
fontSize: 22,
|
||||
fontWeight: 'bold',
|
||||
color: KurdistanColors.reş,
|
||||
textAlign: 'center',
|
||||
marginBottom: 4,
|
||||
},
|
||||
titleEn: {
|
||||
fontSize: 18,
|
||||
color: '#666',
|
||||
textAlign: 'center',
|
||||
marginBottom: 24,
|
||||
},
|
||||
messageBox: {
|
||||
backgroundColor: '#FFFFFF',
|
||||
borderRadius: 16,
|
||||
padding: 20,
|
||||
marginBottom: 24,
|
||||
width: '100%',
|
||||
},
|
||||
message: {
|
||||
fontSize: 15,
|
||||
color: '#444',
|
||||
textAlign: 'center',
|
||||
lineHeight: 24,
|
||||
marginBottom: 12,
|
||||
},
|
||||
messageEn: {
|
||||
fontSize: 14,
|
||||
color: '#888',
|
||||
textAlign: 'center',
|
||||
lineHeight: 22,
|
||||
},
|
||||
featureList: {
|
||||
backgroundColor: '#FFFFFF',
|
||||
borderRadius: 16,
|
||||
padding: 20,
|
||||
width: '100%',
|
||||
},
|
||||
featureTitle: {
|
||||
fontSize: 16,
|
||||
fontWeight: 'bold',
|
||||
color: KurdistanColors.kesk,
|
||||
marginBottom: 12,
|
||||
},
|
||||
featureItem: {
|
||||
fontSize: 14,
|
||||
color: '#555',
|
||||
marginBottom: 8,
|
||||
lineHeight: 20,
|
||||
},
|
||||
});
|
||||
|
||||
export default VPNScreen;
|
||||
Reference in New Issue
Block a user