import React, { Component } from 'react'; import { StyleSheet, View, Image, StatusBar, Alert, FlatList, TouchableOpacity, ActivityIndicator, Platform, ProgressBarAndroid, Text } from 'react-native'; import Icon from 'react-native-vector-icons/MaterialCommunityIcons'; const route = require('./../../route.json'); let slugify = require('slugify'); import I18n from 'react-native-i18n' import * as Utils from '../../utils/DeviceUtils'; import { Images } from '../../config/Images'; import { Color } from '../../config/Color'; import { baseUrl } from '../../webservice/IlinkConstants'; import { IlinkEmitter } from "../../utils/events"; import { Provider, Appbar } from 'react-native-paper'; import { readUser } from '../../webservice/AuthApi'; import { FontWeight, Typography } from '../../config/typography'; import LottieView from 'lottie-react-native'; import { isIlinkWorldWallet, optionDepotScreen } from '../../utils/UtilsFunction'; import chunk from 'lodash/chunk'; export default class WalletOptionSelect extends Component { constructor(props) { super(props); IlinkEmitter.on("langueChange", this.updateLangue.bind(this)); 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, hasWallet: this.props.navigation.state.params.hasOwnProperty('wallet') } } static navigationOptions = ({ navigation }) => ({ header: null, headerMode: 'none', headerTitle: null, activeColor: '#f0edf6', inactiveColor: '#3e2465', barStyle: { backgroundColor: '#694fad' }, drawerLabel: I18n.t('CREDIT_MANAGE'), drawerIcon: ({ tintColor }) => ( ) }); renderItem = (options, isOneElement) => ( isOneElement ? <> { /* this.props.navigation.push(options.screen) */ }} activeOpacity={0.9}> {options.title} : { /* this.props.navigation.push(options.screen) */ }} activeOpacity={0.9}> {options.title} ); updateLangue() { this.props.navigation.setParams({ name: I18n.t('WALLET') }) this.forceUpdate(); } render() { return ( { this.props.navigation.pop() }} /> {I18n.t('TRANSACTIONS')} { chunk(this.state.options, 2).map((item) => ( { item.length === 1 ? item.map((wallet) => ( this.renderItem(wallet, true) )) : item.map((wallet) => ( this.renderItem(wallet, false) )) } )) } {/* index.toString()} renderItem={({ item, index }) => ( { if (this.state.hasWallet) { this.props.navigation.push(item.screen, { wallet: this.props.navigation.state.params.wallet, onGoBack: () => this.props.navigation.state.params.onGoBack() }) } else { this.props.navigation.push(item.screen) } }}> {item.title} )} /> */} ); } } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: Color.containerBackgroundColor, paddingHorizontal: 20, }, 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, } });