Commit bd1a3c70 by Giang Tran

fix bug language

parent 0f249e58
......@@ -132,8 +132,8 @@ android {
applicationId "com.dcv.invest"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 2
versionName "1.4"
versionCode 11
versionName "1.5"
vectorDrawables.useSupportLibrary = true
}
splits {
......
......@@ -903,7 +903,7 @@
CODE_SIGN_ENTITLEMENTS = Invest/Invest.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2;
CURRENT_PROJECT_VERSION = 4;
DEVELOPMENT_TEAM = MXZ24GRH48;
ENABLE_BITCODE = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
......@@ -912,7 +912,7 @@
);
INFOPLIST_FILE = Invest/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 2.0;
MARKETING_VERSION = 2.1;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
......@@ -937,11 +937,11 @@
CODE_SIGN_ENTITLEMENTS = Invest/Invest.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2;
CURRENT_PROJECT_VERSION = 4;
DEVELOPMENT_TEAM = MXZ24GRH48;
INFOPLIST_FILE = Invest/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 2.0;
MARKETING_VERSION = 2.1;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
......
......@@ -38,8 +38,13 @@ import {getOTPApi} from '../../../apis/Functions/users';
import {OTPWALLET} from '../../../routers/ScreenNames';
import {showAlert, TYPE} from '../../../components/DropdownAlert';
var radio_props = [
{label: I18n.t('FromWallet'), value: 'WALLET'},
{label: I18n.t('FromCQGAccount'), value: 'INVESTMENT'},
{label: 'Từ ví', value: 'WALLET'},
{label: 'Từ tài khoản CQG', value: 'INVESTMENT'},
];
var radio_propsEN = [
{label: 'From wallet', value: 'WALLET'},
{label: 'From CQG Account', value: 'INVESTMENT'},
];
const {width} = Dimensions.get('window');
......@@ -161,7 +166,11 @@ const WalletWithdraw = (props) => {
</Text>
{/* <View style={styles.row}> */}
<RadioForm
radio_props={radio_props}
radio_props={
props.language.language == 'vi'
? radio_props
: radio_propsEN
}
labelStyle={{fontSize: getFontXD(42)}}
formHorizontal={true}
style={styles.row}
......@@ -273,6 +282,7 @@ const styles = StyleSheet.create({
const mapStateToProps = (state) => {
return {
user: state.userReducer,
language: state.languageReducer,
};
};
export default connect(mapStateToProps, {
......
......@@ -5,212 +5,220 @@ import HeaderBack from '../../components/Header/HeaderBack';
import PickerItem from '../../components/Picker/PickerItem';
import I18n from '../../helper/i18/i18n';
import AppText from '../../components/AppText';
import {floatToPriceVnd, getFontXD, HEIGHTXD, toPriceVnd, WIDTHXD} from '../../Config/Functions';
import {
floatToPriceVnd,
getFontXD,
HEIGHTXD,
toPriceVnd,
WIDTHXD,
} from '../../Config/Functions';
import R from '../../assets/R';
import {getUnitList} from '../../apis/Functions/Transaction';
import {showAlert, TYPE} from '../../components/DropdownAlert';
import {hideLoading, showLoading} from '../../actions/loadingAction';
import {connect} from 'react-redux';
const ConvertUnit = (props) => {
const [fromUnitList, setFromUnitList] = useState([]);
const [toUnitList, setToUnitList] = useState([]);
const [toUnit, setToUnit] = useState();
const [fromUnit, setFromUnit] = useState();
const [number, setNumber] = useState(null);
const [rateItem, setRateItem] = useState({
value_one: 0.025000000373,
value_two: 0,
name: 'Kg,',
const [fromUnitList, setFromUnitList] = useState([]);
const [toUnitList, setToUnitList] = useState([]);
const [toUnit, setToUnit] = useState();
const [fromUnit, setFromUnit] = useState();
const [number, setNumber] = useState(null);
const [rateItem, setRateItem] = useState({
value_one: 0.025000000373,
value_two: 0,
name: 'Kg,',
});
const [result, setResult] = useState();
useEffect(() => {
getDataUnit();
}, []);
useEffect(() => {
calcultorResult();
}, [number, fromUnit, toUnit]);
const getDataUnit = async () => {
props.showLoading();
const res = await getUnitList({
platform: Platform.OS,
});
const [result, setResult] = useState();
useEffect(() => {
getDataUnit();
}, []);
useEffect(() => {
calcultorResult();
}, [number, fromUnit, toUnit]);
const getDataUnit = async () => {
props.showLoading();
const res = await getUnitList({
platform: Platform.OS,
});
if (res.status == 200 && res.data.code == 200) {
setFromUnitList(res.data.data);
setFromUnit(res.data.data[0]);
onChangeFromUnit('', res.data.data[0])
} else {
showAlert(TYPE.ERROR, I18n.t('Notification'), I18n.t('Can_not_get_data'));
}
props.hideLoading();
};
const onChangeNumber = (string) => {
let number = string.toString().split(',').join('');
setNumber(number);
};
const onChangeFromUnit = (value, item) => {
setFromUnit(item);
let toUnit = [];
item.rates.map((rateItem) => {
toUnit.push({
id: rateItem.to_unit_id,
value: rateItem.to_unit.name,
name: rateItem.to_unit.name,
rate: rateItem.value_one > 0 ? rateItem.value_one : rateItem.value_two,
});
});
setToUnitList(toUnit);
setToUnit(toUnit[0]);
};
const onChangeToUnit = (value, item) => {
setToUnit(item);
};
const calcultorResult = () => {
if (number && number != '' && parseFloat(number) > 0) {
let result = parseFloat(number) * toUnit.rate;
setResult(`${floatToPriceVnd(number.toString())} ${fromUnit.name} = ${floatToPriceVnd(result.toString())} ${toUnit.name}`);
} else {
setResult('')
}
};
return (
<View style={{flex: 1}}>
<HeaderBack title={'ConvertUnit'}/>
<View style={{flex: 1, paddingTop: 20, paddingHorizontal: 20}}>
<AppText style={styles.txtTitle} i18nKey={'Count'}/>
<View style={styles.Item}>
<View style={styles.wrap}>
<TextInput
onChangeText={(val) => onChangeNumber(val)}
keyboardType={'number-pad'}
style={styles.wrapInput}
maxLength={12}
value={floatToPriceVnd(number)}
/>
</View>
</View>
<View style={styles.Item}>
<View style={styles.wrap}>
<PickerItem
width={WIDTHXD(480)}
data={fromUnitList}
defaultValue={fromUnit?.name}
value={fromUnit?.name}
onValueChange={(value, item) => {
onChangeFromUnit(value, item);
}}
/>
{/*<TouchableOpacity>*/}
{/* <Icon name={'exchange'} size={30} color={R.colors.black} />*/}
{/*</TouchableOpacity>*/}
<PickerItem
width={WIDTHXD(480)}
data={toUnitList}
defaultValue={toUnit?.name}
value={toUnit?.name}
onValueChange={(value, item) => {
onChangeToUnit(value, item);
}}
/>
</View>
</View>
if (res.status == 200 && res.data.code == 200) {
setFromUnitList(res.data.data);
setFromUnit(res.data.data[0]);
onChangeFromUnit('', res.data.data[0]);
} else {
showAlert(TYPE.ERROR, I18n.t('Notification'), I18n.t('Can_not_get_data'));
}
props.hideLoading();
};
const onChangeNumber = (string) => {
let number = string.toString().split(',').join('');
setNumber(number);
};
const onChangeFromUnit = (value, item) => {
setFromUnit(item);
let toUnit = [];
item.rates.map((rateItem) => {
toUnit.push({
id: rateItem.to_unit_id,
value: rateItem.to_unit.name,
name: rateItem.to_unit.name,
rate: rateItem.value_one > 0 ? rateItem.value_one : rateItem.value_two,
});
});
setToUnitList(toUnit);
setToUnit(toUnit[0]);
};
const onChangeToUnit = (value, item) => {
setToUnit(item);
};
const calcultorResult = () => {
if (number && number != '' && parseFloat(number) > 0) {
let result = parseFloat(number) * toUnit.rate;
setResult(
`${floatToPriceVnd(number.toString())} ${
fromUnit.name
} = ${floatToPriceVnd(result.toString())} ${toUnit.name}`,
);
} else {
setResult('');
}
};
return (
<View style={{flex: 1}}>
<HeaderBack title={'ConvertUnit'} />
<View style={{flex: 1, paddingTop: 20, paddingHorizontal: 20}}>
<AppText style={styles.txtTitle} i18nKey={'Count'} />
<View style={styles.Item}>
<View style={styles.wrap}>
<TextInput
onChangeText={(val) => onChangeNumber(val)}
keyboardType={'number-pad'}
style={styles.wrapInput}
maxLength={12}
value={floatToPriceVnd(number)}
/>
</View>
</View>
<Text style={styles.txtResult}>{result}</Text>
</View>
<View style={styles.Item}>
<View style={styles.wrap}>
<PickerItem
width={WIDTHXD(480)}
data={fromUnitList}
defaultValue={fromUnit?.name}
value={fromUnit?.name}
onValueChange={(value, item) => {
onChangeFromUnit(value, item);
}}
/>
{/*<TouchableOpacity>*/}
{/* <Icon name={'exchange'} size={30} color={R.colors.black} />*/}
{/*</TouchableOpacity>*/}
<PickerItem
width={WIDTHXD(480)}
data={toUnitList}
defaultValue={toUnit?.name}
value={toUnit?.name}
onValueChange={(value, item) => {
onChangeToUnit(value, item);
}}
/>
</View>
</View>
);
<Text style={styles.txtResult}>{result}</Text>
</View>
</View>
);
};
const styles = StyleSheet.create({
txtTitle: {
fontSize: getFontXD(42),
color: R.colors.color777,
marginBottom: 5,
},
note: {
fontSize: getFontXD(36),
fontStyle: 'italic',
marginTop: 10,
},
row: {
height: HEIGHTXD(109),
width: '80%',
justifyContent: 'space-between',
marginVertical: 5,
paddingHorizontal: 10,
},
footer: {
alignItems: 'center',
justifyContent: 'center',
marginTop: 40,
},
btnContainer: {
width: WIDTHXD(428),
height: HEIGHTXD(120),
justifyContent: 'center',
alignItems: 'center',
backgroundColor: R.colors.main,
borderRadius: 10,
},
txtBtn: {
fontSize: getFontXD(48),
color: R.colors.white,
fontWeight: '600',
},
wrapInput: {
width: '100%',
backgroundColor: R.colors.white,
height: HEIGHTXD(109),
fontSize: getFontXD(42),
borderRadius: 5,
paddingHorizontal: 10,
paddingVertical: 0,
shadowColor: '#000',
shadowOffset: {
width: 0,
height: 1,
},
shadowOpacity: 0.2,
shadowRadius: 1.41,
elevation: 2,
},
wrap: {
flexDirection: 'row',
alignItems: 'center',
justifyContent: 'space-between',
},
Item: {
marginBottom: 20,
},
txtNote: {
fontSize: getFontXD(36),
textAlign: 'right',
marginTop: 10,
},
txtResult: {
fontSize: getFontXD(52),
color: R.colors.black,
fontWeight: '600',
textAlign: 'center',
marginTop: 20,
txtTitle: {
fontSize: getFontXD(42),
color: R.colors.color777,
marginBottom: 5,
},
note: {
fontSize: getFontXD(36),
fontStyle: 'italic',
marginTop: 10,
},
row: {
height: HEIGHTXD(109),
width: '80%',
justifyContent: 'space-between',
marginVertical: 5,
paddingHorizontal: 10,
},
footer: {
alignItems: 'center',
justifyContent: 'center',
marginTop: 40,
},
btnContainer: {
width: WIDTHXD(428),
height: HEIGHTXD(120),
justifyContent: 'center',
alignItems: 'center',
backgroundColor: R.colors.main,
borderRadius: 10,
},
txtBtn: {
fontSize: getFontXD(48),
color: R.colors.white,
fontWeight: '600',
},
wrapInput: {
width: '100%',
backgroundColor: R.colors.white,
height: HEIGHTXD(109),
fontSize: getFontXD(42),
borderRadius: 5,
paddingHorizontal: 10,
paddingVertical: 0,
shadowColor: '#000',
shadowOffset: {
width: 0,
height: 1,
},
shadowOpacity: 0.2,
shadowRadius: 1.41,
elevation: 2,
color: R.colors.black,
},
wrap: {
flexDirection: 'row',
alignItems: 'center',
justifyContent: 'space-between',
},
Item: {
marginBottom: 20,
},
txtNote: {
fontSize: getFontXD(36),
textAlign: 'right',
marginTop: 10,
},
txtResult: {
fontSize: getFontXD(52),
color: R.colors.black,
fontWeight: '600',
textAlign: 'center',
marginTop: 20,
},
});
const mapStateToProps = (state) => {
return {};
return {};
};
export default connect(mapStateToProps, {
showLoading,
hideLoading,
showLoading,
hideLoading,
})(ConvertUnit);
......@@ -56,6 +56,11 @@ const ExchangeRate = (props) => {
} else if (!priceExchange) setUsdTan('');
};
const onClick = () => {
setPriceExchange('');
setUsdTan('');
};
return (
<View style={{flex: 1}}>
<HeaderBack title={'ExchangeRate'} />
......@@ -76,6 +81,7 @@ const ExchangeRate = (props) => {
<TextField
isNumber={true}
maxLength={12}
value={priceExchange}
onChangeText={(val) => setPriceExchange(val)}
title={I18n.t('ConversionPrice')}
/>
......@@ -85,7 +91,7 @@ const ExchangeRate = (props) => {
title={I18n.t('ConvertUSD')}
/>
<View style={styles.footer}>
<TouchableOpacity style={styles.btnContainer}>
<TouchableOpacity onPress={onClick} style={styles.btnContainer}>
<AppText style={styles.txtBtn} i18nKey={'Delete'} />
</TouchableOpacity>
</View>
......
import React, {useEffect, useState} from 'react';
import {
View,
Text,
Modal,
TouchableOpacity,
StyleSheet,
Image,
TouchableWithoutFeedback,
Linking, Platform,
View,
Text,
Modal,
TouchableOpacity,
StyleSheet,
Image,
TouchableWithoutFeedback,
Linking,
Platform,
} from 'react-native';
import R from '../../assets/R';
import {getFontXD, getHeight, getWidth, HEIGHTXD, WIDTHXD} from '../../Config/Functions';
import {
getFontXD,
getHeight,
getWidth,
HEIGHTXD,
WIDTHXD,
} from '../../Config/Functions';
import I18n from '../../helper/i18/i18n';
import DeviceInfo from 'react-native-device-info';
import {getNewestVersionInfo} from '../../apis/Functions/users';
import InAppUpdate from '../../helper/InAppUpdate';
import {connect} from 'react-redux';
const VersionChecker = (props) => {
const [visible, setVisible] = useState(false);
const [isForceUpdate, setIsForceUpdate] = useState(false);
const [version, setVersion] = useState('1.0');
useEffect(() => {
checkVersion();
}, []);
const checkVersion = async () => {
const verCurrent = DeviceInfo.getVersion();
const res = await getNewestVersionInfo({
platform: Platform.OS,
});
if ((res.data.code = 200 && res.data.data)) {
console.log(res);
if (res.data.data[0].version_name !== verCurrent || res.data.data[0].build.toString() !== DeviceInfo.getBuildNumber) {
setVersion(res.data.data[0].version_name);
setVisible(true);
setIsForceUpdate(res.data.data[0].is_require_update == 0 ? false : true);
}
}
};
const setVisibleModal = (visible, version, isForceUpdate) => {
setVisible(visible);
setVersion(version);
setIsForceUpdate(isForceUpdate);
};
const _renderDivider = () => <View style={styles.dividerStyle}/>;
const onOutsidePressed = () => {
setVisible(false);
};
const onUpdatePressed = async () => {
try {
if (Platform.OS === 'ios') {
Linking.openURL('itms-apps://itunes.apple.com/us/app/dcv-invest/id1556621903?l=id');
} else {
// try {
// InAppUpdate.checkUpdate()
// } catch(e) {
// console.log(e)
// }
Linking.openURL('https://play.google.com/store/apps/details?id=com.dcv.invest');
}
} catch (error) {
}
};
const onRequestClose = () => null;
const renderBackdrop = () => {
return (
<View
style={{
backgroundColor: 'rgba(0,0,0,0.30)',
// backgroundColor: 'red',
position: 'absolute',
top: 0,
bottom: 0,
left: 0,
right: 0,
width: getWidth(),
height: getHeight(),
}}
/>
const [visible, setVisible] = useState(false);
const [isForceUpdate, setIsForceUpdate] = useState(false);
const [version, setVersion] = useState('1.0');
useEffect(() => {
checkVersion();
}, []);
const checkVersion = async () => {
const verCurrent = DeviceInfo.getVersion();
const res = await getNewestVersionInfo({
platform: Platform.OS,
});
if ((res.data.code = 200 && res.data.data)) {
console.log(res);
if (
res.data.data[0].version_name !== verCurrent ||
res.data.data[0].build.toString() !== DeviceInfo.getBuildNumber
) {
setVersion(res.data.data[0].version_name);
setVisible(true);
setIsForceUpdate(
res.data.data[0].is_require_update == 0 ? false : true,
);
};
}
}
};
const setVisibleModal = (visible, version, isForceUpdate) => {
setVisible(visible);
setVersion(version);
setIsForceUpdate(isForceUpdate);
};
const _renderDivider = () => <View style={styles.dividerStyle} />;
const cancelUpdate = () => {
setVisible(false);
};
const onOutsidePressed = () => {
setVisible(false);
};
const onUpdatePressed = async () => {
try {
if (Platform.OS === 'ios') {
Linking.openURL(
'itms-apps://itunes.apple.com/us/app/dcv-invest/id1556621903?l=id',
);
} else {
// try {
// InAppUpdate.checkUpdate()
// } catch(e) {
// console.log(e)
// }
Linking.openURL(
'https://play.google.com/store/apps/details?id=com.dcv.invest',
);
}
} catch (error) {}
};
const onRequestClose = () => null;
const renderBackdrop = () => {
return (
<Modal
onRequestClose={() => onRequestClose()}
transparent
animationType="fade"
style={{position: 'absolute'}}
visible={visible}
>
{renderBackdrop()}
<View pointerEvents="box-none" style={styles.containerStyle}>
<View style={styles.imageUpgradeContainer} zIndex={100}>
<Image
source={R.images.iconUpgrade}
style={[styles.imageUpgradeStyle, {tintColor: R.colors.main}]}/>
</View>
<View style={styles.contentContainerStyle}>
<Text style={styles.titleStyle}>{I18n.t('Update')}</Text>
<Text style={styles.versionLabelStyle}>
{I18n.t('Version')}
{': '}
{version}
</Text>
<Text style={styles.descStyle}>{I18n.t('UpdateDescription')}</Text>
{_renderDivider()}
{isForceUpdate ?
<TouchableOpacity onPress={() => onUpdatePressed()} style={styles.notNowContainerStyle}>
<Text
style={[styles.textNotNowStyle, {color: R.colors.main}]}>{I18n.t('Update')}</Text>
</TouchableOpacity>
:
<View style={[styles.notNowContainerStyle, {
flexDirection: 'row',
marginHorizontal: WIDTHXD(100),
}]}>
<TouchableOpacity onPress={() => cancelUpdate()}
style={[styles.btnButton, {paddingRight: WIDTHXD(60) }]}>
<Text
style={[styles.textNotNowStyle, {color: R.colors.color777, textAlign: 'right'}]}>{I18n.t('Cancel')}</Text>
</TouchableOpacity>
<View style={styles.dividerStyleVertical}></View>
<TouchableOpacity onPress={() => onUpdatePressed()}
style={[styles.btnButton, {paddingLeft: WIDTHXD(60)}]}>
<Text
style={[styles.textNotNowStyle, {color: R.colors.main, textAlign: 'left'}]}>{I18n.t('Update')}</Text>
</TouchableOpacity>
</View>
}
</View>
</View>
</Modal>
<View
style={{
backgroundColor: 'rgba(0,0,0,0.30)',
// backgroundColor: 'red',
position: 'absolute',
top: 0,
bottom: 0,
left: 0,
right: 0,
width: getWidth(),
height: getHeight(),
}}
/>
);
};
const cancelUpdate = () => {
setVisible(false);
};
return (
<Modal
onRequestClose={() => onRequestClose()}
transparent
animationType="fade"
style={{position: 'absolute'}}
visible={visible}>
{renderBackdrop()}
<View pointerEvents="box-none" style={styles.containerStyle}>
<View style={styles.imageUpgradeContainer} zIndex={100}>
<Image
source={R.images.iconUpgrade}
style={[styles.imageUpgradeStyle, {tintColor: R.colors.main}]}
/>
</View>
<View style={styles.contentContainerStyle}>
<Text style={styles.titleStyle}>
{props.language.language == 'vi' ? 'Cập nhật' : 'Update'}
</Text>
<Text style={styles.versionLabelStyle}>
{I18n.t('Version')}
{': '}
{version}
</Text>
<Text style={styles.descStyle}>
{' '}
{props.language.language == 'vi'
? 'Đã có phiên bản DCVInvest mới. Cập nhật ngay để tiếp tục sử dụng và trải nghiệm những tính năng mới nhất của hệ thống!'
: 'A new version of DCVInvest is available. Update now to continue using and experiencing the latest system features!'}
</Text>
{_renderDivider()}
{isForceUpdate ? (
<TouchableOpacity
onPress={() => onUpdatePressed()}
style={styles.notNowContainerStyle}>
<Text style={[styles.textNotNowStyle, {color: R.colors.main}]}>
{props.language.language == 'vi' ? 'Cập nhật' : 'Update'}
</Text>
</TouchableOpacity>
) : (
<View
style={[
styles.notNowContainerStyle,
{
flexDirection: 'row',
marginHorizontal: WIDTHXD(100),
},
]}>
<TouchableOpacity
onPress={() => cancelUpdate()}
style={[styles.btnButton, {paddingRight: WIDTHXD(60)}]}>
<Text
style={[
styles.textNotNowStyle,
{color: R.colors.color777, textAlign: 'right'},
]}>
{props.language.language == 'vi' ? 'Bỏ qua' : 'Cancel'}
</Text>
</TouchableOpacity>
<View style={styles.dividerStyleVertical}></View>
<TouchableOpacity
onPress={() => onUpdatePressed()}
style={[styles.btnButton, {paddingLeft: WIDTHXD(60)}]}>
<Text
style={[
styles.textNotNowStyle,
{color: R.colors.main, textAlign: 'left'},
]}>
{I18n.t('Update')}
</Text>
</TouchableOpacity>
</View>
)}
</View>
</View>
</Modal>
);
};
const styles = StyleSheet.create({
imageUpgradeStyle: {
width: 50,
height: 50,
tintColor: R.colors.primaryColor,
},
imageUpgradeContainer: {
width: 80,
height: 80,
borderRadius: 40,
backgroundColor: 'white',
alignItems: 'center',
justifyContent: 'center',
},
containerStyle: {
flex: 1,
width: getWidth() * 0.8,
alignSelf: 'center',
alignItems: 'center',
justifyContent: 'center',
},
contentContainerStyle: {
marginTop: -40,
paddingTop: 40,
width: getWidth() * 0.9,
backgroundColor: 'white',
alignItems: 'center',
justifyContent: 'center',
borderRadius: 15,
},
logoStyle: {
width: 65,
height: 65,
marginVertical: 20,
},
titleStyle: {
fontWeight: '600',
fontSize: 20,
color: 'black',
paddingHorizontal: 8,
textAlign: 'center',
},
versionLabelStyle: {
fontSize: 14,
color: R.colors.grey600,
marginTop: 5,
marginBottom: 15,
paddingHorizontal: 8,
textAlign: 'center',
},
descStyle: {
fontSize: getFontXD(46),
color: R.colors.grey900,
marginBottom: 20,
paddingHorizontal: 10,
textAlign: 'center',
},
notNowContainerStyle: {
height: HEIGHTXD(160),
width: '100%',
alignItems: 'center',
justifyContent: 'center',
},
btnButton: {
flex: 1,
},
textNotNowStyle: {
fontSize: getFontXD(46),
width: '100%',
textAlign: 'center',
color: R.colors.primaryColor,
},
starContainer: {
flexDirection: 'row',
width: '100%',
justifyContent: 'center',
alignItems: 'center',
height: 45,
},
dividerStyle: {
height: 0.5,
width: '100%',
backgroundColor: R.colors.borderC,
},
dividerStyleVertical: {
height: HEIGHTXD(160),
width: 0.5,
backgroundColor: R.colors.borderC,
},
imageUpgradeStyle: {
width: 50,
height: 50,
tintColor: R.colors.primaryColor,
},
imageUpgradeContainer: {
width: 80,
height: 80,
borderRadius: 40,
backgroundColor: 'white',
alignItems: 'center',
justifyContent: 'center',
},
containerStyle: {
flex: 1,
width: getWidth() * 0.8,
alignSelf: 'center',
alignItems: 'center',
justifyContent: 'center',
},
contentContainerStyle: {
marginTop: -40,
paddingTop: 40,
width: getWidth() * 0.9,
backgroundColor: 'white',
alignItems: 'center',
justifyContent: 'center',
borderRadius: 15,
},
logoStyle: {
width: 65,
height: 65,
marginVertical: 20,
},
titleStyle: {
fontWeight: '600',
fontSize: 20,
color: 'black',
paddingHorizontal: 8,
textAlign: 'center',
},
versionLabelStyle: {
fontSize: 14,
color: R.colors.grey600,
marginTop: 5,
marginBottom: 15,
paddingHorizontal: 8,
textAlign: 'center',
},
descStyle: {
fontSize: getFontXD(46),
color: R.colors.grey900,
marginBottom: 20,
paddingHorizontal: 10,
textAlign: 'center',
},
notNowContainerStyle: {
height: HEIGHTXD(160),
width: '100%',
alignItems: 'center',
justifyContent: 'center',
},
btnButton: {
flex: 1,
},
textNotNowStyle: {
fontSize: getFontXD(46),
width: '100%',
textAlign: 'center',
color: R.colors.primaryColor,
},
starContainer: {
flexDirection: 'row',
width: '100%',
justifyContent: 'center',
alignItems: 'center',
height: 45,
},
dividerStyle: {
height: 0.5,
width: '100%',
backgroundColor: R.colors.borderC,
},
dividerStyleVertical: {
height: HEIGHTXD(160),
width: 0.5,
backgroundColor: R.colors.borderC,
},
});
export default VersionChecker;
const mapStateToProps = (state) => {
return {
language: state.languageReducer,
};
};
export default connect(mapStateToProps, {})(VersionChecker);
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