mirror of
https://github.com/Blair-SGA-Dev-Team/blazerapp.git
synced 2024-11-08 14:51:17 -05:00
on/off switch for notifs - no actual notifs yet
This commit is contained in:
parent
4c5d37b90e
commit
f327c92573
11
app/App.js
11
app/App.js
|
@ -30,8 +30,6 @@ import Ionicons from 'react-native-vector-icons/Ionicons';
|
||||||
import I18n from './i18n';
|
import I18n from './i18n';
|
||||||
import AsyncStorage from '@react-native-community/async-storage'
|
import AsyncStorage from '@react-native-community/async-storage'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const Tab = createBottomTabNavigator();
|
const Tab = createBottomTabNavigator();
|
||||||
|
|
||||||
AsyncStorage.getItem('language')
|
AsyncStorage.getItem('language')
|
||||||
|
@ -40,6 +38,15 @@ AsyncStorage.getItem('language')
|
||||||
I18n.locale = token;
|
I18n.locale = token;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
AsyncStorage.getItem('announcementNotifs')
|
||||||
|
.then((token) => {
|
||||||
|
console.log("announcementNotifs: " + token);
|
||||||
|
});
|
||||||
|
AsyncStorage.getItem('eventNotifs')
|
||||||
|
.then((token) => {
|
||||||
|
console.log("eventNotifs: " + token);
|
||||||
|
});
|
||||||
|
|
||||||
class App extends React.Component {
|
class App extends React.Component {
|
||||||
state = {
|
state = {
|
||||||
loaded: false
|
loaded: false
|
||||||
|
|
|
@ -29,6 +29,8 @@ const Images = {
|
||||||
announcements:require('./assets/announcements.png'),
|
announcements:require('./assets/announcements.png'),
|
||||||
resources:require('./assets/resources.png'),
|
resources:require('./assets/resources.png'),
|
||||||
polls:require('./assets/polls.png'),
|
polls:require('./assets/polls.png'),
|
||||||
|
notifs:require('./assets/notifs.png'),
|
||||||
|
lang:require('./assets/lang.png'),
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Images;
|
export default Images;
|
|
@ -47,12 +47,17 @@ export default {
|
||||||
},
|
},
|
||||||
settings: {
|
settings: {
|
||||||
settings: "Settings",
|
settings: "Settings",
|
||||||
language: "Language"
|
language: "Language",
|
||||||
|
notifications: "Notifications",
|
||||||
},
|
},
|
||||||
language: {
|
language: {
|
||||||
SelectLanguage: "Select Language",
|
SelectLanguage: "Select Language",
|
||||||
English: "English",
|
English: "English",
|
||||||
Spanish: "Spanish",
|
Spanish: "Spanish",
|
||||||
note: "*App will reload on language change"
|
note: "*App will reload on language change"
|
||||||
|
},
|
||||||
|
notifications: {
|
||||||
|
announcements: "Announcements",
|
||||||
|
events: "Calendar Events"
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -47,12 +47,17 @@ export default {
|
||||||
},
|
},
|
||||||
settings: {
|
settings: {
|
||||||
settings: "Configuraciones",
|
settings: "Configuraciones",
|
||||||
language: "Idioma"
|
language: "Idioma",
|
||||||
|
notifications: "ESNotifications"
|
||||||
},
|
},
|
||||||
language: {
|
language: {
|
||||||
SelectLanguage: "Seleccione el idioma",
|
SelectLanguage: "Seleccione el idioma",
|
||||||
English: "Inglés",
|
English: "Inglés",
|
||||||
Spanish: "Español",
|
Spanish: "Español",
|
||||||
note: "*La aplicación se recargará al cambiar de idioma"
|
note: "*La aplicación se recargará al cambiar de idioma"
|
||||||
|
},
|
||||||
|
notifications: {
|
||||||
|
announcements: "ESAnnouncements",
|
||||||
|
events: "ESCalendar Events"
|
||||||
}
|
}
|
||||||
}
|
}
|
122
app/Notifications.js
Normal file
122
app/Notifications.js
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
import React, { Component, useState } from 'react';
|
||||||
|
import {
|
||||||
|
Platform,
|
||||||
|
StyleSheet,
|
||||||
|
TouchableOpacity,
|
||||||
|
Text,
|
||||||
|
ScrollView,
|
||||||
|
View,
|
||||||
|
Switch
|
||||||
|
} from 'react-native';
|
||||||
|
import I18n from './i18n';
|
||||||
|
import AsyncStorage from '@react-native-community/async-storage'
|
||||||
|
|
||||||
|
const STORAGE_KEY_ANNOUNCEMENT = "announcementNotifs"
|
||||||
|
const STORAGE_KEY_EVENT = "eventNotifs"
|
||||||
|
|
||||||
|
function parseBoolean (val) {
|
||||||
|
|
||||||
|
if (val == "true") {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (val == "false") {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function AnnouncementNotifs() {
|
||||||
|
|
||||||
|
const [ isEnabled, setIsEnabled ] = React.useState()
|
||||||
|
|
||||||
|
React.useEffect(() => {
|
||||||
|
const checkAsync = async () => {
|
||||||
|
const value = await AsyncStorage.getItem('announcementNotifs')
|
||||||
|
if (value !== undefined || value !== null){
|
||||||
|
|
||||||
|
setIsEnabled(parseBoolean(value))
|
||||||
|
} else {
|
||||||
|
setIsEnabled(false)
|
||||||
|
AsyncStorage.setItem('announcementNotifs', JSON.stringify('false'))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
checkAsync()
|
||||||
|
}, [])
|
||||||
|
|
||||||
|
const toggleSwitch = () => {
|
||||||
|
AsyncStorage.getItem('announcementNotifs')
|
||||||
|
.then((token) => {
|
||||||
|
const temp = parseBoolean(token)
|
||||||
|
AsyncStorage.setItem('announcementNotifs', JSON.stringify(!temp))
|
||||||
|
setIsEnabled(!isEnabled)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<View style = {{display: 'flex', flexDirection: 'row', justifyContent: 'space-between', marginTop: 20, alignContent: 'center'}}>
|
||||||
|
<Text style = {{fontSize: 22}}>{I18n.t('notifications.announcements')}</Text>
|
||||||
|
<Switch
|
||||||
|
trackColor={{ false: "#767577", true: "red" }}
|
||||||
|
thumbColor= "white"
|
||||||
|
ios_backgroundColor="white"
|
||||||
|
onValueChange={toggleSwitch}
|
||||||
|
value={isEnabled}
|
||||||
|
/>
|
||||||
|
</View>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
function EventNotifs() {
|
||||||
|
const [ isEnabled, setIsEnabled ] = React.useState()
|
||||||
|
|
||||||
|
React.useEffect(() => {
|
||||||
|
const checkAsync = async () => {
|
||||||
|
const value = await AsyncStorage.getItem('eventNotifs')
|
||||||
|
if (value !== undefined || value !== null){
|
||||||
|
|
||||||
|
setIsEnabled(parseBoolean(value))
|
||||||
|
} else {
|
||||||
|
setIsEnabled(false)
|
||||||
|
AsyncStorage.setItem('eventNotifs', JSON.stringify('false'))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
checkAsync()
|
||||||
|
}, [])
|
||||||
|
|
||||||
|
const toggleSwitch = () => {
|
||||||
|
AsyncStorage.getItem('eventNotifs')
|
||||||
|
.then((token) => {
|
||||||
|
const temp = parseBoolean(token)
|
||||||
|
AsyncStorage.setItem('eventNotifs', JSON.stringify(!temp))
|
||||||
|
setIsEnabled(!isEnabled)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<View style = {{display: 'flex', flexDirection: 'row', justifyContent: 'space-between', marginTop: 20, alignContent: 'center'}}>
|
||||||
|
<Text style = {{fontSize: 22}}>{I18n.t('notifications.events')}</Text>
|
||||||
|
<Switch
|
||||||
|
trackColor={{ false: "#767577", true: "red" }}
|
||||||
|
thumbColor= "white"
|
||||||
|
ios_backgroundColor="white"
|
||||||
|
onValueChange={toggleSwitch}
|
||||||
|
value={isEnabled}
|
||||||
|
/>
|
||||||
|
</View>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
class Notifications extends Component {
|
||||||
|
|
||||||
|
|
||||||
|
render() {
|
||||||
|
|
||||||
|
return (
|
||||||
|
|
||||||
|
<View style = {{flex: 1, backgroundColor: 'white', padding: 20}}>
|
||||||
|
<AnnouncementNotifs />
|
||||||
|
<EventNotifs />
|
||||||
|
</View>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Notifications
|
|
@ -23,11 +23,12 @@ import {
|
||||||
|
|
||||||
import styles from './styles/morestyles'
|
import styles from './styles/morestyles'
|
||||||
import LinearGradient from 'react-native-linear-gradient'
|
import LinearGradient from 'react-native-linear-gradient'
|
||||||
|
import Images from './Images'
|
||||||
import { NavigationContainer } from '@react-navigation/native'
|
import { NavigationContainer } from '@react-navigation/native'
|
||||||
import { createStackNavigator } from '@react-navigation/stack'
|
import { createStackNavigator } from '@react-navigation/stack'
|
||||||
import I18n from './i18n';
|
import I18n from './i18n';
|
||||||
import Language from './Language'
|
import Language from './Language'
|
||||||
|
import Notifications from './Notifications'
|
||||||
|
|
||||||
const Stack = createStackNavigator()
|
const Stack = createStackNavigator()
|
||||||
|
|
||||||
|
@ -42,10 +43,12 @@ class SettingSwitch extends React.Component {
|
||||||
<View style={{flex:1,backgroundColor:'red'}}>
|
<View style={{flex:1,backgroundColor:'red'}}>
|
||||||
<FlatList
|
<FlatList
|
||||||
data={[
|
data={[
|
||||||
{name:"Language",key:"language"},
|
{name:"Language",key:"language", img:Images.lang},
|
||||||
|
{name:"Notifications",key:"notifications", img:Images.notifs},
|
||||||
]}
|
]}
|
||||||
renderItem={({item})=>
|
renderItem={({item})=>
|
||||||
<TouchableOpacity style={styles.moreitem} onPress={()=>this.props.navigation.navigate(item.key)}>
|
<TouchableOpacity style={styles.moreitem} onPress={()=>this.props.navigation.navigate(item.key)}>
|
||||||
|
<Image source = {item.img} style = {{height: 40, width: 40, marginRight: 10, tintColor: '#e3e3e3'}}/>
|
||||||
<Text style={styles.moretext}>{I18n.t('settings.' + item.key)}</Text>
|
<Text style={styles.moretext}>{I18n.t('settings.' + item.key)}</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
}
|
}
|
||||||
|
@ -69,7 +72,7 @@ class Settings extends React.Component {
|
||||||
name="Chooser"
|
name="Chooser"
|
||||||
component={SettingSwitch}
|
component={SettingSwitch}
|
||||||
options={{
|
options={{
|
||||||
title:'Settingss',
|
title:'Settings',
|
||||||
headerTitleStyle:styles.headerTitle,
|
headerTitleStyle:styles.headerTitle,
|
||||||
headerBackground: ()=>background
|
headerBackground: ()=>background
|
||||||
}}
|
}}
|
||||||
|
@ -84,6 +87,16 @@ class Settings extends React.Component {
|
||||||
headerBackground: ()=>background
|
headerBackground: ()=>background
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
<Stack.Screen
|
||||||
|
name="notifications"
|
||||||
|
component={Notifications}
|
||||||
|
options={{
|
||||||
|
title:'Notifications',
|
||||||
|
headerTitleStyle:[styles.headerTitle,{alignSelf:'center'}],
|
||||||
|
headerLeft:null,
|
||||||
|
headerBackground: ()=>background
|
||||||
|
}}
|
||||||
|
/>
|
||||||
</Stack.Navigator>
|
</Stack.Navigator>
|
||||||
</NavigationContainer>
|
</NavigationContainer>
|
||||||
)
|
)
|
||||||
|
|
BIN
app/assets/lang.png
Normal file
BIN
app/assets/lang.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.7 KiB |
BIN
app/assets/notifs.png
Normal file
BIN
app/assets/notifs.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.2 KiB |
97
yarn.lock
97
yarn.lock
|
@ -711,6 +711,13 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
regenerator-runtime "^0.13.4"
|
regenerator-runtime "^0.13.4"
|
||||||
|
|
||||||
|
"@babel/runtime@^7.12.0", "@babel/runtime@^7.3.1":
|
||||||
|
version "7.12.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.12.5.tgz#410e7e487441e1b360c29be715d870d9b985882e"
|
||||||
|
integrity sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==
|
||||||
|
dependencies:
|
||||||
|
regenerator-runtime "^0.13.4"
|
||||||
|
|
||||||
"@babel/template@^7.0.0", "@babel/template@^7.10.4", "@babel/template@^7.3.3":
|
"@babel/template@^7.0.0", "@babel/template@^7.10.4", "@babel/template@^7.3.3":
|
||||||
version "7.10.4"
|
version "7.10.4"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278"
|
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278"
|
||||||
|
@ -1025,10 +1032,9 @@
|
||||||
"@types/yargs" "^15.0.0"
|
"@types/yargs" "^15.0.0"
|
||||||
chalk "^3.0.0"
|
chalk "^3.0.0"
|
||||||
|
|
||||||
"@k3rn31p4nic/google-translate-api@^1.1.1":
|
"@k3rn31p4nic/google-translate-api@github:k3rn31p4nic/google-translate-api":
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/@k3rn31p4nic/google-translate-api/-/google-translate-api-1.1.1.tgz#3869854f7540bbb82afc1b61890281f5513e1717"
|
resolved "https://codeload.github.com/k3rn31p4nic/google-translate-api/tar.gz/b15b464fb0a8fa4d58bc90d3d251250a8a71e907"
|
||||||
integrity sha512-vg3zLYXhUmdwrNxmoKOfYSJzB8lHKDnqR7L/SYQQKCYkxsj2syK/cJMAcK5fQC0hfwgexxUaWhR2p2gGEe3nVw==
|
|
||||||
dependencies:
|
dependencies:
|
||||||
got "^11.1.1"
|
got "^11.1.1"
|
||||||
|
|
||||||
|
@ -1787,6 +1793,13 @@ aws4@^1.8.0:
|
||||||
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.1.tgz#e1e82e4f3e999e2cfd61b161280d16a111f86428"
|
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.1.tgz#e1e82e4f3e999e2cfd61b161280d16a111f86428"
|
||||||
integrity sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==
|
integrity sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==
|
||||||
|
|
||||||
|
axios@^0.20.0:
|
||||||
|
version "0.20.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/axios/-/axios-0.20.0.tgz#057ba30f04884694993a8cd07fa394cff11c50bd"
|
||||||
|
integrity sha512-ANA4rr2BDcmmAQLOKft2fufrtuvlqR+cXNNinUmvfeSNCOF98PZL+7M/v1zIdGo7OLjEA9J2gXJL+j4zGsl0bA==
|
||||||
|
dependencies:
|
||||||
|
follow-redirects "^1.10.0"
|
||||||
|
|
||||||
babel-eslint@10.1.0:
|
babel-eslint@10.1.0:
|
||||||
version "10.1.0"
|
version "10.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
|
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
|
||||||
|
@ -3007,6 +3020,11 @@ eventemitter3@^3.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
|
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
|
||||||
integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==
|
integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==
|
||||||
|
|
||||||
|
events@^3.2.0:
|
||||||
|
version "3.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379"
|
||||||
|
integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==
|
||||||
|
|
||||||
exec-sh@^0.3.2:
|
exec-sh@^0.3.2:
|
||||||
version "0.3.4"
|
version "0.3.4"
|
||||||
resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5"
|
resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5"
|
||||||
|
@ -3306,6 +3324,11 @@ flatted@^2.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
||||||
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
||||||
|
|
||||||
|
follow-redirects@^1.10.0:
|
||||||
|
version "1.13.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.1.tgz#5f69b813376cee4fd0474a3aba835df04ab763b7"
|
||||||
|
integrity sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==
|
||||||
|
|
||||||
for-in@^1.0.2:
|
for-in@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
|
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
|
||||||
|
@ -3628,6 +3651,13 @@ html-escaper@^2.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
|
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
|
||||||
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
|
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
|
||||||
|
|
||||||
|
html-parse-stringify2@2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz#dc5670b7292ca158b7bc916c9a6735ac8872834a"
|
||||||
|
integrity sha1-3FZwtyksoVi3vJFsmmc1rIhyg0o=
|
||||||
|
dependencies:
|
||||||
|
void-elements "^2.0.1"
|
||||||
|
|
||||||
http-cache-semantics@^4.0.0:
|
http-cache-semantics@^4.0.0:
|
||||||
version "4.1.0"
|
version "4.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
|
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
|
||||||
|
@ -3666,6 +3696,23 @@ human-signals@^1.1.1:
|
||||||
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
|
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
|
||||||
integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
|
integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
|
||||||
|
|
||||||
|
i18n-js@3.0.11:
|
||||||
|
version "3.0.11"
|
||||||
|
resolved "https://registry.yarnpkg.com/i18n-js/-/i18n-js-3.0.11.tgz#f9e96bdb641c5b9d6be12759d7c422089987ef02"
|
||||||
|
integrity sha512-v7dG3kYJTQTyox3NqDabPDE/ZotWntyMI9kh4cYi+XlCSnsIR+KBTS2opPyObL8WndnklcLzbNU92FP/mLge3Q==
|
||||||
|
|
||||||
|
i18next-react-native-language-detector@^1.0.2:
|
||||||
|
version "1.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/i18next-react-native-language-detector/-/i18next-react-native-language-detector-1.0.2.tgz#5c47482611a44262302a363d5be34a42b11ddfc6"
|
||||||
|
integrity sha1-XEdIJhGkQmIwKjY9W+NKQrEd38Y=
|
||||||
|
|
||||||
|
i18next@^19.8.4:
|
||||||
|
version "19.8.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/i18next/-/i18next-19.8.4.tgz#447718f2a26319b8debdbcc6fbc1a9761be7316b"
|
||||||
|
integrity sha512-FfVPNWv+felJObeZ6DSXZkj9QM1Ivvh7NcFCgA8XPtJWHz0iXVa9BUy+QY8EPrCLE+vWgDfV/sc96BgXVo6HAA==
|
||||||
|
dependencies:
|
||||||
|
"@babel/runtime" "^7.12.0"
|
||||||
|
|
||||||
iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24:
|
iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24:
|
||||||
version "0.4.24"
|
version "0.4.24"
|
||||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
||||||
|
@ -5390,6 +5437,11 @@ mkdirp@^0.5.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
minimist "^1.2.5"
|
minimist "^1.2.5"
|
||||||
|
|
||||||
|
mkdirp@^1.0.4:
|
||||||
|
version "1.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
|
||||||
|
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
|
||||||
|
|
||||||
ms@2.0.0:
|
ms@2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
||||||
|
@ -6003,6 +6055,13 @@ prop-types@^15.6.2, prop-types@^15.7.2:
|
||||||
object-assign "^4.1.1"
|
object-assign "^4.1.1"
|
||||||
react-is "^16.8.1"
|
react-is "^16.8.1"
|
||||||
|
|
||||||
|
properties-reader@^2.2.0:
|
||||||
|
version "2.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/properties-reader/-/properties-reader-2.2.0.tgz#41d837fe143d8d5f2386b6a869a1975c0b2c595c"
|
||||||
|
integrity sha512-CgVcr8MwGoBKK24r9TwHfZkLLaNFHQ6y4wgT9w/XzdpacOOi5ciH4hcuLechSDAwXsfrGQtI2JTutY2djOx2Ow==
|
||||||
|
dependencies:
|
||||||
|
mkdirp "^1.0.4"
|
||||||
|
|
||||||
pseudomap@^1.0.2:
|
pseudomap@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
|
resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
|
||||||
|
@ -6068,6 +6127,14 @@ react-devtools-core@^4.6.0:
|
||||||
shell-quote "^1.6.1"
|
shell-quote "^1.6.1"
|
||||||
ws "^7"
|
ws "^7"
|
||||||
|
|
||||||
|
react-i18next@^11.8.5:
|
||||||
|
version "11.8.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-11.8.5.tgz#a093335822e36252cda6efc0f55facef6253643f"
|
||||||
|
integrity sha512-2jY/8NkhNv2KWBnZuhHxTn13aMxAbvhiDUNskm+1xVVnrPId78l8fA7fCyVeO3XU1kptM0t4MtvxV1Nu08cjLw==
|
||||||
|
dependencies:
|
||||||
|
"@babel/runtime" "^7.3.1"
|
||||||
|
html-parse-stringify2 "2.0.1"
|
||||||
|
|
||||||
react-is@^16.12.0, react-is@^16.13.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6:
|
react-is@^16.12.0, react-is@^16.13.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6:
|
||||||
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"
|
||||||
|
@ -6098,6 +6165,13 @@ react-native-gesture-handler@^1.7.0:
|
||||||
invariant "^2.2.4"
|
invariant "^2.2.4"
|
||||||
prop-types "^15.7.2"
|
prop-types "^15.7.2"
|
||||||
|
|
||||||
|
react-native-i18n@^2.0.15:
|
||||||
|
version "2.0.15"
|
||||||
|
resolved "https://registry.yarnpkg.com/react-native-i18n/-/react-native-i18n-2.0.15.tgz#09b5a9836116fa7dbd0054c46e2d1014c1ef3c65"
|
||||||
|
integrity sha512-V8VwUP0TLda3oJvgt5tdnFaOV7WXPhTjCTLO7sXI3C2SHggSbD4bCUryMzNJhesimJidH21V2Owvj4zAylHoQQ==
|
||||||
|
dependencies:
|
||||||
|
i18n-js "3.0.11"
|
||||||
|
|
||||||
react-native-iphone-x-helper@^1.2.1:
|
react-native-iphone-x-helper@^1.2.1:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.0.tgz#84fd13e6b89cc3aa4daa80ec514bf15cb724d86d"
|
resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.0.tgz#84fd13e6b89cc3aa4daa80ec514bf15cb724d86d"
|
||||||
|
@ -6108,6 +6182,11 @@ react-native-linear-gradient@^2.5.6:
|
||||||
resolved "https://registry.yarnpkg.com/react-native-linear-gradient/-/react-native-linear-gradient-2.5.6.tgz#96215cbc5ec7a01247a20890888aa75b834d44a0"
|
resolved "https://registry.yarnpkg.com/react-native-linear-gradient/-/react-native-linear-gradient-2.5.6.tgz#96215cbc5ec7a01247a20890888aa75b834d44a0"
|
||||||
integrity sha512-HDwEaXcQIuXXCV70O+bK1rizFong3wj+5Q/jSyifKFLg0VWF95xh8XQgfzXwtq0NggL9vNjPKXa016KuFu+VFg==
|
integrity sha512-HDwEaXcQIuXXCV70O+bK1rizFong3wj+5Q/jSyifKFLg0VWF95xh8XQgfzXwtq0NggL9vNjPKXa016KuFu+VFg==
|
||||||
|
|
||||||
|
react-native-locale-detector@^1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/react-native-locale-detector/-/react-native-locale-detector-1.0.1.tgz#c002261ecb60619e5952257c8c7fa31c2c15ed30"
|
||||||
|
integrity sha1-wAImHstgYZ5ZUiV8jH+jHCwV7TA=
|
||||||
|
|
||||||
react-native-ratings@^7.2.0:
|
react-native-ratings@^7.2.0:
|
||||||
version "7.3.0"
|
version "7.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/react-native-ratings/-/react-native-ratings-7.3.0.tgz#32e11e4ed944ba8adbbc995d601df3f131619b6f"
|
resolved "https://registry.yarnpkg.com/react-native-ratings/-/react-native-ratings-7.3.0.tgz#32e11e4ed944ba8adbbc995d601df3f131619b6f"
|
||||||
|
@ -7251,6 +7330,13 @@ tr46@^1.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
punycode "^2.1.0"
|
punycode "^2.1.0"
|
||||||
|
|
||||||
|
translate-google-api@^1.0.4:
|
||||||
|
version "1.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/translate-google-api/-/translate-google-api-1.0.4.tgz#562073926d4fa069ea4c105a69c0af9e1536bd92"
|
||||||
|
integrity sha512-KVXmo4+64/H1vIbnzf2zNiJ2JLeEB3jrEnNRP2EFNAGNqna/5bmw/Cps3pCHu0n3BzTOoWh9u6wFvrRYdzQ6Iw==
|
||||||
|
dependencies:
|
||||||
|
axios "^0.20.0"
|
||||||
|
|
||||||
tslib@^1.8.1, tslib@^1.9.0:
|
tslib@^1.8.1, tslib@^1.9.0:
|
||||||
version "1.14.1"
|
version "1.14.1"
|
||||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
|
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
|
||||||
|
@ -7502,6 +7588,11 @@ vlq@^1.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/vlq/-/vlq-1.0.1.tgz#c003f6e7c0b4c1edd623fd6ee50bbc0d6a1de468"
|
resolved "https://registry.yarnpkg.com/vlq/-/vlq-1.0.1.tgz#c003f6e7c0b4c1edd623fd6ee50bbc0d6a1de468"
|
||||||
integrity sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==
|
integrity sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==
|
||||||
|
|
||||||
|
void-elements@^2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec"
|
||||||
|
integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=
|
||||||
|
|
||||||
w3c-hr-time@^1.0.1:
|
w3c-hr-time@^1.0.1:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
|
resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user