adhesion ok
This commit is contained in:
parent
e43d6dc6b1
commit
5215f637fe
70
App.js
70
App.js
|
@ -77,6 +77,7 @@ import { bindActionCreators } from 'redux';
|
||||||
import DemandValidationGroup from './screens/nano-credit/DemandGroupNanoCredit';
|
import DemandValidationGroup from './screens/nano-credit/DemandGroupNanoCredit';
|
||||||
import DemandGroupNanoCreditDetail from './screens/nano-credit/DemandGroupNanoCreditDetail';
|
import DemandGroupNanoCreditDetail from './screens/nano-credit/DemandGroupNanoCreditDetail';
|
||||||
import NavigationService from './utils/NavigationService';
|
import NavigationService from './utils/NavigationService';
|
||||||
|
import AdhererGroupNanoCredit from './screens/nano-credit/AdhererGroupNanoCredit';
|
||||||
|
|
||||||
const instructions = Platform.select({
|
const instructions = Platform.select({
|
||||||
ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu',
|
ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu',
|
||||||
|
@ -161,7 +162,8 @@ const AppStack = createDrawerNavigator({
|
||||||
/>)
|
/>)
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
demandeValidationGroupe: DemandGroupNanoCreditDetail
|
demandeValidationGroupe: DemandGroupNanoCreditDetail,
|
||||||
|
adhererGroupNanoCredit: AdhererGroupNanoCredit
|
||||||
|
|
||||||
})
|
})
|
||||||
}, { contentComponent: OptionsMenu, headerMode: 'none', contentOptions: { activeTintColor: theme.accent } })
|
}, { contentComponent: OptionsMenu, headerMode: 'none', contentOptions: { activeTintColor: theme.accent } })
|
||||||
|
@ -388,6 +390,31 @@ class App extends React.Component {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
goToScreen = (routeName, params, isReset = true) => {
|
||||||
|
const { navigator } = this.refs;
|
||||||
|
navigator.dispatch({
|
||||||
|
type: "Navigation/NAVIGATE",
|
||||||
|
routeName,
|
||||||
|
params
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
handleDeepLink = (openResult) => {
|
||||||
|
const data = openResult.notification.payload.additionalData;
|
||||||
|
this.goToScreen(data.screen, {
|
||||||
|
id: data.data.id
|
||||||
|
});
|
||||||
|
/* if (data && data.id) {
|
||||||
|
this.goToScreen(data.screen, {
|
||||||
|
id: data.id,
|
||||||
|
goToScreen: this.goToScreen
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
console.log("notification is invalid data");
|
||||||
|
} */
|
||||||
|
};
|
||||||
|
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
OneSignal.removeEventListener('received', this.onReceived);
|
OneSignal.removeEventListener('received', this.onReceived);
|
||||||
OneSignal.removeEventListener('opened', this.onOpened);
|
OneSignal.removeEventListener('opened', this.onOpened);
|
||||||
|
@ -398,9 +425,9 @@ class App extends React.Component {
|
||||||
console.log("Notification received: ", notification);
|
console.log("Notification received: ", notification);
|
||||||
}
|
}
|
||||||
|
|
||||||
onOpened(openResult) {
|
onOpened = (openResult) => {
|
||||||
let data = openResult.notification.payload.additionalData;
|
let data = openResult.notification.payload.additionalData;
|
||||||
//this.handleDeepLink(openResult);
|
this.handleDeepLink(openResult);
|
||||||
console.log('Message: ', openResult.notification.payload.body);
|
console.log('Message: ', openResult.notification.payload.body);
|
||||||
console.log('Data: ', openResult.notification.payload.additionalData);
|
console.log('Data: ', openResult.notification.payload.additionalData);
|
||||||
console.log('isActive: ', openResult.notification.isAppInFocus);
|
console.log('isActive: ', openResult.notification.isAppInFocus);
|
||||||
|
@ -425,43 +452,6 @@ class App extends React.Component {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
handleDeepLink = openResult => {
|
|
||||||
const data = openResult.notification.payload.additionalData;
|
|
||||||
//this.props.setInitialNotification(openResult);
|
|
||||||
if (data && data.id) {
|
|
||||||
/* this.goToScreen(data.screen, {
|
|
||||||
id: data.id,
|
|
||||||
goToScreen: this.goToScreen
|
|
||||||
}); */
|
|
||||||
this.goToScreen("useraccount", {
|
|
||||||
goToScreen: this.goToScreen
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
console.log("notification is invalid data");
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
goToScreen = (routeName, params, isReset = true) => {
|
|
||||||
const { navigator } = this.refs;
|
|
||||||
console.log("APP REFS", this.refs);
|
|
||||||
// navigator.dispatch({
|
|
||||||
// type: "Navigation/NAVIGATE",
|
|
||||||
// routeName,
|
|
||||||
// params
|
|
||||||
// });
|
|
||||||
|
|
||||||
// if (isReset) {
|
|
||||||
// const resetAction = NavigationActions.reset({
|
|
||||||
// index: 0,
|
|
||||||
// actions: [NavigationActions.navigate({routeName, params})]
|
|
||||||
// });
|
|
||||||
// navigator.dispatch(resetAction);
|
|
||||||
// } else {
|
|
||||||
// navigator.dispatch({type: 'Navigation/NAVIGATE', routeName: routeName, params});
|
|
||||||
// }
|
|
||||||
// this.closeSideMenu();
|
|
||||||
};
|
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<Provider store={store}>
|
<Provider store={store}>
|
||||||
|
|
File diff suppressed because one or more lines are too long
Binary file not shown.
After Width: | Height: | Size: 134 B |
Binary file not shown.
After Width: | Height: | Size: 100 B |
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 134 B |
Binary file not shown.
After Width: | Height: | Size: 167 B |
Binary file not shown.
After Width: | Height: | Size: 207 B |
|
@ -55,5 +55,6 @@
|
||||||
"modifyIdentificationUser": "modifyIdentificationUser",
|
"modifyIdentificationUser": "modifyIdentificationUser",
|
||||||
"createGroupNanoCredit": "createGroupNanoCredit",
|
"createGroupNanoCredit": "createGroupNanoCredit",
|
||||||
"groupNanoCredit": "groupNanoCredit",
|
"groupNanoCredit": "groupNanoCredit",
|
||||||
"demandGroupNanoCreditDetail": "demandeValidationGroupe"
|
"demandGroupNanoCreditDetail": "demandeValidationGroupe",
|
||||||
|
"adhererGroupNanoCredit": "adhererGroupNanoCredit"
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,6 +108,7 @@
|
||||||
"VALIDATION_DEMAND": "Validation request",
|
"VALIDATION_DEMAND": "Validation request",
|
||||||
"DELETE_DEMAND": "Deletion request",
|
"DELETE_DEMAND": "Deletion request",
|
||||||
"GROUP_INFOS": "Fill in the group information",
|
"GROUP_INFOS": "Fill in the group information",
|
||||||
|
"GROUP_CODE": "Group code",
|
||||||
"NOM_GROUP": "Group name",
|
"NOM_GROUP": "Group name",
|
||||||
"GROUP": "Group",
|
"GROUP": "Group",
|
||||||
"LIMIT_OF_CREDIT": "Credit limit",
|
"LIMIT_OF_CREDIT": "Credit limit",
|
||||||
|
@ -331,6 +332,10 @@
|
||||||
"SEND": "Send",
|
"SEND": "Send",
|
||||||
"CHANGE_INFORMATION": "Change my information",
|
"CHANGE_INFORMATION": "Change my information",
|
||||||
"VALIDATE": "Validate",
|
"VALIDATE": "Validate",
|
||||||
|
"NO_VALIDATE": "Invalid",
|
||||||
|
"VALIDATION": "validation",
|
||||||
|
"VALIDATIONS": "validations",
|
||||||
|
"LIMITE_GROUP": "Credit limit",
|
||||||
"CONNECT": "Connection",
|
"CONNECT": "Connection",
|
||||||
"TEXT_BIG_CREATE_1": "Register as a User",
|
"TEXT_BIG_CREATE_1": "Register as a User",
|
||||||
"TEXT_SUBTITLE_CREATE_1": "Fill in your personal information",
|
"TEXT_SUBTITLE_CREATE_1": "Fill in your personal information",
|
||||||
|
|
|
@ -110,8 +110,11 @@
|
||||||
"VALIDATION_DEMAND": "Demandes de validation",
|
"VALIDATION_DEMAND": "Demandes de validation",
|
||||||
"DELETE_DEMAND": "Demande de suppression",
|
"DELETE_DEMAND": "Demande de suppression",
|
||||||
"GROUP_INFOS": "Renseigner les informations du groupe",
|
"GROUP_INFOS": "Renseigner les informations du groupe",
|
||||||
|
"GROUP_CODE": "Code du groupe",
|
||||||
"SUCCESS_CREATION_GROUP": "Informations sur la création",
|
"SUCCESS_CREATION_GROUP": "Informations sur la création",
|
||||||
"ERROR_CREATION_GROUP": "Erreur de création",
|
"ERROR_CREATION_GROUP": "Erreur de création",
|
||||||
|
"ERROR_JOIN_GROUP": "Erreur d'adhésion",
|
||||||
|
"SUCCES_JOIN_GROUP": "Adhésion réussie",
|
||||||
"NOM_GROUP": "Nom du groupe",
|
"NOM_GROUP": "Nom du groupe",
|
||||||
"GROUP": "Groupe",
|
"GROUP": "Groupe",
|
||||||
"LIMIT_OF_CREDIT": "Limite du crédit",
|
"LIMIT_OF_CREDIT": "Limite du crédit",
|
||||||
|
@ -337,6 +340,7 @@
|
||||||
"NO_VALIDATE": "Non validé",
|
"NO_VALIDATE": "Non validé",
|
||||||
"VALIDATION": "validation",
|
"VALIDATION": "validation",
|
||||||
"VALIDATIONS": "validations",
|
"VALIDATIONS": "validations",
|
||||||
|
"LIMITE_GROUP": "Limite crédit",
|
||||||
"SELECT_YOUR_WALLET": "Selectionner un wallet",
|
"SELECT_YOUR_WALLET": "Selectionner un wallet",
|
||||||
"CONNECT": "Connexion",
|
"CONNECT": "Connexion",
|
||||||
"TEXT_BIG_CREATE_1": "Inscrivez vous en tant qu'Utilisateur",
|
"TEXT_BIG_CREATE_1": "Inscrivez vous en tant qu'Utilisateur",
|
||||||
|
|
|
@ -57,6 +57,7 @@
|
||||||
"react-native-material-cards": "^1.0.9",
|
"react-native-material-cards": "^1.0.9",
|
||||||
"react-native-material-dialog": "^0.7.6",
|
"react-native-material-dialog": "^0.7.6",
|
||||||
"react-native-material-dropdown": "^0.11.1",
|
"react-native-material-dropdown": "^0.11.1",
|
||||||
|
"react-native-onesignal": "^3.9.0",
|
||||||
"react-native-paper": "^2.16.0",
|
"react-native-paper": "^2.16.0",
|
||||||
"react-native-phone-call": "^1.0.9",
|
"react-native-phone-call": "^1.0.9",
|
||||||
"react-native-popup-dialog": "^0.18.3",
|
"react-native-popup-dialog": "^0.18.3",
|
||||||
|
@ -75,7 +76,7 @@
|
||||||
"react-native-tab-view": "^2.14.0",
|
"react-native-tab-view": "^2.14.0",
|
||||||
"react-native-textinput-effects": "^0.5.1",
|
"react-native-textinput-effects": "^0.5.1",
|
||||||
"react-native-vector-icons": "^6.5.0",
|
"react-native-vector-icons": "^6.5.0",
|
||||||
"react-navigation": "^3.11.0",
|
"react-navigation": "3.9.1",
|
||||||
"react-navigation-material-bottom-tabs": "^1.0.0",
|
"react-navigation-material-bottom-tabs": "^1.0.0",
|
||||||
"react-redux": "^7.2.0",
|
"react-redux": "^7.2.0",
|
||||||
"realm": "^3.6.5",
|
"realm": "^3.6.5",
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { CREATE_GROUP_PENDING, CREATE_GROUP_SUCCESS, CREATE_GROUP_ERROR, CREATE_GROUP_RESET, GET_DEMAND_GROUP_PENDING, GET_DEMAND_GROUP_SUCCESS, GET_DEMAND_GROUP_ERROR, GET_DEMAND_GROUP_RESET, GET_UNIQUE_DEMAND_GROUP_PENDING, GET_UNIQUE_DEMAND_GROUP_RESET, GET_UNIQUE_DEMAND_GROUP_ERROR, GET_UNIQUE_DEMAND_GROUP_SUCCESS, TREAT_DEMAND_GROUP_PENDING, TREAT_DEMAND_GROUP_SUCCESS, TREAT_DEMAND_GROUP_ERROR, TREAT_DEMAND_GROUP_RESET } from "../types/NanoCreditType";
|
import { CREATE_GROUP_PENDING, CREATE_GROUP_SUCCESS, CREATE_GROUP_ERROR, CREATE_GROUP_RESET, GET_DEMAND_GROUP_PENDING, GET_DEMAND_GROUP_SUCCESS, GET_DEMAND_GROUP_ERROR, GET_DEMAND_GROUP_RESET, GET_UNIQUE_DEMAND_GROUP_PENDING, GET_UNIQUE_DEMAND_GROUP_RESET, GET_UNIQUE_DEMAND_GROUP_ERROR, GET_UNIQUE_DEMAND_GROUP_SUCCESS, TREAT_DEMAND_GROUP_PENDING, TREAT_DEMAND_GROUP_SUCCESS, TREAT_DEMAND_GROUP_ERROR, TREAT_DEMAND_GROUP_RESET, JOIN_GROUP_PENDING, JOIN_GROUP_SUCCESS, JOIN_GROUP_RESET, JOIN_GROUP_ERROR } from "../types/NanoCreditType";
|
||||||
|
|
||||||
export const fetchCreateGroupPending = () => ({
|
export const fetchCreateGroupPending = () => ({
|
||||||
type: CREATE_GROUP_PENDING
|
type: CREATE_GROUP_PENDING
|
||||||
|
@ -71,3 +71,22 @@ export const fetchTreatDemandsGroupError = (error) => ({
|
||||||
export const fetchTreatDemandsGroupReset = () => ({
|
export const fetchTreatDemandsGroupReset = () => ({
|
||||||
type: TREAT_DEMAND_GROUP_RESET
|
type: TREAT_DEMAND_GROUP_RESET
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
export const fetchJoinGroupPending = () => ({
|
||||||
|
type: JOIN_GROUP_PENDING
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchJoinGroupSuccess = (res) => ({
|
||||||
|
type: JOIN_GROUP_SUCCESS,
|
||||||
|
result: res,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchJoinGroupError = (error) => ({
|
||||||
|
type: JOIN_GROUP_ERROR,
|
||||||
|
result: error
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchJoinGroupReset = () => ({
|
||||||
|
type: JOIN_GROUP_RESET
|
||||||
|
});
|
|
@ -0,0 +1,33 @@
|
||||||
|
import { JOIN_GROUP_SUCCESS, JOIN_GROUP_ERROR, JOIN_GROUP_PENDING, JOIN_GROUP_RESET } from "../types/NanoCreditType";
|
||||||
|
|
||||||
|
const initialState = {
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: null
|
||||||
|
};
|
||||||
|
|
||||||
|
export default (state = initialState, action) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case JOIN_GROUP_PENDING: return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case JOIN_GROUP_SUCCESS: return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: action.result.data,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case JOIN_GROUP_ERROR: return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.result
|
||||||
|
}
|
||||||
|
case JOIN_GROUP_RESET: return initialState;
|
||||||
|
|
||||||
|
default: {
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
|
@ -29,6 +29,7 @@ import SaveOnesignalReducer from "./SaveOnesignalReducer";
|
||||||
import GetDemandsGroupReducer from "./GetDemandsGroupReducer";
|
import GetDemandsGroupReducer from "./GetDemandsGroupReducer";
|
||||||
import GetUniqueDemandsGroupReducer from "./GetUniqueDemandsGroupReducer";
|
import GetUniqueDemandsGroupReducer from "./GetUniqueDemandsGroupReducer";
|
||||||
import TreatDemandGroupReducer from "./TreatDemandGroupReducer";
|
import TreatDemandGroupReducer from "./TreatDemandGroupReducer";
|
||||||
|
import JoinGroupReducer from "./JoinGroupReducer";
|
||||||
|
|
||||||
const persistConfig = {
|
const persistConfig = {
|
||||||
key: 'root',
|
key: 'root',
|
||||||
|
@ -68,6 +69,7 @@ const rootReducer = persistCombineReducers(persistConfig, {
|
||||||
getDemandsGroupReducer: GetDemandsGroupReducer,
|
getDemandsGroupReducer: GetDemandsGroupReducer,
|
||||||
getUniqueDemandsGroupReducer: GetUniqueDemandsGroupReducer,
|
getUniqueDemandsGroupReducer: GetUniqueDemandsGroupReducer,
|
||||||
treatDemandGroupReducer: TreatDemandGroupReducer,
|
treatDemandGroupReducer: TreatDemandGroupReducer,
|
||||||
|
joinGroupReducer: JoinGroupReducer
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -17,3 +17,8 @@ export const TREAT_DEMAND_GROUP_PENDING = 'TREAT_DEMAND_GROUP_PENDING';
|
||||||
export const TREAT_DEMAND_GROUP_SUCCESS = 'TREAT_DEMAND_GROUP_SUCCESS';
|
export const TREAT_DEMAND_GROUP_SUCCESS = 'TREAT_DEMAND_GROUP_SUCCESS';
|
||||||
export const TREAT_DEMAND_GROUP_ERROR = 'TREAT_DEMAND_GROUP_ERROR';
|
export const TREAT_DEMAND_GROUP_ERROR = 'TREAT_DEMAND_GROUP_ERROR';
|
||||||
export const TREAT_DEMAND_GROUP_RESET = 'TREAT_DEMAND_GROUP_RESET';
|
export const TREAT_DEMAND_GROUP_RESET = 'TREAT_DEMAND_GROUP_RESET';
|
||||||
|
|
||||||
|
export const JOIN_GROUP_PENDING = 'JOIN_GROUP_PENDING';
|
||||||
|
export const JOIN_GROUP_SUCCESS = 'JOIN_GROUP_SUCCESS';
|
||||||
|
export const JOIN_GROUP_ERROR = 'JOIN_GROUP_ERROR';
|
||||||
|
export const JOIN_GROUP_RESET = 'JOIN_GROUP_RESET';
|
||||||
|
|
|
@ -55,5 +55,6 @@
|
||||||
"modifyIdentificationUser": "modifyIdentificationUser",
|
"modifyIdentificationUser": "modifyIdentificationUser",
|
||||||
"createGroupNanoCredit": "createGroupNanoCredit",
|
"createGroupNanoCredit": "createGroupNanoCredit",
|
||||||
"groupNanoCredit": "groupNanoCredit",
|
"groupNanoCredit": "groupNanoCredit",
|
||||||
"demandGroupNanoCreditDetail": "demandeValidationGroupe"
|
"demandGroupNanoCreditDetail": "demandeValidationGroupe",
|
||||||
|
"adhererGroupNanoCredit": "adhererGroupNanoCredit"
|
||||||
}
|
}
|
||||||
|
|
|
@ -657,32 +657,8 @@ class Home extends BaseScreen {
|
||||||
|
|
||||||
//IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
//IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
||||||
|
|
||||||
OneSignal.addEventListener('received', this.onReceived);
|
|
||||||
OneSignal.addEventListener('opened', this.onOpened);
|
|
||||||
//OneSignal.addEventListener('ids', this.onIds);
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
componentWillUnmount() {
|
|
||||||
OneSignal.removeEventListener('received', this.onReceived);
|
|
||||||
OneSignal.removeEventListener('opened', this.onOpened);
|
|
||||||
//OneSignal.removeEventListener('ids', this.onIds);
|
|
||||||
}
|
|
||||||
|
|
||||||
onReceived(notification) {
|
|
||||||
console.log("Notification received: ", notification);
|
|
||||||
}
|
|
||||||
|
|
||||||
onOpened(openResult) {
|
|
||||||
let data = openResult.notification.payload.additionalData;
|
|
||||||
this.props.navigation.push()
|
|
||||||
/* this.props.navigation.navigate(data.screen, {
|
|
||||||
id: data.data.id
|
|
||||||
}); */
|
|
||||||
//NavigationService.navigate('useraccount');
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* updateLangue() {
|
/* updateLangue() {
|
||||||
this.props.navigation.setParams({ name: I18n.t('MAP') })
|
this.props.navigation.setParams({ name: I18n.t('MAP') })
|
||||||
this.forceUpdate();
|
this.forceUpdate();
|
||||||
|
@ -1450,7 +1426,6 @@ class Home extends BaseScreen {
|
||||||
translucent={true}
|
translucent={true}
|
||||||
/>
|
/>
|
||||||
{/* Start here to comment */}
|
{/* Start here to comment */}
|
||||||
{/*
|
|
||||||
{
|
{
|
||||||
(this.state.loadingDialog || this.props.loading) ?
|
(this.state.loadingDialog || this.props.loading) ?
|
||||||
<View
|
<View
|
||||||
|
@ -1487,7 +1462,7 @@ class Home extends BaseScreen {
|
||||||
this.setState({ showProgress: false })
|
this.setState({ showProgress: false })
|
||||||
Alert.alert(I18n.t("PROBLEM_OCCUR"), I18n.t("PROBLEM_OCCUR_DIRECTION"), [{ text: "Ok", onPress: () => { } }])
|
Alert.alert(I18n.t("PROBLEM_OCCUR"), I18n.t("PROBLEM_OCCUR_DIRECTION"), [{ text: "Ok", onPress: () => { } }])
|
||||||
}}
|
}}
|
||||||
/> */}
|
/>
|
||||||
{this.makeCardSearch()}
|
{this.makeCardSearch()}
|
||||||
{this.makeSlidingUp()}
|
{this.makeSlidingUp()}
|
||||||
{this.makeDialogLoader()}
|
{this.makeDialogLoader()}
|
||||||
|
|
|
@ -0,0 +1,263 @@
|
||||||
|
import Button from 'apsl-react-native-button';
|
||||||
|
import isEqual from 'lodash/isEqual';
|
||||||
|
import isNil from 'lodash/isNil';
|
||||||
|
import React, { Component } from 'react';
|
||||||
|
import { Alert, ScrollView, StyleSheet, Text, View } from 'react-native';
|
||||||
|
import * as Animatable from 'react-native-animatable';
|
||||||
|
import I18n from 'react-native-i18n';
|
||||||
|
import { responsiveHeight, responsiveWidth } from 'react-native-responsive-dimensions';
|
||||||
|
import { ProgressDialog } from 'react-native-simple-dialogs';
|
||||||
|
import { Fumi } from 'react-native-textinput-effects';
|
||||||
|
import FontAwesomeIcon from 'react-native-vector-icons/FontAwesome';
|
||||||
|
import { connect } from 'react-redux';
|
||||||
|
import { bindActionCreators } from 'redux';
|
||||||
|
import { Color } from '../../config/Color';
|
||||||
|
import { FontWeight, Typography } from '../../config/typography';
|
||||||
|
import { store } from "../../redux/store";
|
||||||
|
import { IlinkEmitter } from '../../utils/events';
|
||||||
|
import { readUser } from '../../webservice/AuthApi';
|
||||||
|
import { joinGroupAction, joinGroupReset } from '../../webservice/NanoCreditApi';
|
||||||
|
let theme = require('../../utils/theme.json');
|
||||||
|
let route = require('../../route.json');
|
||||||
|
|
||||||
|
|
||||||
|
class AdhererGroupNanoCredit extends Component {
|
||||||
|
|
||||||
|
static navigatorStyle = {
|
||||||
|
navBarBackgroundColor: Color.primaryColor,
|
||||||
|
statusBarColor: Color.primaryDarkColor,
|
||||||
|
navBarTextColor: '#FFFFFF',
|
||||||
|
navBarButtonColor: '#FFFFFF'
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
static navigationOptions = () => {
|
||||||
|
return {
|
||||||
|
drawerLabel: () => null,
|
||||||
|
headerTitle: I18n.t('JOIN_GROUP'),
|
||||||
|
headerTintColor: 'white',
|
||||||
|
headerStyle: {
|
||||||
|
backgroundColor: Color.primaryColor,
|
||||||
|
marginTop: 0,
|
||||||
|
color: 'white'
|
||||||
|
},
|
||||||
|
headerTitleStyle: {
|
||||||
|
color: "white"
|
||||||
|
},
|
||||||
|
title: I18n.t('JOIN_GROUP')
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
constructor(props) {
|
||||||
|
super(props);
|
||||||
|
this.state = {
|
||||||
|
codeGroupe: null,
|
||||||
|
codeSponsor: null,
|
||||||
|
nomGroupe: null,
|
||||||
|
user: null,
|
||||||
|
triggerSubmitClick: false,
|
||||||
|
isSubmitClick: false,
|
||||||
|
isDataSubmit: false,
|
||||||
|
isModalConfirmVisible: false,
|
||||||
|
wallet: store.getState().walletDetailReducer.result.response
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
componentDidMount() {
|
||||||
|
|
||||||
|
readUser().then((user) => {
|
||||||
|
if (user) {
|
||||||
|
if (user !== undefined) {
|
||||||
|
this.setState({ user });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ckeckIfFieldIsOK(champ) {
|
||||||
|
return (isNil(champ) || isEqual(champ.length, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
renderCreateGroupReponse = () => {
|
||||||
|
|
||||||
|
const { result, error } = this.props;
|
||||||
|
|
||||||
|
if (error !== null) {
|
||||||
|
if (typeof error.data !== 'undefined') {
|
||||||
|
Alert.alert(
|
||||||
|
I18n.t("ERROR_JOIN_GROUP"),
|
||||||
|
error.data.error,
|
||||||
|
[
|
||||||
|
{
|
||||||
|
text: I18n.t("OK"), onPress: () => {
|
||||||
|
this.props.joinGroupReset();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
{ cancelable: false }
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result !== null) {
|
||||||
|
if (result.response !== null) {
|
||||||
|
Alert.alert(
|
||||||
|
I18n.t("SUCCES_JOIN_GROUP"),
|
||||||
|
result.response,
|
||||||
|
[
|
||||||
|
{
|
||||||
|
text: I18n.t("OK"), onPress: () => {
|
||||||
|
this.props.joinGroupReset();
|
||||||
|
IlinkEmitter.emit("treatNanoGroupDemand");
|
||||||
|
this.props.navigation.pop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
],
|
||||||
|
{ cancelable: false }
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
updateLangue() {
|
||||||
|
this.props.navigation.setParams({ name: I18n.t('DEPOSIT_TO_CARD') })
|
||||||
|
this.forceUpdate()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
onSubmitSendWalletToCard = () => {
|
||||||
|
const { codeGroupe } = this.state;
|
||||||
|
|
||||||
|
if (this.ckeckIfFieldIsOK(codeGroupe))
|
||||||
|
this.nomGroupeAnim.shake(800);
|
||||||
|
else {
|
||||||
|
|
||||||
|
this.props.joinGroupAction({
|
||||||
|
id_user: this.state.user.id,
|
||||||
|
code_groupe: this.state.codeGroupe,
|
||||||
|
code_sponsor: this.state.user.user_code,
|
||||||
|
id_user: 12
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
this.setState({
|
||||||
|
isDataSubmit: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
renderLoader = () => {
|
||||||
|
return (
|
||||||
|
<ProgressDialog
|
||||||
|
visible={this.props.loading}
|
||||||
|
title={I18n.t('LOADING')}
|
||||||
|
message={I18n.t('LOADING_INFO')}
|
||||||
|
/>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
{(this.props.loading) && this.renderLoader()}
|
||||||
|
{this.state.isDataSubmit && this.renderCreateGroupReponse()}
|
||||||
|
<ScrollView style={styles.container}>
|
||||||
|
|
||||||
|
<Text style={styles.subbigtitle}>{I18n.t('GROUP_INFOS')}</Text>
|
||||||
|
|
||||||
|
<Animatable.View ref={(comp) => { this.nomGroupeAnim = comp }}>
|
||||||
|
<Fumi iconClass={FontAwesomeIcon} iconName={'code'}
|
||||||
|
label={I18n.t('GROUP_CODE')}
|
||||||
|
iconColor={'#f95a25'}
|
||||||
|
iconSize={20}
|
||||||
|
value={this.state.codeGroupe}
|
||||||
|
onChangeText={(codeGroupe) => {
|
||||||
|
|
||||||
|
this.setState({ codeGroupe })
|
||||||
|
}}
|
||||||
|
style={styles.input}
|
||||||
|
>
|
||||||
|
</Fumi>
|
||||||
|
</Animatable.View>
|
||||||
|
|
||||||
|
<Button style={styles.btnvalide}
|
||||||
|
textStyle={styles.textbtnvalide}
|
||||||
|
onPress={() => { this.onSubmitSendWalletToCard(); }}>
|
||||||
|
{I18n.t('SUBMIT_LABEL')}</Button>
|
||||||
|
</ScrollView>
|
||||||
|
</>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const maptStateToProps = state => ({
|
||||||
|
|
||||||
|
loading: state.joinGroupReducer.loading,
|
||||||
|
result: state.joinGroupReducer.result,
|
||||||
|
error: state.joinGroupReducer.error,
|
||||||
|
});
|
||||||
|
|
||||||
|
const mapDispatchToProps = dispatch => bindActionCreators({
|
||||||
|
|
||||||
|
joinGroupAction,
|
||||||
|
joinGroupReset,
|
||||||
|
|
||||||
|
}, dispatch);
|
||||||
|
|
||||||
|
export default connect(maptStateToProps, mapDispatchToProps)(AdhererGroupNanoCredit);
|
||||||
|
|
||||||
|
const styles = StyleSheet.create({
|
||||||
|
container: {
|
||||||
|
flex: 1,
|
||||||
|
backgroundColor: Color.primaryDarkColor,
|
||||||
|
},
|
||||||
|
textbtnvalide: {
|
||||||
|
color: 'white',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
},
|
||||||
|
bigtitle: {
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 20,
|
||||||
|
flex: 1,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
textAlign: 'center',
|
||||||
|
margin: 20,
|
||||||
|
},
|
||||||
|
blockView: {
|
||||||
|
paddingVertical: 10,
|
||||||
|
borderBottomWidth: 1
|
||||||
|
},
|
||||||
|
subbigtitle: {
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 17,
|
||||||
|
textAlign: 'center',
|
||||||
|
margin: 5,
|
||||||
|
},
|
||||||
|
btnvalide: {
|
||||||
|
marginTop: 20,
|
||||||
|
marginLeft: 20,
|
||||||
|
marginRight: 20,
|
||||||
|
borderColor: 'transparent',
|
||||||
|
backgroundColor: Color.accentLightColor,
|
||||||
|
height: 52
|
||||||
|
},
|
||||||
|
btnSubmit: {
|
||||||
|
marginTop: 20,
|
||||||
|
borderColor: 'transparent',
|
||||||
|
backgroundColor: Color.accentLightColor,
|
||||||
|
height: 52,
|
||||||
|
width: "30%",
|
||||||
|
marginLeft: 20,
|
||||||
|
marginRight: 20,
|
||||||
|
},
|
||||||
|
input: {
|
||||||
|
height: 60,
|
||||||
|
marginTop: responsiveHeight(2),
|
||||||
|
marginLeft: responsiveWidth(5),
|
||||||
|
marginRight: responsiveWidth(5),
|
||||||
|
borderRadius: 5,
|
||||||
|
}
|
||||||
|
});
|
|
@ -109,6 +109,10 @@ class CreateGroupNanoCredit extends Component {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ckeckIfFieldIsOK(champ) {
|
||||||
|
return (isNil(champ) || isEqual(champ.length, 0));
|
||||||
|
}
|
||||||
|
|
||||||
renderCreateGroupReponse = () => {
|
renderCreateGroupReponse = () => {
|
||||||
|
|
||||||
const { result, error } = this.props;
|
const { result, error } = this.props;
|
||||||
|
|
|
@ -139,6 +139,7 @@ class DemandValidationGroup extends React.Component {
|
||||||
clearInterval(this.intervaller)
|
clearInterval(this.intervaller)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
animateSlidingUp(state = false) {
|
animateSlidingUp(state = false) {
|
||||||
const height = responsiveHeight(100)
|
const height = responsiveHeight(100)
|
||||||
let initialValue = !state ? 0 : height,
|
let initialValue = !state ? 0 : height,
|
||||||
|
@ -288,7 +289,7 @@ class DemandValidationGroup extends React.Component {
|
||||||
</ActionButton.Item>
|
</ActionButton.Item>
|
||||||
<ActionButton.Item buttonColor={purpleLight} title={I18n.t('JOIN_GROUP')}
|
<ActionButton.Item buttonColor={purpleLight} title={I18n.t('JOIN_GROUP')}
|
||||||
onPress={() => {
|
onPress={() => {
|
||||||
|
this.props.navigation.push(route.adhererGroupNanoCredit);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<Icon name="account-multiple" style={styles.actionButtonIcon} />
|
<Icon name="account-multiple" style={styles.actionButtonIcon} />
|
||||||
|
@ -297,7 +298,7 @@ class DemandValidationGroup extends React.Component {
|
||||||
}
|
}
|
||||||
|
|
||||||
refreshData() {
|
refreshData() {
|
||||||
//this.props.getNanoCreditDemandsAction(this.state.user.id);
|
this.props.getNanoCreditDemandsAction(this.state.user.id);
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
|
|
@ -302,7 +302,7 @@ class DemandGroupNanoCreditDetail extends Component {
|
||||||
|
|
||||||
renderDetail = () => {
|
renderDetail = () => {
|
||||||
|
|
||||||
const {resultGetUniqueDemand} = this.props;
|
const { resultGetUniqueDemand } = this.props;
|
||||||
let ago = moment.tz(resultGetUniqueDemand.response.date_creation, 'Etc/GMT+0').format();
|
let ago = moment.tz(resultGetUniqueDemand.response.date_creation, 'Etc/GMT+0').format();
|
||||||
ago = moment(ago)
|
ago = moment(ago)
|
||||||
return (<View style={styles.container}>
|
return (<View style={styles.container}>
|
||||||
|
|
|
@ -258,7 +258,8 @@ export default class OptionsMenu extends Component {
|
||||||
|| item === 'envoieWalletToCashUser' || item === 'linkCard' || item === 'envoieWalletToCardUser' || item === 'envoieWalletToBankUser' || item === 'retraitWalletVersCashUser'
|
|| item === 'envoieWalletToCashUser' || item === 'linkCard' || item === 'envoieWalletToCardUser' || item === 'envoieWalletToBankUser' || item === 'retraitWalletVersCashUser'
|
||||||
|| item === 'retraitCarteVersWalletUser' || item === 'retraitEnCashAgent' || item === 'retraitCarteVersCashAgent' || item === 'envoieCashVersWalletAgent'
|
|| item === 'retraitCarteVersWalletUser' || item === 'retraitEnCashAgent' || item === 'retraitCarteVersCashAgent' || item === 'envoieCashVersWalletAgent'
|
||||||
|| item === 'envoieCashVersAutreWalletAgent' || item === 'retraitCarteVersCashUser' || item === 'envoiCashVersCashAgent' || item === 'envoieCashVersCashAgent'
|
|| item === 'envoieCashVersAutreWalletAgent' || item === 'retraitCarteVersCashUser' || item === 'envoiCashVersCashAgent' || item === 'envoieCashVersCashAgent'
|
||||||
|| item === 'envoieCashVersCarteAgent' || item === 'modifyIdentificationUser' || item === 'createGroupNanoCredit' || item === 'groupNanoCredit' || item === 'demandeValidationGroupe') {
|
|| item === 'envoieCashVersCarteAgent' || item === 'modifyIdentificationUser' || item === 'createGroupNanoCredit' || item === 'groupNanoCredit' || item === 'demandeValidationGroupe'
|
||||||
|
|| item === 'adhererGroupNanoCredit') {
|
||||||
return null
|
return null
|
||||||
} else {
|
} else {
|
||||||
const color = this.state.currentId === item.id ? theme.accent : "grey"
|
const color = this.state.currentId === item.id ? theme.accent : "grey"
|
||||||
|
|
|
@ -108,6 +108,7 @@
|
||||||
"VALIDATION_DEMAND": "Validation request",
|
"VALIDATION_DEMAND": "Validation request",
|
||||||
"DELETE_DEMAND": "Deletion request",
|
"DELETE_DEMAND": "Deletion request",
|
||||||
"GROUP_INFOS": "Fill in the group information",
|
"GROUP_INFOS": "Fill in the group information",
|
||||||
|
"GROUP_CODE": "Group code",
|
||||||
"NOM_GROUP": "Group name",
|
"NOM_GROUP": "Group name",
|
||||||
"GROUP": "Group",
|
"GROUP": "Group",
|
||||||
"LIMIT_OF_CREDIT": "Credit limit",
|
"LIMIT_OF_CREDIT": "Credit limit",
|
||||||
|
|
|
@ -110,8 +110,11 @@
|
||||||
"VALIDATION_DEMAND": "Demandes de validation",
|
"VALIDATION_DEMAND": "Demandes de validation",
|
||||||
"DELETE_DEMAND": "Demande de suppression",
|
"DELETE_DEMAND": "Demande de suppression",
|
||||||
"GROUP_INFOS": "Renseigner les informations du groupe",
|
"GROUP_INFOS": "Renseigner les informations du groupe",
|
||||||
|
"GROUP_CODE": "Code du groupe",
|
||||||
"SUCCESS_CREATION_GROUP": "Informations sur la création",
|
"SUCCESS_CREATION_GROUP": "Informations sur la création",
|
||||||
"ERROR_CREATION_GROUP": "Erreur de création",
|
"ERROR_CREATION_GROUP": "Erreur de création",
|
||||||
|
"ERROR_JOIN_GROUP": "Erreur d'adhésion",
|
||||||
|
"SUCCES_JOIN_GROUP": "Adhésion réussie",
|
||||||
"NOM_GROUP": "Nom du groupe",
|
"NOM_GROUP": "Nom du groupe",
|
||||||
"GROUP": "Groupe",
|
"GROUP": "Groupe",
|
||||||
"LIMIT_OF_CREDIT": "Limite du crédit",
|
"LIMIT_OF_CREDIT": "Limite du crédit",
|
||||||
|
|
|
@ -54,6 +54,7 @@ export const getCreditDemand = testBaseUrl + '/walletService/groups/demands';
|
||||||
export const linkCardUrl = testBaseUrl + '/walletService/identifications/rattach_card';
|
export const linkCardUrl = testBaseUrl + '/walletService/identifications/rattach_card';
|
||||||
export const groupUrl = testBaseUrl + '/walletService/groups';
|
export const groupUrl = testBaseUrl + '/walletService/groups';
|
||||||
export const treatDemandUrl = testBaseUrl + '/walletService/groups/demands/validate';
|
export const treatDemandUrl = testBaseUrl + '/walletService/groups/demands/validate';
|
||||||
|
export const joinGroupUrl = testBaseUrl + '/walletService/groups/join';
|
||||||
export const saveOnesignalIds = testBaseUrl + '/notificationService/onesignal';
|
export const saveOnesignalIds = testBaseUrl + '/notificationService/onesignal';
|
||||||
|
|
||||||
export const authKeyUrl = testBaseUrl + '/oauth/token';
|
export const authKeyUrl = testBaseUrl + '/oauth/token';
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
|
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import I18n from 'react-native-i18n';
|
import I18n from 'react-native-i18n';
|
||||||
import { fetchCreateGroupError, fetchCreateGroupPending, fetchCreateGroupReset, fetchCreateGroupSuccess, fetchTreatDemandsGroupPending, fetchTreatDemandsGroupSuccess, fetchTreatDemandsGroupError, fetchTreatDemandsGroupReset } from "../redux/actions/NanoCreditAction";
|
import { fetchCreateGroupError, fetchCreateGroupPending, fetchCreateGroupReset, fetchCreateGroupSuccess, fetchTreatDemandsGroupPending, fetchTreatDemandsGroupSuccess, fetchTreatDemandsGroupError, fetchTreatDemandsGroupReset, fetchJoinGroupPending, fetchJoinGroupSuccess, fetchJoinGroupError, fetchJoinGroupReset } from "../redux/actions/NanoCreditAction";
|
||||||
import { store } from "../redux/store";
|
import { store } from "../redux/store";
|
||||||
import { groupUrl, treatDemandUrl } from "./IlinkConstants";
|
import { groupUrl, treatDemandUrl, joinGroupUrl } from "./IlinkConstants";
|
||||||
|
|
||||||
export const createGroupAction = (data) => {
|
export const createGroupAction = (data) => {
|
||||||
|
|
||||||
|
@ -80,3 +80,41 @@ export const treatDemandGroupReset = () => {
|
||||||
dispatch(fetchTreatDemandsGroupReset());
|
dispatch(fetchTreatDemandsGroupReset());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const joinGroupAction = (data) => {
|
||||||
|
|
||||||
|
const auth = store.getState().authKeyReducer;
|
||||||
|
const authKey = auth !== null ? `${auth.authKey.token_type} ${auth.authKey.access_token}` : '';
|
||||||
|
|
||||||
|
return dispatch => {
|
||||||
|
dispatch(fetchJoinGroupPending());
|
||||||
|
|
||||||
|
axios({
|
||||||
|
url: `${joinGroupUrl}`,
|
||||||
|
method: 'POST',
|
||||||
|
data,
|
||||||
|
headers: {
|
||||||
|
'Authorization': authKey,
|
||||||
|
'X-Localization': I18n.currentLocale()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.then(response => {
|
||||||
|
console.log(response);
|
||||||
|
dispatch(fetchJoinGroupSuccess(response));
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
if (error.response)
|
||||||
|
dispatch(fetchJoinGroupError(error.response));
|
||||||
|
else if (error.request)
|
||||||
|
dispatch(fetchJoinGroupError(error.request))
|
||||||
|
else
|
||||||
|
dispatch(fetchJoinGroupError(error.message))
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const joinGroupReset = () => {
|
||||||
|
return dispatch => {
|
||||||
|
dispatch(fetchJoinGroupReset());
|
||||||
|
}
|
||||||
|
}
|
94
yarn.lock
94
yarn.lock
|
@ -1003,23 +1003,24 @@
|
||||||
resolved "https://registry.yarnpkg.com/@react-native-community/viewpager/-/viewpager-3.3.0.tgz#e613747a43a31a6f3278f817ba96fdaaa7941f23"
|
resolved "https://registry.yarnpkg.com/@react-native-community/viewpager/-/viewpager-3.3.0.tgz#e613747a43a31a6f3278f817ba96fdaaa7941f23"
|
||||||
integrity sha512-tyzh79l4t/hxiyS9QD3LRmWMs8KVkZzjrkQ8U8+8To1wmvVCBtp8BenvNsDLTBO7CpO/YmiThpmIdEZMr1WuVw==
|
integrity sha512-tyzh79l4t/hxiyS9QD3LRmWMs8KVkZzjrkQ8U8+8To1wmvVCBtp8BenvNsDLTBO7CpO/YmiThpmIdEZMr1WuVw==
|
||||||
|
|
||||||
"@react-navigation/core@~3.5.1":
|
"@react-navigation/core@~3.4.1":
|
||||||
version "3.5.2"
|
version "3.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-3.5.2.tgz#3a3d147b8419e5839e0f2ad4dea086bd2d307fe3"
|
resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-3.4.2.tgz#bec563e94fde40fbab3730cdc97f22afbb2a1498"
|
||||||
integrity sha512-HgKXci1h74aETgm5CXMBoIWG8R7VZG1eUUHYb3BdxwekdiZjW1P/srjiXzsCqFGlsESnVIOIkzT4DqI9J752Bw==
|
integrity sha512-7G+iDzLSTeOUU4vVZeRZKJ+Bd7ds7ZxYNqZcB8i0KlBeQEQfR74Ounfu/p0KIEq2RiNnaE3QT7WVP3C87sebzw==
|
||||||
dependencies:
|
dependencies:
|
||||||
hoist-non-react-statics "^3.3.0"
|
hoist-non-react-statics "^3.3.0"
|
||||||
path-to-regexp "^1.7.0"
|
path-to-regexp "^1.7.0"
|
||||||
query-string "^6.4.2"
|
query-string "^6.4.2"
|
||||||
react-is "^16.8.6"
|
react-is "^16.8.6"
|
||||||
|
|
||||||
"@react-navigation/native@~3.6.2":
|
"@react-navigation/native@~3.4.0":
|
||||||
version "3.6.5"
|
version "3.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-3.6.5.tgz#97b0b9a48f059a0704e3527f40fb034720ef363d"
|
resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-3.4.2.tgz#ed1efe79627a9d50258088d793d6d5eca8b5c382"
|
||||||
integrity sha512-ttEmnokFVf09CvrkzlPIdfA693KfYcRxTYf9OZwp0Ll6El27UYjJD4arwGc+zvlohjTErCdba6CAKV702Wv28w==
|
integrity sha512-oDUZ9y10nM4td3nGmcMCkq2pYRCSOMPxLOPs55lWdT9CwY8PB/3sFuQrSW50/t0krO9KvAjclYfOLywuOB1Vtg==
|
||||||
dependencies:
|
dependencies:
|
||||||
hoist-non-react-statics "^3.3.2"
|
hoist-non-react-statics "^3.0.1"
|
||||||
react-native-safe-area-view "^0.14.8"
|
react-native-safe-area-view "^0.14.1"
|
||||||
|
react-native-screens "^1.0.0 || ^1.0.0-alpha"
|
||||||
|
|
||||||
"@types/babel__core@^7.1.0":
|
"@types/babel__core@^7.1.0":
|
||||||
version "7.1.6"
|
version "7.1.6"
|
||||||
|
@ -3860,7 +3861,7 @@ hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0:
|
||||||
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47"
|
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47"
|
||||||
integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==
|
integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==
|
||||||
|
|
||||||
hoist-non-react-statics@^3.0.1, hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2:
|
hoist-non-react-statics@^3.0.1, hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0:
|
||||||
version "3.3.2"
|
version "3.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
|
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
|
||||||
integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
|
integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
|
||||||
|
@ -6274,9 +6275,9 @@ qs@~6.5.2:
|
||||||
integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
|
integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
|
||||||
|
|
||||||
query-string@^6.4.2:
|
query-string@^6.4.2:
|
||||||
version "6.11.1"
|
version "6.13.1"
|
||||||
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.11.1.tgz#ab021f275d463ce1b61e88f0ce6988b3e8fe7c2c"
|
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.1.tgz#d913ccfce3b4b3a713989fe6d39466d92e71ccad"
|
||||||
integrity sha512-1ZvJOUl8ifkkBxu2ByVM/8GijMIPx+cef7u3yroO3Ogm4DOdZcF5dcrWTIlSHe3Pg/mtlt6/eFjObDfJureZZA==
|
integrity sha512-RfoButmcK+yCta1+FuU8REvisx1oEzhMKwhLUNcepQTPGcNMp1sIqjnfCtfnvGSQZQEhaBHvccujtWoUV3TTbA==
|
||||||
dependencies:
|
dependencies:
|
||||||
decode-uri-component "^0.2.0"
|
decode-uri-component "^0.2.0"
|
||||||
split-on-first "^1.0.0"
|
split-on-first "^1.0.0"
|
||||||
|
@ -6327,12 +6328,12 @@ react-devtools-core@^3.6.3:
|
||||||
shell-quote "^1.6.1"
|
shell-quote "^1.6.1"
|
||||||
ws "^3.3.1"
|
ws "^3.3.1"
|
||||||
|
|
||||||
react-is@^16.12.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.3, react-is@^16.8.4, react-is@^16.8.6:
|
react-is@^16.12.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.3, react-is@^16.8.4:
|
||||||
version "16.13.0"
|
version "16.13.0"
|
||||||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.0.tgz#0f37c3613c34fe6b37cd7f763a0d6293ab15c527"
|
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.0.tgz#0f37c3613c34fe6b37cd7f763a0d6293ab15c527"
|
||||||
integrity sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==
|
integrity sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==
|
||||||
|
|
||||||
react-is@^16.9.0:
|
react-is@^16.8.6, react-is@^16.9.0:
|
||||||
version "16.13.1"
|
version "16.13.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
|
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
|
||||||
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
||||||
|
@ -6711,10 +6712,10 @@ react-native-safe-area-view@^0.12.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
hoist-non-react-statics "^2.3.1"
|
hoist-non-react-statics "^2.3.1"
|
||||||
|
|
||||||
react-native-safe-area-view@^0.14.8:
|
react-native-safe-area-view@^0.14.1:
|
||||||
version "0.14.8"
|
version "0.14.9"
|
||||||
resolved "https://registry.yarnpkg.com/react-native-safe-area-view/-/react-native-safe-area-view-0.14.8.tgz#ef33c46ff8164ae77acad48c3039ec9c34873e5b"
|
resolved "https://registry.yarnpkg.com/react-native-safe-area-view/-/react-native-safe-area-view-0.14.9.tgz#90ee8383037010d9a5055a97cf97e4c1da1f0c3d"
|
||||||
integrity sha512-MtRSIcZNstxv87Jet+UsPhEd1tpGe8cVskDXlP657x6rHpSrbrc+y13ZNXrwAgGNNhqQNX7UJT68ZIq//ZRmvw==
|
integrity sha512-WII/ulhpVyL/qbYb7vydq7dJAfZRBcEhg4/UWt6F6nAKpLa3gAceMOxBxI914ppwSP/TdUsandFy6lkJQE0z4A==
|
||||||
dependencies:
|
dependencies:
|
||||||
hoist-non-react-statics "^2.3.1"
|
hoist-non-react-statics "^2.3.1"
|
||||||
|
|
||||||
|
@ -6725,6 +6726,13 @@ react-native-safe-modules@^1.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
dedent "^0.6.0"
|
dedent "^0.6.0"
|
||||||
|
|
||||||
|
"react-native-screens@^1.0.0 || ^1.0.0-alpha":
|
||||||
|
version "1.0.0-alpha.23"
|
||||||
|
resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-1.0.0-alpha.23.tgz#25d7ea4d11bda4fcde2d1da7ae50271c6aa636e0"
|
||||||
|
integrity sha512-tOxHGQUN83MTmQB4ghoQkibqOdGiX4JQEmeyEv96MKWO/x8T2PJv84ECUos9hD3blPRQwVwSpAid1PPPhrVEaw==
|
||||||
|
dependencies:
|
||||||
|
debounce "^1.2.0"
|
||||||
|
|
||||||
react-native-screens@^2.3.0:
|
react-native-screens@^2.3.0:
|
||||||
version "2.3.0"
|
version "2.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-2.3.0.tgz#fd2b0c841f4fdebb2937c0e84acccc62bf9ebb22"
|
resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-2.3.0.tgz#fd2b0c841f4fdebb2937c0e84acccc62bf9ebb22"
|
||||||
|
@ -6776,7 +6784,7 @@ react-native-switch-selector@^1.1.14:
|
||||||
resolved "https://registry.yarnpkg.com/react-native-switch-selector/-/react-native-switch-selector-1.1.14.tgz#953fc2fb1f1feb97e9a3a1fc7f87718a7b4c2a5b"
|
resolved "https://registry.yarnpkg.com/react-native-switch-selector/-/react-native-switch-selector-1.1.14.tgz#953fc2fb1f1feb97e9a3a1fc7f87718a7b4c2a5b"
|
||||||
integrity sha512-VhmasNtYuJpG5B0954vyMSvOcT1qM6WQeZ1hrx6OxgcH6kdfZynC77MKlj8w022wI1AccyPCQrttgne+WSe5Wg==
|
integrity sha512-VhmasNtYuJpG5B0954vyMSvOcT1qM6WQeZ1hrx6OxgcH6kdfZynC77MKlj8w022wI1AccyPCQrttgne+WSe5Wg==
|
||||||
|
|
||||||
react-native-tab-view@^1.2.0, react-native-tab-view@^1.4.1:
|
react-native-tab-view@^1.2.0, react-native-tab-view@^1.3.4, react-native-tab-view@^1.4.1:
|
||||||
version "1.4.1"
|
version "1.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-1.4.1.tgz#f113cd87485808f0c991abec937f70fa380478b9"
|
resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-1.4.1.tgz#f113cd87485808f0c991abec937f70fa380478b9"
|
||||||
integrity sha512-Bke8KkDcDhvB/z0AS7MnQKMD2p6Kwfc1rSKlMOvg9CC5CnClQ2QEnhPSbwegKDYhUkBI92iH/BYy7hNSm5kbUQ==
|
integrity sha512-Bke8KkDcDhvB/z0AS7MnQKMD2p6Kwfc1rSKlMOvg9CC5CnClQ2QEnhPSbwegKDYhUkBI92iH/BYy7hNSm5kbUQ==
|
||||||
|
@ -6851,10 +6859,10 @@ react-native@0.61.5:
|
||||||
stacktrace-parser "^0.1.3"
|
stacktrace-parser "^0.1.3"
|
||||||
whatwg-fetch "^3.0.0"
|
whatwg-fetch "^3.0.0"
|
||||||
|
|
||||||
react-navigation-drawer@~1.4.0:
|
react-navigation-drawer@1.2.1:
|
||||||
version "1.4.0"
|
version "1.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-navigation-drawer/-/react-navigation-drawer-1.4.0.tgz#70f3dd83e3da9cd4ea6e2739526502c823d466b9"
|
resolved "https://registry.yarnpkg.com/react-navigation-drawer/-/react-navigation-drawer-1.2.1.tgz#7bd5efeee7d2f611d3ebb0933e0c8e8eb7cafe52"
|
||||||
integrity sha512-ZyWBozcjB2aZ7vwCALv90cYA2NpDjM+WALaiYRshvPvue8l7cqynePbHK8GhlMGyJDwZqp4MxQmu8u1XAKp3Bw==
|
integrity sha512-T2kaBjY2c4/3I6noWFnaf/c18ntNH5DsST38i+pdc2NPxn5Yi5lkK+ZZTeKuHSFD4a7G0jWY9OGf1iRkHWLMAQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
react-native-tab-view "^1.2.0"
|
react-native-tab-view "^1.2.0"
|
||||||
|
|
||||||
|
@ -6867,12 +6875,20 @@ react-navigation-material-bottom-tabs@^1.0.0:
|
||||||
prop-types "^15.6.0"
|
prop-types "^15.6.0"
|
||||||
react-navigation-tabs "~1.2.0"
|
react-navigation-tabs "~1.2.0"
|
||||||
|
|
||||||
react-navigation-stack@1.5.3:
|
react-navigation-stack@1.3.0:
|
||||||
version "1.5.3"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/react-navigation-stack/-/react-navigation-stack-1.5.3.tgz#cdc9f5a6dbdc55509a15f60d765722573dec1997"
|
resolved "https://registry.yarnpkg.com/react-navigation-stack/-/react-navigation-stack-1.3.0.tgz#34bbddb068c094c9ab843e36059b9fd92b728250"
|
||||||
integrity sha512-MQcwDVbZUYsTtDJb5cFOSm+K+e7KpUCoROaGoUOR+JHWE3uuaJ3pd/Nu+32a57J98TNBf4qq0+2TPJWl6z6IBg==
|
integrity sha512-ouyD1GkRksJSGuvAuqrJnlJnZ5g2g/+/WB/MTa8BzjSBvyOgruD5TrmEkpViCOMr1R17C8D4Htln90H4D+NV3Q==
|
||||||
|
|
||||||
|
react-navigation-tabs@1.1.2:
|
||||||
|
version "1.1.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/react-navigation-tabs/-/react-navigation-tabs-1.1.2.tgz#10b7501522d99960340a0d23a471d571b70aeb82"
|
||||||
|
integrity sha512-D4fecSwZfvNh5WHTURmUVrNSgy3tiNfID0n5eKTOhCz4Sls4EM2l27UTX833ngxXhQ1FqRtBxzQZ+Dp1FWJ1pw==
|
||||||
dependencies:
|
dependencies:
|
||||||
prop-types "^15.7.2"
|
hoist-non-react-statics "^2.5.0"
|
||||||
|
prop-types "^15.6.1"
|
||||||
|
react-lifecycles-compat "^3.0.4"
|
||||||
|
react-native-tab-view "^1.3.4"
|
||||||
|
|
||||||
react-navigation-tabs@~1.2.0:
|
react-navigation-tabs@~1.2.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
|
@ -6883,16 +6899,16 @@ react-navigation-tabs@~1.2.0:
|
||||||
prop-types "^15.6.1"
|
prop-types "^15.6.1"
|
||||||
react-native-tab-view "^1.4.1"
|
react-native-tab-view "^1.4.1"
|
||||||
|
|
||||||
react-navigation@^3.11.0:
|
react-navigation@3.9.1:
|
||||||
version "3.13.0"
|
version "3.9.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-navigation/-/react-navigation-3.13.0.tgz#e802bb5174c1ec8b727c69f8e4409ff1351a5250"
|
resolved "https://registry.yarnpkg.com/react-navigation/-/react-navigation-3.9.1.tgz#2b2545f5c11905b534d96996c658d0691bc5f11f"
|
||||||
integrity sha512-r64bTImY2aNye8wtd39ubouVB6ZMJqjVQYKxH4LFmOav4FsI59fQTDN7sZzyJa29owowYw/wVkh+NWGT+tdD1A==
|
integrity sha512-4rUQXGT0yvLb9yX9NDuKdrXb/NcAPGUHDTlto8Fg4Tm23uuyBBSrDVStqC59rUM4JcoQnRqhenN2wXGvWE+WYA==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@react-navigation/core" "~3.5.1"
|
"@react-navigation/core" "~3.4.1"
|
||||||
"@react-navigation/native" "~3.6.2"
|
"@react-navigation/native" "~3.4.0"
|
||||||
react-navigation-drawer "~1.4.0"
|
react-navigation-drawer "1.2.1"
|
||||||
react-navigation-stack "1.5.3"
|
react-navigation-stack "1.3.0"
|
||||||
react-navigation-tabs "~1.2.0"
|
react-navigation-tabs "1.1.2"
|
||||||
|
|
||||||
react-proxy@^1.1.7:
|
react-proxy@^1.1.7:
|
||||||
version "1.1.8"
|
version "1.1.8"
|
||||||
|
|
Loading…
Reference in New Issue