import * as React from 'react'; import { connect } from "react-redux"; import { View, Text, ImageBackground, } from 'react-native'; import { Button, Box } from 'native-base'; import NetInfo from "../../components/netstatus"; import CustomIcon from '../../components/icons.js'; import Theme from '../../components/theme.style.js'; import DB from '../../components/storage/'; import moment from 'moment'; import QRCode from 'react-native-qrcode-svg'; import Barcode from 'react-native-barcode-builder'; class MyCard extends React.Component { constructor(props) { super(props) } state = { session: null, userProfile: null, userDetails: {}, sliderIndex: 0, isConnected: false } componentDidMount() { NetInfo.netstatus(isConnected => this.setState({ isConnected: isConnected })) this.init() } componentWillUnmount() { } init = async () => { const USERPROFILE = await DB.profile() const SESSION = await DB.session() this.setState({ userProfile: USERPROFILE, session: SESSION, userDetails: USERPROFILE.data }) } renderImage = () => { return {uri: this.state.userProfile?.data?.card_image} } renderName = () => { return Theme.formatter.NAME(this.state.userProfile?.data || null) } renderCardNumber = () => { return Theme.formatter.CN(this.state.userProfile?.data?.card_number || "") } renderExpiry = () => { return new moment(new Date(this.state.userProfile?.data?.expiry_date)).format("MM/YY") } slide = (dir) => { if(dir == "+") { if(this.state.sliderIndex == 1) this.setState({ sliderIndex: 0 }) else this.setState({ sliderIndex: 1 }) } else { if(this.state.sliderIndex == 0) this.setState({ sliderIndex: 1 }) else this.setState({ sliderIndex: 0 }) } } getFontColor = (type) => { if(type == 'PRIVATEB' || type == 'PARTNERLTW' || type == 'PARTNERMS') return 'black' else return 'black' } render() { return ( {this.renderName() || null} {this.renderCardNumber() || null} Card Expiry {this.renderExpiry()} {this.state.sliderIndex == 0 ? : } ); } } const mapStateToProps = (state) => { return { app_theme: state.appThemeReducer.theme } } export default connect(mapStateToProps, null)(MyCard);