import React, { Component } from 'react'; import { FlatList, Image, StatusBar, StyleSheet, Text, TouchableOpacity, View } from 'react-native'; import { ScrollView } from 'react-native-gesture-handler'; import I18n from 'react-native-i18n'; import { Appbar, Provider } from 'react-native-paper'; import Icon from 'react-native-vector-icons/MaterialCommunityIcons'; import { Color } from '../../config/Color'; import { Typography } from '../../config/typography'; import * as Utils from '../../utils/DeviceUtils'; import { IlinkEmitter } from "../../utils/events"; const route = require('../../route.json'); let slugify = require('slugify'); export default class OperateurOptionSelect extends Component { constructor(props) { super(props); IlinkEmitter.on("langueChange", this.updateLangue.bind(this)); console.log("OPERATEUR OPTION PROPS", this.props); this.state = { options: this.props.navigation.state.params.optionSelect.options, title: this.props.navigation.state.params.optionSelect.title, subTitle: this.props.navigation.state.params.optionSelect.subTitle, } } updateLangue() { this.props.navigation.setParams({ name: I18n.t('WALLET') }) this.forceUpdate(); } static navigationOptions = ({ navigation }) => ({ header: null, headerMode: 'none', headerTitle: null, activeColor: '#f0edf6', inactiveColor: '#3e2465', barStyle: { backgroundColor: '#694fad' }, drawerLabel: I18n.t('CREDIT_MANAGE'), drawerIcon: ({ tintColor }) => ( ) }); redirectToRoute = (item) => { switch (item.type) { case 'PAIEMENT_ECOLE': this.props.navigation.push(item.screen, { title: item.title }); break; default: this.props.navigation.push(item.screen, { title: item.title }); break; } } renderItem = (item, index) => { return ( { }}> {item.title} {item.title} ) } renderList = () => { const { options } = this.state; return ( { options.map((item, index) => ( this.renderItem(item, index) )) } ); } render() { return ( { this.props.navigation.pop() }} /> index.toString()} renderItem={({ item, index }) => ( { this.redirectToRoute(item); }}> {item.title} )} /> ); } } const styles = StyleSheet.create({ container: { flex: 1, }, paymentItem: { flexDirection: "row", alignItems: "center", justifyContent: "space-between", borderBottomWidth: 1, paddingVertical: 5, width: "100%", marginBottom: 15 }, iconContent: { width: 60, marginRight: 10, alignItems: "center" }, item: { paddingVertical: 15, borderBottomWidth: 1, flexDirection: "row", justifyContent: "space-between", alignItems: "center" }, /* item: { paddingVertical: 15, borderBottomWidth: 1, flexDirection: "row", justifyContent: "space-between", alignItems: "center" }, */ lottie: { width: 540, height: 240 }, checkDefault: { flexDirection: "row", justifyContent: "space-between", alignItems: "center", borderBottomWidth: 1, paddingVertical: 10, marginTop: 5 }, transactionContainer: { flexDirection: 'row', paddingTop: 10, }, containerTouch: { flex: 1, flexDirection: 'row', alignItems: 'center', shadowColor: Color.borderColor, borderColor: Color.borderColor, borderWidth: 0.5, shadowOffset: { width: 1.5, height: 1.5 }, shadowOpacity: 1.0, elevation: 5, borderRadius: 10, backgroundColor: Color.cardBackgroundColor }, contain: { flexDirection: 'row', justifyContent: 'space-between', }, imageBanner: { marginTop: 15, marginLeft: 5, width: Utils.scaleWithPixel(30), height: Utils.scaleWithPixel(30) }, content: { height: Utils.scaleWithPixel(60), paddingHorizontal: 10, justifyContent: 'space-between', alignItems: 'flex-start', flex: 1, }, contentTitle: { paddingTop: 12, } });