Commit 0058c003 authored by Shahzad Bhatti's avatar Shahzad Bhatti

update 3rd assignment done

parent f724a1cc
import React, { useState } from 'react'; import React, {useState} from 'react';
import Lottie from 'lottie-react-native'; import Lottie from 'lottie-react-native';
import Home from './src/components/Home'; import Home from './src/components/Home';
import Login from './src/components/Login'; import Login from './src/components/Login';
import Signup from './src/components/Signup'; import Signup from './src/components/Signup';
import { NavigationContainer } from '@react-navigation/native'; import MedicineList from './src/components/MedicineList';
import { createNativeStackNavigator } from '@react-navigation/native-stack'; import {NavigationContainer} from '@react-navigation/native';
import {createNativeStackNavigator} from '@react-navigation/native-stack';
const Stack = createNativeStackNavigator(); const Stack = createNativeStackNavigator();
function App() { function App() {
const [isLoading, setLoading] = useState(true); const [isLoading, setLoading] = useState(true);
setTimeout(() => {setLoading(false)}, 6000); setTimeout(() => {
setLoading(false);
}, 6000);
if (isLoading) { if (isLoading) {
return ( return (
<Lottie source={require('./src/assets/splash_screen.json')} autoPlay loop /> <Lottie
source={require('./src/assets/splash_screen.json')}
autoPlay
loop
/>
); );
} }
return ( return (
...@@ -24,9 +31,10 @@ function App() { ...@@ -24,9 +31,10 @@ function App() {
<Stack.Screen name="Home" component={Home} /> <Stack.Screen name="Home" component={Home} />
<Stack.Screen name="Signup" component={Signup} /> <Stack.Screen name="Signup" component={Signup} />
<Stack.Screen name="Login" component={Login} /> <Stack.Screen name="Login" component={Login} />
<Stack.Screen name="MedicineList" component={MedicineList} />
</Stack.Navigator> </Stack.Navigator>
</NavigationContainer> </NavigationContainer>
); );
} }
export default App; export default App;
\ No newline at end of file
import React from 'react'; import React from 'react';
import {View, StyleSheet, Text} from 'react-native'; import {View, StyleSheet} from 'react-native';
import Background from './Background'; import Background from './Background';
import Btn from './Button'; import Btn from './Button';
import { darkGreen, green } from '../constants/Constants'; import {darkGreen, green} from '../constants/Constants';
const Home = (props) => { const Home = props => {
return ( return (
<Background> <Background>
<View style={{ marginHorizontal: 20, marginVertical: 100 }}> <View style={{marginHorizontal: 20, marginVertical: 100}}>
<Btn bgColor={green} textColor='white' btnLabel="Login" Press={() => props.navigation.navigate("Login")} /> <Btn
<Btn bgColor='white' textColor={darkGreen} btnLabel="Signup" Press={() => props.navigation.navigate("Signup")} /> bgColor={green}
textColor="white"
btnLabel="Login"
Press={() => props.navigation.navigate('Login')}
/>
<Btn
bgColor="white"
textColor={darkGreen}
btnLabel="Signup"
Press={() => props.navigation.navigate('Signup')}
/>
<Btn
bgColor="white"
textColor="blue"
btnLabel="Products"
Press={() => props.navigation.navigate('MedicineList')}
/>
</View> </View>
</Background> </Background>
); );
} };
const styles = StyleSheet.create({}) const styles = StyleSheet.create({});
export default Home; export default Home;
\ No newline at end of file
import React from 'react';
import {View, FlatList, Image, StyleSheet, Text} from 'react-native';
const items = [
{
id: 1,
name: 'Panadol',
price: 18,
image: require('../assets/images/products/panadol.png'),
},
{
id: 2,
name: 'Amoxil 125mg Syrup',
price: 128,
image: require('../assets/images/products/amoxil-syrup-125mg.jpg'),
},
{
id: 3,
name: 'Arinac Forte',
price: 50,
image: require('../assets/images/products/arinac-forte.jpg'),
},
{
id: 4,
name: 'Telfast 120mg',
price: 75,
image: require('../assets/images/products/telfast-120mg.jpg'),
},
{
id: 5,
name: 'Risek 40mg Tablet',
price: 120,
image: require('../assets/images/products/risek-40mg.jpg'),
},
{
id: 6,
name: 'Coferb Cough Syrup',
price: 90,
image: require('../assets/images/products/coferb-syp.jpg'),
},
];
const Item = ({name, image, price}) => (
<View style={styles.itemContainer}>
<Image source={image} style={styles.image} />
<Text style={styles.text}>{name}</Text>
<Text style={styles.text}>Rs. {parseFloat(price.toFixed(2))}</Text>
</View>
);
const MedicineList = () => {
return (
<FlatList
data={items}
numColumns={2}
renderItem={({item}) => (
<Item name={item.name} image={item.image} price={item.price} />
)}
keyExtractor={item => item.id.toString()}
/>
);
};
const styles = StyleSheet.create({
itemContainer: {
flex: 1,
borderWidth: 1,
borderColor: '#ddd',
borderRadius: 5,
padding: 20,
margin: 10,
alignItems: 'center',
},
image: {
width: 100,
height: 100,
resizeMode: 'contain',
},
text: {
fontSize: 12,
marginTop: 10,
},
});
export default MedicineList;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment