summaryrefslogtreecommitdiff
path: root/frontend/app/screens/walkthroughs
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/app/screens/walkthroughs')
-rw-r--r--frontend/app/screens/walkthroughs/index.js1
-rw-r--r--frontend/app/screens/walkthroughs/walkthrough1.js40
-rw-r--r--frontend/app/screens/walkthroughs/walkthrough2.js46
-rw-r--r--frontend/app/screens/walkthroughs/walkthroughScreen.js61
4 files changed, 148 insertions, 0 deletions
diff --git a/frontend/app/screens/walkthroughs/index.js b/frontend/app/screens/walkthroughs/index.js
new file mode 100644
index 0000000..e7f1eb0
--- /dev/null
+++ b/frontend/app/screens/walkthroughs/index.js
@@ -0,0 +1 @@
+export * from './walkthroughScreen';
diff --git a/frontend/app/screens/walkthroughs/walkthrough1.js b/frontend/app/screens/walkthroughs/walkthrough1.js
new file mode 100644
index 0000000..2f08f97
--- /dev/null
+++ b/frontend/app/screens/walkthroughs/walkthrough1.js
@@ -0,0 +1,40 @@
+import React from 'react';
+import {
+ View,
+ Image,
+} from 'react-native';
+import {
+ RkText,
+ RkStyleSheet,
+ RkTheme,
+} from 'react-native-ui-kitten';
+
+export class Walkthrough1 extends React.Component {
+ getThemeImageSource = (theme) => (
+ theme.name === 'light' ?
+ require('../../assets/images/kittenImage.png') : require('../../assets/images/kittenImageDark.png')
+ );
+
+ renderImage = () => (
+ <Image source={this.getThemeImageSource(RkTheme.current)} />
+ );
+
+ render = () => (
+ <View style={styles.screen}>
+ {this.renderImage()}
+ <RkText rkType='header2' style={styles.text}>Welcome to EcoAlerts</RkText>
+ </View>
+ )
+}
+
+const styles = RkStyleSheet.create(theme => ({
+ screen: {
+ backgroundColor: theme.colors.screen.base,
+ alignItems: 'center',
+ justifyContent: 'center',
+ flex: 1,
+ },
+ text: {
+ marginTop: 20,
+ },
+}));
diff --git a/frontend/app/screens/walkthroughs/walkthrough2.js b/frontend/app/screens/walkthroughs/walkthrough2.js
new file mode 100644
index 0000000..6e387b8
--- /dev/null
+++ b/frontend/app/screens/walkthroughs/walkthrough2.js
@@ -0,0 +1,46 @@
+import React from 'react';
+import {
+ View,
+ Image,
+ Dimensions,
+} from 'react-native';
+import {
+ RkText,
+ RkStyleSheet,
+ RkTheme,
+} from 'react-native-ui-kitten';
+
+export class Walkthrough2 extends React.Component {
+ getThemeImageSource = (theme) => (
+ theme.name === 'light' ?
+ require('../../assets/images/screensImage.png') : require('../../assets/images/screensImageDark.png')
+ );
+
+ renderImage = () => (
+ <Image
+ style={{ width: Dimensions.get('window').width }}
+ source={this.getThemeImageSource(RkTheme.current)}
+ />
+ );
+
+ render = () => (
+ <View style={styles.screen}>
+ {this.renderImage()}
+ <RkText rkType='header2' style={styles.text}>Share info about ecological problems around!</RkText>
+ </View>
+ )
+}
+
+const styles = RkStyleSheet.create(theme => ({
+ screen: {
+ backgroundColor: theme.colors.screen.base,
+ alignItems: 'center',
+ justifyContent: 'center',
+ flex: 1,
+ },
+ text: {
+ textAlign: 'center',
+ marginTop: 20,
+ marginHorizontal: 30,
+ },
+}));
diff --git a/frontend/app/screens/walkthroughs/walkthroughScreen.js b/frontend/app/screens/walkthroughs/walkthroughScreen.js
new file mode 100644
index 0000000..f0c21b5
--- /dev/null
+++ b/frontend/app/screens/walkthroughs/walkthroughScreen.js
@@ -0,0 +1,61 @@
+import React from 'react';
+import { View } from 'react-native';
+import { RkStyleSheet } from 'react-native-ui-kitten';
+import {
+ GradientButton,
+ PaginationIndicator,
+} from '../../components/';
+import { Walkthrough } from '../../components/walkthrough';
+import { Walkthrough1 } from './walkthrough1';
+import { Walkthrough2 } from './walkthrough2';
+import NavigationType from '../../config/navigation/propTypes';
+
+export class WalkthroughScreen extends React.Component {
+ static propTypes = {
+ navigation: NavigationType.isRequired,
+ };
+ static navigationOptions = {
+ header: null,
+ };
+
+ state = {
+ index: 0,
+ };
+
+ onWalkThroughIndexChanged = (index) => {
+ this.setState({ index });
+ };
+
+ onStartButtonPressed = () => {
+ this.props.navigation.navigate('Articles2');
+ };
+
+ render = () => (
+ <View style={styles.screen}>
+ <Walkthrough onChanged={this.onWalkThroughIndexChanged}>
+ <Walkthrough1 />
+ <Walkthrough2 />
+ </Walkthrough>
+ <PaginationIndicator length={2} current={this.state.index} />
+ <GradientButton
+ rkType='large'
+ style={styles.button}
+ text="GET STARTED"
+ onPress={this.onStartButtonPressed}
+ />
+ </View>
+ )
+}
+
+const styles = RkStyleSheet.create(theme => ({
+ screen: {
+ backgroundColor: theme.colors.screen.base,
+ paddingVertical: 28,
+ alignItems: 'center',
+ flex: 1,
+ },
+ button: {
+ marginTop: 25,
+ marginHorizontal: 16,
+ },
+}));