website
This commit is contained in:
parent
11ed571d02
commit
7ef0dd1868
Binary file not shown.
|
@ -3,7 +3,7 @@
|
|||
buildscript {
|
||||
ext {
|
||||
buildToolsVersion = "27.0.3"
|
||||
minSdkVersion = 16
|
||||
minSdkVersion = 21
|
||||
compileSdkVersion = 27
|
||||
targetSdkVersion = 26
|
||||
supportLibVersion = "27.1.1"
|
||||
|
|
|
@ -22,4 +22,4 @@ android.enableAapt2=false
|
|||
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
|
||||
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
|
||||
MYAPP_RELEASE_STORE_PASSWORD=aspire98H
|
||||
MYAPP_RELEASE_KEY_PASSWORD=encontroINFORMATICA2019
|
||||
MYAPP_RELEASE_KEY_PASSWORD=aspire98H
|
|
@ -15,7 +15,8 @@ import {
|
|||
LinearGradient,
|
||||
TouchableOpacity,
|
||||
TextInput,
|
||||
|
||||
NetInfo,
|
||||
Animated
|
||||
|
||||
} from 'react-native';
|
||||
|
||||
|
@ -25,7 +26,7 @@ import {connect} from 'react-redux';
|
|||
import QRCodeScanner from 'react-native-qrcode-scanner';
|
||||
import {UtilStyles} from './assets/styles'
|
||||
|
||||
import * as Actions from './store/actions'; //Import your actions
|
||||
import * as Actions from './store/actions';
|
||||
|
||||
import {RkButton, RkTheme, RkText, RkTextInput} from 'react-native-ui-kitten';
|
||||
|
||||
|
@ -40,7 +41,9 @@ const SCREEN_WIDTH = Dimensions.get("window").width;
|
|||
|
||||
import Swiper from 'react-native-swiper';
|
||||
|
||||
|
||||
function handleConnectivityChange() {
|
||||
console.log("asdasd");
|
||||
}
|
||||
class App extends Component {
|
||||
|
||||
_activate=()=>{
|
||||
|
@ -93,7 +96,15 @@ class App extends Component {
|
|||
checkValue=(e)=>{
|
||||
console.log("check"+e)
|
||||
}
|
||||
_handleConnectionChange = (isConnected) => {
|
||||
this.props.connectionState(true);
|
||||
};
|
||||
|
||||
|
||||
componentDidMount() {
|
||||
|
||||
NetInfo.isConnected.addEventListener('connectionChange', this.handleConnectivityChange);
|
||||
|
||||
this.setState({isModalVisible: false})
|
||||
//verifica se o utilizador tem token guardado
|
||||
this.props.checkUser();
|
||||
|
@ -102,6 +113,10 @@ class App extends Component {
|
|||
|
||||
|
||||
}
|
||||
componentWillUnmount() {
|
||||
NetInfo.isConnected.removeEventListener('connectionChange', this.handleConnectivityChange);
|
||||
}
|
||||
|
||||
_keyboardDidShow () {
|
||||
//alert('Keyboard Shown');
|
||||
// this.setState({push:0})
|
||||
|
@ -120,7 +135,7 @@ class App extends Component {
|
|||
this.props.closeLoginQRScan();
|
||||
this.setState({username:e.data})
|
||||
|
||||
console.log("tentativa de login");
|
||||
console.log("QR code lido");
|
||||
|
||||
|
||||
|
||||
|
@ -128,24 +143,25 @@ class App extends Component {
|
|||
|
||||
render() {
|
||||
|
||||
if (this.props.onHold && !this.props.logged) {
|
||||
if (!this.props.logged) {
|
||||
|
||||
|
||||
return (
|
||||
<View style={UtilStyles.containerLoading}>
|
||||
<Text>CARREGANDO {this.props.onHold}</Text>
|
||||
<ActivityIndicator size="large" color="#0000ff"/>
|
||||
|
||||
<ActivityIndicator size="large" color="red"/>
|
||||
</View>
|
||||
)
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
//console.log('token... '+ this.props.logged)
|
||||
// console.log('token... '+ this.props.logged)
|
||||
|
||||
//se existir token
|
||||
|
||||
if (this.props.logged) {
|
||||
if (this.props.logged ) {
|
||||
|
||||
return (
|
||||
|
||||
|
@ -153,41 +169,8 @@ class App extends Component {
|
|||
)
|
||||
}
|
||||
return (
|
||||
<Swiper style={styles.wrapper}
|
||||
showsButtons={false}
|
||||
//paginationStyle={{backgroundColor: 'white'}}
|
||||
dot={<View style={{backgroundColor:'rgba(0,0,0,.2)', width: 15, height: 15,borderRadius: 8, marginLeft: 6, marginRight: 6, marginTop: 6, marginBottom: 6,}} />}
|
||||
activeDot={<View style={{backgroundColor: 'red', width: 15, height: 15, borderRadius: 8, marginLeft: 6, marginRight: 6, marginTop: 6, marginBottom: 6,}} />}
|
||||
|
||||
>
|
||||
|
||||
|
||||
<View style={styles.slide1}>
|
||||
<View style={styles.logoContainer}>
|
||||
|
||||
<Image style={styles.logo2} source={require('./assets/img/logo2.png')}/>
|
||||
|
||||
</View>
|
||||
|
||||
<ImageBackground
|
||||
opacity={0.5}
|
||||
source={require('./assets/img/bg_coimbra.png')}
|
||||
style={{
|
||||
width: '100%',
|
||||
height: '100%',
|
||||
|
||||
// marginTop:150,
|
||||
backgroundColor: 'rgba(255,255,255,0.4)' ,
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
>
|
||||
|
||||
<Text></Text>
|
||||
|
||||
</ImageBackground>
|
||||
|
||||
</View>
|
||||
|
||||
<View style={styles.slide2}>
|
||||
<Modal isVisible={this.props.UI_loginScannerActive}>
|
||||
|
@ -239,8 +222,7 @@ class App extends Component {
|
|||
</View>
|
||||
</TouchableOpacity>
|
||||
|
||||
|
||||
</View>
|
||||
</View>
|
||||
|
||||
<TextInput style={styles.passwordInput}
|
||||
onFocus={this._print}
|
||||
|
@ -293,11 +275,8 @@ class App extends Component {
|
|||
</View>
|
||||
</View>
|
||||
</View>
|
||||
<View style={styles.slide3}>
|
||||
<Text>Manual de utilização</Text>
|
||||
</View>
|
||||
|
||||
</Swiper>
|
||||
|
||||
|
||||
);
|
||||
|
||||
}
|
||||
|
@ -349,7 +328,7 @@ const styles = {
|
|||
|
||||
},
|
||||
scanQR:{
|
||||
fontFamily: 'Open Sans',
|
||||
|
||||
//flexDirection: 'row',
|
||||
paddingTop:5,
|
||||
backgroundColor:10,
|
||||
|
@ -383,7 +362,7 @@ const styles = {
|
|||
input: {
|
||||
|
||||
|
||||
fontFamily: 'Open Sans',
|
||||
|
||||
flex: 1,
|
||||
paddingRight: 10,
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ import IconFA from "react-native-vector-icons/FontAwesome5"
|
|||
import Profile from "./screens/Profile";
|
||||
import editCalendar from './screens/editCalendar';
|
||||
import choosePath from './screens/choosePath';
|
||||
import calendarDetail from './screens/calendarDetail';
|
||||
|
||||
|
||||
const AppStack = createBottomTabNavigator(
|
||||
|
@ -63,7 +64,7 @@ const AppStack = createBottomTabNavigator(
|
|||
|
||||
navigationOptions: {
|
||||
tabBarIcon: ({tintColor}) => (
|
||||
<Icon name="ios-qr-scanner" color={tintColor} size={45}/>
|
||||
<Icon name="ios-qr-scanner" color={tintColor} size={30}/>
|
||||
),
|
||||
},
|
||||
},
|
||||
|
@ -85,7 +86,7 @@ const AppStack = createBottomTabNavigator(
|
|||
navigationOptions: {
|
||||
|
||||
tabBarIcon: ({tintColor}) => (
|
||||
<Icon name="md-home" color={tintColor} size={30}/>
|
||||
<Icon name="ios-person" color={tintColor} size={30}/>
|
||||
)
|
||||
},
|
||||
},
|
||||
|
@ -97,8 +98,8 @@ const AppStack = createBottomTabNavigator(
|
|||
initialRouteName: 'Home',
|
||||
|
||||
tabBarOptions: {
|
||||
showLabel: false, // hide labels
|
||||
activeTintColor: '#858683', // active icon color
|
||||
showLabel: true, // hide labels
|
||||
activeTintColor: '#CC1A17', // active icon color
|
||||
inactiveTintColor: '#d8d6c9', // inactive icon color
|
||||
style: {
|
||||
backgroundColor: '#fff' // TabBar background
|
||||
|
@ -117,8 +118,11 @@ const Stack = createStackNavigator({
|
|||
return {
|
||||
headerTitle: `${navigation.state.routes[index].routeName}`,
|
||||
headerRight: (
|
||||
<TouchableOpacity style={{marginRight: 20}} onPress={() => navigation.navigate('Profile')}>
|
||||
<TouchableOpacity style={{marginRight: 20, flex:1, flexDirection:'row'}} onPress={() => navigation.navigate('Profile')}>
|
||||
|
||||
<Text>editar</Text>
|
||||
<IconFA name="user-edit" size={22}/>
|
||||
|
||||
</TouchableOpacity>
|
||||
)
|
||||
}
|
||||
|
@ -157,6 +161,9 @@ const Stack = createStackNavigator({
|
|||
},
|
||||
choosePath:{
|
||||
screen: choosePath
|
||||
},
|
||||
calendarDetail:{
|
||||
screen:calendarDetail
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ export const UtilStyles = StyleSheet.create({
|
|||
flex: 1,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
backgroundColor: '#F5FCFF',
|
||||
backgroundColor: 'white',
|
||||
},
|
||||
titleText: {
|
||||
fontSize: 20,
|
||||
|
|
|
@ -39,7 +39,7 @@ const FourthRoute = () => (
|
|||
|
||||
|
||||
class Calendar extends React.Component {
|
||||
|
||||
|
||||
state = {
|
||||
index: 0,
|
||||
routes: [
|
||||
|
@ -58,11 +58,16 @@ class Calendar extends React.Component {
|
|||
console.log(this.props.events);
|
||||
}
|
||||
|
||||
_openDetails=()=>{
|
||||
|
||||
console.log("los");
|
||||
}
|
||||
|
||||
renderDetail = ({item, index}) => {
|
||||
const {navigate} = this.props.navigation;
|
||||
// <Image source={{ uri:item.imageUrl, width:'100%' , height:100 }} style={{borderRadius:0}}/>
|
||||
return (
|
||||
|
||||
<TouchableOpacity onPress={() => navigate('calendarDetail', { info: item })} >
|
||||
|
||||
<View style={styles.event}>
|
||||
<View style={styles.titleContainer}>
|
||||
|
@ -82,6 +87,7 @@ class Calendar extends React.Component {
|
|||
</View>
|
||||
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -133,7 +139,6 @@ class Calendar extends React.Component {
|
|||
|
||||
super()
|
||||
|
||||
|
||||
const archeryImgSource = require('../assets/img/archery.png');
|
||||
const badmintonImgSource = require('../assets/img/badminton.png');
|
||||
const lunchImgSource = require('../assets/img/lunch.png');
|
||||
|
@ -158,11 +163,57 @@ class Calendar extends React.Component {
|
|||
|
||||
const FirstRoute = () => (
|
||||
|
||||
<ScrollView contentContainerStyle={styles.contentContainer}>
|
||||
|
||||
<Timeline
|
||||
|
||||
data={this.props.events}
|
||||
|
||||
timeContainerStyle={{ marginTop: 0}}
|
||||
|
||||
timeStyle={{
|
||||
|
||||
textAlign: 'center',
|
||||
// backgroundColor: 'red',
|
||||
|
||||
height:100,
|
||||
color:"#CC1A17",
|
||||
padding: 5,
|
||||
//marginTop:10,
|
||||
// fontWeight:'bold',
|
||||
fontSize:23,
|
||||
|
||||
//borderRadius: 13
|
||||
}}
|
||||
|
||||
descriptionStyle={{color: 'red'}}
|
||||
|
||||
renderDetail={this.renderDetail}
|
||||
|
||||
lineColor='rgba(0,0,0,0)'
|
||||
lineWidth={1}
|
||||
separator={false}
|
||||
flatListProps={{
|
||||
style: {
|
||||
|
||||
margin: 15
|
||||
}
|
||||
|
||||
|
||||
}}
|
||||
keyExtractor={(item, index) => index.toString()}
|
||||
|
||||
|
||||
/>
|
||||
|
||||
|
||||
</ScrollView>
|
||||
|
||||
)
|
||||
const SecondRoute = () => (
|
||||
|
||||
<ScrollView contentContainerStyle={styles.contentContainer}>
|
||||
|
||||
|
||||
|
||||
<Timeline
|
||||
|
||||
data={this.props.events}
|
||||
|
@ -209,56 +260,21 @@ class Calendar extends React.Component {
|
|||
|
||||
)
|
||||
|
||||
const SecondRoute = () => (
|
||||
|
||||
|
||||
<ScrollView contentContainerStyle={styles.contentContainer}>
|
||||
|
||||
<Timeline
|
||||
|
||||
|
||||
data={this.props.events}
|
||||
|
||||
timeContainerStyle={{minWidth: 52, marginTop: 0}}
|
||||
|
||||
timeStyle={{
|
||||
textAlign: 'center',
|
||||
backgroundColor: '#ff9797',
|
||||
color: 'white',
|
||||
padding: 5,
|
||||
borderRadius: 13
|
||||
}}
|
||||
|
||||
|
||||
|
||||
// descriptionStyle={{color: 'gray'}}
|
||||
|
||||
lineWidth={0}
|
||||
|
||||
renderDetail={this.renderDetail}
|
||||
|
||||
lineColor={'red'}
|
||||
|
||||
flatListProps={{
|
||||
style: {
|
||||
|
||||
// margin: 15
|
||||
}
|
||||
|
||||
|
||||
}}
|
||||
|
||||
keyExtractor={(item, index) => index.toString()}
|
||||
|
||||
|
||||
/>
|
||||
|
||||
|
||||
</ScrollView>
|
||||
|
||||
)
|
||||
|
||||
return (
|
||||
|
||||
<View style={{flex:1}}>
|
||||
<View>
|
||||
<Text style={{
|
||||
backgroundColor:"#CC1A17",
|
||||
color:'white',
|
||||
fontWeight:'bold',
|
||||
fontSize:15,
|
||||
textAlign:'center',
|
||||
|
||||
}}>
|
||||
WEB DEVELOPMENT
|
||||
</Text>
|
||||
</View>
|
||||
<TabView
|
||||
navigationState={this.state}
|
||||
renderScene={SceneMap({
|
||||
|
@ -274,6 +290,7 @@ class Calendar extends React.Component {
|
|||
style={{backgroundColor:"#F2F2F2"}}
|
||||
indicatorStyle={{ backgroundColor: 'pink' }}
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -282,13 +299,24 @@ const styles = StyleSheet.create({
|
|||
tabBar: {
|
||||
flexDirection: 'row',
|
||||
paddingTop:0,
|
||||
marginTop:0,
|
||||
backgroundColor:'white',
|
||||
borderWidth: 1,
|
||||
borderRadius: 2,
|
||||
borderColor: '#ddd',
|
||||
borderBottomWidth: 0,
|
||||
shadowColor: '#000',
|
||||
shadowOffset: { width: 0, height: 2 },
|
||||
shadowOpacity: 0.8,
|
||||
shadowRadius: 2,
|
||||
elevation: 2,
|
||||
|
||||
backgroundColor:'white'
|
||||
|
||||
},
|
||||
tabItem: {
|
||||
flex: 1,
|
||||
alignItems: 'center',
|
||||
padding: 16,
|
||||
padding: 10,
|
||||
},
|
||||
details: {
|
||||
backgroundColor: "#FFFFFF",
|
||||
|
@ -316,8 +344,14 @@ const styles = StyleSheet.create({
|
|||
event: {
|
||||
borderRadius: 5,
|
||||
backgroundColor: "#FFFFFF",
|
||||
marginLeft:-25
|
||||
marginLeft:-25,
|
||||
|
||||
shadowColor: "#000",
|
||||
shadowOffset: { width: 0, height: 2,},
|
||||
shadowOpacity: 0.25,
|
||||
shadowRadius: 1,
|
||||
elevation: 2,
|
||||
marginRight:2
|
||||
|
||||
|
||||
},
|
||||
|
|
|
@ -10,7 +10,8 @@ import {
|
|||
Dimensions,
|
||||
StyleSheet,
|
||||
Image,
|
||||
ImageBackground
|
||||
ImageBackground,
|
||||
NetInfo
|
||||
} from 'react-native';
|
||||
|
||||
import {Shadow} from 'react-native-shadow'
|
||||
|
@ -38,17 +39,6 @@ import {Card, Divider} from 'react-native-elements'
|
|||
|
||||
import RNMaterialShadows from 'react-native-material-shadows';
|
||||
|
||||
const shadowOpt = {
|
||||
width:100,
|
||||
height:100,
|
||||
color:"#000",
|
||||
border:2,
|
||||
radius:3,
|
||||
opacity:0.2,
|
||||
x:0,
|
||||
y:3,
|
||||
style:{marginVertical:5}
|
||||
}
|
||||
|
||||
class Home extends Component {
|
||||
|
||||
|
@ -73,9 +63,11 @@ class Home extends Component {
|
|||
user: {Name: ''}
|
||||
};
|
||||
}
|
||||
|
||||
handleConnectivityChange = () => {
|
||||
console.log("asdasdasdasdasd");
|
||||
}
|
||||
componentDidMount() {
|
||||
|
||||
NetInfo.isConnected.addEventListener('connectionChange', this.handleConnectivityChange);
|
||||
|
||||
this.props.hold();
|
||||
//this.props.logoutUser();
|
||||
|
@ -92,6 +84,9 @@ class Home extends Component {
|
|||
|
||||
|
||||
}
|
||||
componentWillUnmount() {
|
||||
NetInfo.isConnected.removeEventListener('connectionChange', this.handleConnectivityChange);
|
||||
}
|
||||
|
||||
bClick() {
|
||||
|
||||
|
@ -142,9 +137,6 @@ _update=()=>{
|
|||
|
||||
// marginTop:150,
|
||||
backgroundColor: 'rgba(255,255,255,1)' ,
|
||||
shadowOffset:{ width: 10, height: 10, },
|
||||
shadowColor: 'black',
|
||||
shadowOpacity: 1.0
|
||||
}
|
||||
}>
|
||||
|
||||
|
|
|
@ -0,0 +1,183 @@
|
|||
import * as React from 'react';
|
||||
import {
|
||||
View,
|
||||
StyleSheet,
|
||||
Dimensions,
|
||||
Image,
|
||||
ScrollView,
|
||||
Text,
|
||||
Button,
|
||||
TouchableOpacity
|
||||
} from 'react-native';
|
||||
|
||||
import {TabView, TabBar, SceneMap} from 'react-native-tab-view';
|
||||
import {
|
||||
RkButton, RkCard, RkText,
|
||||
RkTheme
|
||||
} from 'react-native-ui-kitten';
|
||||
import Timeline from 'react-native-timeline-feed'
|
||||
|
||||
import * as Progress from 'react-native-progress';
|
||||
|
||||
|
||||
import {connect} from 'react-redux';
|
||||
|
||||
import {bindActionCreators} from 'redux';
|
||||
|
||||
import * as Actions from '../store/actions'; //Import your actionss
|
||||
import Swiper from 'react-native-swiper';
|
||||
|
||||
const SCREEN_HEIGHT = Dimensions.get("window").height;
|
||||
const SCREEN_WIDTH = Dimensions.get("window").width;
|
||||
import FitImage from 'react-native-fit-image';
|
||||
|
||||
|
||||
const formatObj = (obj) => {
|
||||
|
||||
let a = {};
|
||||
|
||||
a.push({})
|
||||
|
||||
return a
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
class calendarDetail extends React.Component {
|
||||
|
||||
state = {
|
||||
|
||||
};
|
||||
|
||||
componentDidMount() {
|
||||
|
||||
this.props.getEvents(this.props.user);
|
||||
console.log('didMount');
|
||||
console.log(this.props.events);
|
||||
}
|
||||
|
||||
|
||||
|
||||
_update = () => {
|
||||
this.setState({user: this.props.user});
|
||||
console.log(this.props.events);
|
||||
}
|
||||
|
||||
|
||||
constructor(props) {
|
||||
|
||||
super(props)
|
||||
|
||||
|
||||
|
||||
this.data = [
|
||||
|
||||
|
||||
|
||||
]
|
||||
}
|
||||
|
||||
render() {
|
||||
const { navigation } = this.props;
|
||||
const info = navigation.getParam('info', 'error');
|
||||
console.log(info);
|
||||
return (
|
||||
<View>
|
||||
<Text>{info.name}, {info.description}</Text>
|
||||
</View>
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
|
||||
carreerPathContainer:{
|
||||
backgroundColor:'#CC1A17',
|
||||
height:50,
|
||||
flex:1,
|
||||
alignItems:'center',
|
||||
justifyContent:'center',
|
||||
paddingTop:15,
|
||||
},
|
||||
carreerPathText:{
|
||||
|
||||
height:50,
|
||||
color:'white',
|
||||
fontWeight:'bold',
|
||||
fontSize:20,
|
||||
|
||||
},
|
||||
companyHeader:{
|
||||
backgroundColor:'#dddddd',
|
||||
// height:150,
|
||||
borderRadius:5,
|
||||
margin:10,
|
||||
padding:10
|
||||
|
||||
|
||||
},
|
||||
companyTitle:{
|
||||
paddingBottom:5,
|
||||
fontWeight:'bold',
|
||||
color:'#777777',
|
||||
fontSize:17,
|
||||
|
||||
// padding:20
|
||||
},
|
||||
companyLogo: {
|
||||
|
||||
borderRadius: 20,
|
||||
|
||||
},
|
||||
|
||||
wrapper: {
|
||||
|
||||
},
|
||||
company:{
|
||||
flex:1,
|
||||
flexDirection:'row',
|
||||
// backgroundColor:'red',
|
||||
color:'black'
|
||||
},
|
||||
|
||||
companyLogoContainer:{
|
||||
flex:1,
|
||||
justifyContent: 'center',
|
||||
width:'60%',
|
||||
// backgroundColor:'white',
|
||||
margin:20,
|
||||
|
||||
|
||||
},
|
||||
aboutCompany:{
|
||||
width:SCREEN_WIDTH,
|
||||
flex:1,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
function mapStateToProps(state, props) {
|
||||
|
||||
return {
|
||||
|
||||
token: state.apiReducer.token,
|
||||
user: state.apiReducer.user,
|
||||
logged: state.apiReducer.logged,
|
||||
events: state.apiReducer.events
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function mapDispatchToProps(dispatch) {
|
||||
|
||||
return bindActionCreators(Actions, dispatch);
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps, mapDispatchToProps)(calendarDetail);
|
|
@ -31,6 +31,8 @@ const SCREEN_HEIGHT = Dimensions.get("window").height;
|
|||
const SCREEN_WIDTH = Dimensions.get("window").width;
|
||||
import FitImage from 'react-native-fit-image';
|
||||
|
||||
import { Dropdown } from 'react-native-material-dropdown';
|
||||
|
||||
|
||||
const formatObj = (obj) => {
|
||||
|
||||
|
@ -79,41 +81,25 @@ class choosePath extends React.Component {
|
|||
}
|
||||
|
||||
render() {
|
||||
let data = [{
|
||||
value: 'Desenvolvimento Web',
|
||||
}, {
|
||||
value: 'Inteligencia artificial',
|
||||
}, {
|
||||
value: 'Redes e segurança',
|
||||
}];
|
||||
|
||||
return (
|
||||
<Swiper style={styles.wrapper} showsButtons={false}>
|
||||
|
||||
<View style={styles.company}>
|
||||
<ScrollView>
|
||||
<View style={styles.carreerPathContainer}>
|
||||
<Text style={styles.carreerPathText}>Web development</Text>
|
||||
</View>
|
||||
<View style={styles.aboutCompany}>
|
||||
|
||||
<View style={styles.companyLogoContainer}>
|
||||
<FitImage source={{uri:'http://trabalhotemporario.pt/wp-content/uploads/2014/03/blip.jpg'}} style={styles.companyLogo}/>
|
||||
</View>
|
||||
</View>
|
||||
<View style={styles.companyHeader}>
|
||||
<Text style={styles.companyTitle}>Blip: Game On</Text>
|
||||
<Text>Based in Porto, Blip is a software engineering company with a difference. Founded in 2009, we already have 300 Blippers. And we’re still growing.</Text>
|
||||
<Text>We’re in the API Billionaire’s Club alongside Twitter, Facebook and Google. The code we write is used by over five million people across the world. The websites, mobile apps and retail systems we create keep us three steps ahead of the competition, from Europe to Australia.</Text>
|
||||
</View>
|
||||
|
||||
|
||||
|
||||
</ScrollView>
|
||||
|
||||
</View>
|
||||
<View>
|
||||
<Text>asd</Text>
|
||||
</View>
|
||||
|
||||
|
||||
|
||||
</Swiper>
|
||||
<View style={{width:SCREEN_WIDTH*0.7}}>
|
||||
<Dropdown
|
||||
label='Career Path'
|
||||
data={data}
|
||||
|
||||
/>
|
||||
</View>
|
||||
|
||||
)
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -1,9 +1,20 @@
|
|||
import { AsyncStorage } from 'react-native';
|
||||
const axios = require('axios');
|
||||
|
||||
import { NetInfo } from 'react-native';
|
||||
|
||||
|
||||
import { DATA_AVAILABLE, API_LOGIN, CHECK_USER, LOGOUT_USER, USER_INFO, HOLD, GET_EVENTS } from "./actionTypes" //Import the actions types constant we defined in our actions
|
||||
import moment from 'moment'
|
||||
|
||||
|
||||
export const connectionState = (status) => {
|
||||
console.log(status);
|
||||
return { type: 'CHANGE_CONNECTION_STATUS', isConnected: status };
|
||||
};
|
||||
|
||||
|
||||
|
||||
export function getEvents(user){
|
||||
return (dispatch)=>{
|
||||
let events = [];
|
||||
|
@ -68,6 +79,7 @@ const saveToken = async token => {
|
|||
obj.expirationDateToken = await AsyncStorage.getItem('expirationDateToken') || 'none';
|
||||
obj.refreshToken = await AsyncStorage.getItem('refreshToken') || 'none';
|
||||
|
||||
|
||||
|
||||
} catch (error) {
|
||||
// Error retrieving data
|
||||
|
@ -160,7 +172,7 @@ export function login(user, pass){
|
|||
}
|
||||
var obj={
|
||||
access_token:parsed.access_token,
|
||||
expirationDateToken:Math.round(new Date().getTime()/1000) + parsed.expires_in,
|
||||
expirationDateToken:Math.round(new Date().getTime()/1000) + 3598,
|
||||
refreshToken:parsed.refresh_token,
|
||||
valid:true
|
||||
};
|
||||
|
@ -240,13 +252,15 @@ export function getUserInfo(token){
|
|||
|
||||
.then(function(res) {
|
||||
|
||||
|
||||
console.log(res);
|
||||
let obj = JSON.parse(res._bodyText);
|
||||
|
||||
dispatch({ type: USER_INFO, user: obj,onHold:false, logged:true });
|
||||
|
||||
}).catch(function(res){
|
||||
dispatch({ type: USER_INFO, user: '',onHold:false, logged:true });
|
||||
|
||||
console.log("erro")
|
||||
// dispatch({ type: USER_INFO,onHold:false});
|
||||
})
|
||||
|
||||
|
||||
|
@ -288,7 +302,7 @@ export function checkUser(){
|
|||
|
||||
a.valid=false;
|
||||
|
||||
console.log('check user deu falso')
|
||||
console.log('token não existe em memória')
|
||||
|
||||
dispatch({type: CHECK_USER,token:a,logged:false, onHold:false});
|
||||
|
||||
|
@ -297,25 +311,23 @@ export function checkUser(){
|
|||
|
||||
a.valid=true;
|
||||
|
||||
|
||||
console.log('Existe Token em memória' )
|
||||
console.log('Existe Token em memória :'+ a.refreshToken )
|
||||
|
||||
//se expirar
|
||||
if(Math.round(new Date().getTime()/1000) >= a.expirationDateToken){
|
||||
|
||||
refresh=a.refreshToken
|
||||
// a.valid=false;
|
||||
|
||||
|
||||
//chamar funçao para renovar
|
||||
console.log("expirou")
|
||||
|
||||
var details = {
|
||||
|
||||
|
||||
'grant_type': 'refresh_token',
|
||||
'refresh_token':refresh
|
||||
|
||||
};
|
||||
|
||||
var formBody = [];
|
||||
|
||||
for (var property in details) {
|
||||
|
@ -330,8 +342,6 @@ export function checkUser(){
|
|||
|
||||
formBody = formBody.join("&");
|
||||
|
||||
|
||||
|
||||
fetch('http://enei2019.uingress.com/internal/api/token', {
|
||||
|
||||
method: 'POST',
|
||||
|
@ -345,16 +355,18 @@ export function checkUser(){
|
|||
|
||||
}).then(res=>res.json()).then(parsed=>{
|
||||
|
||||
|
||||
console.log(parsed);
|
||||
|
||||
if(parsed.error=='invalid_grant'){
|
||||
|
||||
console.log(formBody);
|
||||
dispatch({type: CHECK_USER, token:'', logged:false, onHold:false});
|
||||
dispatch({type: CHECK_USER, token:'', logged:false, onHold:false});
|
||||
|
||||
}else{
|
||||
|
||||
var obj={
|
||||
access_token:parsed.access_token,
|
||||
expirationDateToken:Math.round(new Date().getTime()/1000) + parsed.expires_in,
|
||||
expirationDateToken:Math.round(new Date().getTime()/1000) + 3598,
|
||||
refreshToken:parsed.refresh_token,
|
||||
valid:true
|
||||
|
||||
|
@ -363,7 +375,7 @@ export function checkUser(){
|
|||
|
||||
// deleteToken();
|
||||
saveToken(obj).then(a=>{
|
||||
console.log("saved" )
|
||||
console.log("Token guardado" )
|
||||
console.log(obj)
|
||||
dispatch({type: CHECK_USER, token:obj, logged:true, onHold:false});
|
||||
|
||||
|
@ -372,7 +384,7 @@ export function checkUser(){
|
|||
|
||||
|
||||
}).catch(a=>{
|
||||
console.log("Putasss")
|
||||
console.log("erro na api")
|
||||
dispatch({type: CHECK_USER, token:'', logged:false, onHold:false});
|
||||
})
|
||||
|
||||
|
@ -384,7 +396,7 @@ export function checkUser(){
|
|||
|
||||
//fazer validação da data e renovar o token
|
||||
|
||||
dispatch({type: CHECK_USER, token:a, logged:true, onHold:false});
|
||||
dispatch({type: CHECK_USER, token:a, logged:true, onHold:false, user:{Name:'Henrique'}});
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -392,8 +404,8 @@ export function checkUser(){
|
|||
|
||||
}).catch(a=>{
|
||||
|
||||
console.log('erros');
|
||||
dispatch({type: CHECK_USER,token:false, logged:false});
|
||||
console.log('erro a ler o token'+ a);
|
||||
dispatch({type: CHECK_USER,token:false, logged:false, user:''});
|
||||
})
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,24 @@
|
|||
import { DATA_AVAILABLE, API_LOGIN, CHECK_USER, LOGOUT_USER, USER_INFO, HOLD, GET_EVENTS } from "../actions/actionTypes" //Import the actions types constant we defined in our actions
|
||||
|
||||
import { REHYDRATE } from 'redux-persist';
|
||||
|
||||
let apiState= { token:{valid:false}, tokenData:'error', logged:false, onHold:true, user:{}, events:[], failedAttempt:false}
|
||||
let apiState= { isConnected:false, token:{valid:false}, tokenData:'error', logged:false, onHold:true,user:{}, events:[], failedAttempt:false}
|
||||
|
||||
const apiReducer = (state = apiState, action) => {
|
||||
|
||||
switch(action.type){
|
||||
case REHYDRATE:
|
||||
console.log( action.payload)
|
||||
return {
|
||||
// ...state,
|
||||
// logged:false,
|
||||
//onHold:true,
|
||||
|
||||
user: action.payload.apiReducer.user
|
||||
};
|
||||
case 'CHANGE_CONNECTION_STATUS':
|
||||
return Object.assign({}, state, {
|
||||
isConnected: action.isConnected,
|
||||
});
|
||||
|
||||
case HOLD:
|
||||
|
||||
|
@ -14,13 +27,13 @@ const apiReducer = (state = apiState, action) => {
|
|||
|
||||
case API_LOGIN:
|
||||
|
||||
state=Object.assign({},state, { logged:action.logged, token:action.token, failedAttempt: action.failedAttempt});
|
||||
state=Object.assign({},state, { logged:action.logged, token:action.token, failedAttempt: action.failedAttempt, user:user});
|
||||
|
||||
return state;
|
||||
|
||||
case CHECK_USER:
|
||||
|
||||
state=Object.assign({},state, { token:action.token, logged:action.logged, onHold:action.onHold});
|
||||
state=Object.assign({},state, { token:action.token,logged:action.logged, onHold:action.onHold});
|
||||
|
||||
return state;
|
||||
|
||||
|
@ -41,7 +54,8 @@ const apiReducer = (state = apiState, action) => {
|
|||
state=Object.assign({},state, { events: action.events});
|
||||
|
||||
return state;
|
||||
|
||||
|
||||
|
||||
|
||||
default:
|
||||
return state;
|
||||
|
|
|
@ -1,7 +1,25 @@
|
|||
import { createStore, applyMiddleware } from 'redux';
|
||||
import { createStore, applyMiddleware , compose} from 'redux';
|
||||
import thunk from 'redux-thunk';
|
||||
|
||||
import reducers from './reducers/index'; //Import the reducer
|
||||
|
||||
|
||||
import {persistStore, persistReducer} from 'redux-persist'
|
||||
|
||||
import {AsyncStorage} from 'react-native'
|
||||
|
||||
const persistConfig={
|
||||
|
||||
key:'root' ,
|
||||
storage: AsyncStorage,
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
const persistedReduzer= persistReducer(persistConfig, reducers);
|
||||
// Connect our store to the reducers
|
||||
export default createStore(reducers, applyMiddleware(thunk));
|
||||
export const store = createStore(persistedReduzer, applyMiddleware(thunk));
|
||||
|
||||
export const persistor=persistStore(store);
|
18
App/index.js
18
App/index.js
|
@ -1,18 +1,30 @@
|
|||
/** @format */
|
||||
import React from 'react';
|
||||
import {AppRegistry} from 'react-native';
|
||||
import {AppRegistry, View,Text} from 'react-native';
|
||||
import {Provider} from 'react-redux';
|
||||
|
||||
import {name as appName} from './app.json';
|
||||
|
||||
import store from './app/store/store'; //Import the store
|
||||
import {PersistGate} from 'redux-persist/integration/react'
|
||||
|
||||
|
||||
import App from './app/App' //Import the component file
|
||||
|
||||
|
||||
import {store, persistor} from "./app/store/store";
|
||||
|
||||
rendeLoading=()=>{
|
||||
<View>
|
||||
<Text>loading........</Text>
|
||||
</View>
|
||||
}
|
||||
const RNRedux = () => (
|
||||
<Provider store={store}>
|
||||
<App />
|
||||
<PersistGate persistor={persistor} loading={this.rendeLoading()}>
|
||||
<App />
|
||||
</PersistGate>
|
||||
|
||||
|
||||
</Provider>
|
||||
);
|
||||
|
||||
|
|
570
App/ios/enei2019.xcodeproj/project.pbxproj → App/ios/app.xcodeproj/project.pbxproj
Executable file → Normal file
570
App/ios/enei2019.xcodeproj/project.pbxproj → App/ios/app.xcodeproj/project.pbxproj
Executable file → Normal file
|
@ -5,6 +5,7 @@
|
|||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; };
|
||||
00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; };
|
||||
|
@ -35,28 +36,29 @@
|
|||
2D16E6881FA4F8E400B85C8A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D16E6891FA4F8E400B85C8A /* libReact.a */; };
|
||||
2DCD954D1E0B4F2C00145EB5 /* appTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* appTests.m */; };
|
||||
2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.a */; };
|
||||
43A080C42246430685BC7859 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A55A26724384416FAF74A98D /* Ionicons.ttf */; };
|
||||
514DB1DF2E3B452F9EF272E3 /* libRNVectorIcons-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 95B0A42B6CD8441E904E6EB9 /* libRNVectorIcons-tvOS.a */; };
|
||||
69E1B84AE0DF486CB1B1D226 /* libBVLinearGradient.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C00CE8A4E3B747F9816B91CF /* libBVLinearGradient.a */; };
|
||||
832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; };
|
||||
ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; };
|
||||
BE2BDF992200F95B0001B8A8 /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE2BDF982200F9490001B8A8 /* libRNCamera.a */; };
|
||||
BE2BDF9A2200F96A0001B8A8 /* libRNGestureHandler.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE2BDF922200F93B0001B8A8 /* libRNGestureHandler.a */; };
|
||||
BE2BDFA12200F9880001B8A8 /* libReactNativePermissions.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE2BDFA02200F9830001B8A8 /* libReactNativePermissions.a */; };
|
||||
BE2BDFE2220101420001B8A8 /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE2BDFDF2201012E0001B8A8 /* libRNVectorIcons.a */; };
|
||||
BEA7C1C022034BC800B47CD7 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B122034BC800B47CD7 /* MaterialIcons.ttf */; };
|
||||
BEA7C1C122034BC800B47CD7 /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B222034BC800B47CD7 /* FontAwesome.ttf */; };
|
||||
BEA7C1C322034BC800B47CD7 /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B422034BC800B47CD7 /* FontAwesome5_Brands.ttf */; };
|
||||
BEA7C1C422034BC800B47CD7 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B522034BC800B47CD7 /* SimpleLineIcons.ttf */; };
|
||||
BEA7C1C522034BC800B47CD7 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B622034BC800B47CD7 /* Entypo.ttf */; };
|
||||
BEA7C1C622034BC800B47CD7 /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B722034BC800B47CD7 /* MaterialCommunityIcons.ttf */; };
|
||||
BEA7C1C722034BC800B47CD7 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B822034BC800B47CD7 /* Zocial.ttf */; };
|
||||
BEA7C1C822034BC800B47CD7 /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1B922034BC800B47CD7 /* Feather.ttf */; };
|
||||
BEA7C1C922034BC800B47CD7 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BA22034BC800B47CD7 /* FontAwesome5_Regular.ttf */; };
|
||||
BEA7C1CA22034BC800B47CD7 /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BB22034BC800B47CD7 /* FontAwesome5_Solid.ttf */; };
|
||||
BEA7C1CB22034BC800B47CD7 /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BC22034BC800B47CD7 /* AntDesign.ttf */; };
|
||||
BEA7C1CC22034BC800B47CD7 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BD22034BC800B47CD7 /* Foundation.ttf */; };
|
||||
BEA7C1CD22034BC800B47CD7 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BE22034BC800B47CD7 /* EvilIcons.ttf */; };
|
||||
BEA7C1CE22034BC800B47CD7 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BEA7C1BF22034BC800B47CD7 /* Octicons.ttf */; };
|
||||
7BB898A137474B3ABEF9425B /* libBVLinearGradient.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A757D24430CF4419B7ABDE21 /* libBVLinearGradient.a */; };
|
||||
BE104176D74E47E9A369B15A /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EB0A5A258CBE4EEFAD3C358E /* libRNVectorIcons.a */; };
|
||||
BE302B6D221B7875005626CF /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE302B6C221B7860005626CF /* libRNCamera.a */; };
|
||||
BE302B74221B7ACE005626CF /* libRNGestureHandler.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE302B73221B7AC8005626CF /* libRNGestureHandler.a */; };
|
||||
BE5EAB78221B7D5400E92E5B /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB69221B7D5300E92E5B /* MaterialIcons.ttf */; };
|
||||
BE5EAB79221B7D5400E92E5B /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6A221B7D5300E92E5B /* Entypo.ttf */; };
|
||||
BE5EAB7A221B7D5400E92E5B /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6B221B7D5300E92E5B /* FontAwesome.ttf */; };
|
||||
BE5EAB7B221B7D5400E92E5B /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6C221B7D5300E92E5B /* SimpleLineIcons.ttf */; };
|
||||
BE5EAB7C221B7D5400E92E5B /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6D221B7D5300E92E5B /* EvilIcons.ttf */; };
|
||||
BE5EAB7D221B7D5400E92E5B /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6E221B7D5300E92E5B /* FontAwesome5_Regular.ttf */; };
|
||||
BE5EAB7E221B7D5400E92E5B /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB6F221B7D5300E92E5B /* Foundation.ttf */; };
|
||||
BE5EAB7F221B7D5400E92E5B /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB70221B7D5300E92E5B /* Feather.ttf */; };
|
||||
BE5EAB80221B7D5400E92E5B /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB71221B7D5400E92E5B /* FontAwesome5_Solid.ttf */; };
|
||||
BE5EAB81221B7D5400E92E5B /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB72221B7D5400E92E5B /* AntDesign.ttf */; };
|
||||
BE5EAB82221B7D5400E92E5B /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB73221B7D5400E92E5B /* MaterialCommunityIcons.ttf */; };
|
||||
BE5EAB84221B7D5400E92E5B /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB75221B7D5400E92E5B /* FontAwesome5_Brands.ttf */; };
|
||||
BE5EAB85221B7D5400E92E5B /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB76221B7D5400E92E5B /* Octicons.ttf */; };
|
||||
BE5EAB86221B7D5400E92E5B /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE5EAB77221B7D5400E92E5B /* Zocial.ttf */; };
|
||||
BE5EAC3A221B83CF00E92E5B /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE302B75221B7C3B005626CF /* Ionicons.ttf */; };
|
||||
BE5EAC41221B889900E92E5B /* libReactNativePermissions.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE5EAC40221B888C00E92E5B /* libReactNativePermissions.a */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
|
@ -333,41 +335,55 @@
|
|||
remoteGlobalIDString = 358F4ED71D1E81A9004DF814;
|
||||
remoteInfo = RCTBlob;
|
||||
};
|
||||
BE2BDF912200F93B0001B8A8 /* PBXContainerItemProxy */ = {
|
||||
BE302B6B221B7860005626CF /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE2BDF682200F93B0001B8A8 /* RNGestureHandler.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
||||
remoteInfo = RNGestureHandler;
|
||||
};
|
||||
BE2BDF972200F9490001B8A8 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE2BDF932200F9490001B8A8 /* RNCamera.xcodeproj */;
|
||||
containerPortal = BE302B67221B7860005626CF /* RNCamera.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 4107012F1ACB723B00C6AA39;
|
||||
remoteInfo = RNCamera;
|
||||
};
|
||||
BE2BDF9F2200F9830001B8A8 /* PBXContainerItemProxy */ = {
|
||||
BE302B72221B7AC8005626CF /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE2BDF9B2200F9830001B8A8 /* ReactNativePermissions.xcodeproj */;
|
||||
containerPortal = BE302B6E221B7AC7005626CF /* RNGestureHandler.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 9D23B34F1C767B80008B4819;
|
||||
remoteInfo = ReactNativePermissions;
|
||||
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
||||
remoteInfo = RNGestureHandler;
|
||||
};
|
||||
BE2BDFDE2201012E0001B8A8 /* PBXContainerItemProxy */ = {
|
||||
BE5EABF6221B834400E92E5B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE2BDFD92201012E0001B8A8 /* RNVectorIcons.xcodeproj */;
|
||||
containerPortal = 664970B9D10A41A18B44727F /* RNVectorIcons.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 5DBEB1501B18CEA900B34395;
|
||||
remoteInfo = RNVectorIcons;
|
||||
};
|
||||
BE2BDFE02201012E0001B8A8 /* PBXContainerItemProxy */ = {
|
||||
BE5EABF8221B834400E92E5B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE2BDFD92201012E0001B8A8 /* RNVectorIcons.xcodeproj */;
|
||||
containerPortal = 664970B9D10A41A18B44727F /* RNVectorIcons.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = A39873CE1EA65EE60051E01A;
|
||||
remoteInfo = "RNVectorIcons-tvOS";
|
||||
};
|
||||
BE5EAC36221B835A00E92E5B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 1908F5E093844AC5A143E888 /* BVLinearGradient.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
||||
remoteInfo = BVLinearGradient;
|
||||
};
|
||||
BE5EAC38221B835A00E92E5B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 1908F5E093844AC5A143E888 /* BVLinearGradient.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 64AA15081EF7F30100718508;
|
||||
remoteInfo = "BVLinearGradient-tvOS";
|
||||
};
|
||||
BE5EAC3F221B888C00E92E5B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = BE5EAC3B221B888C00E92E5B /* ReactNativePermissions.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 9D23B34F1C767B80008B4819;
|
||||
remoteInfo = ReactNativePermissions;
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
|
@ -377,12 +393,12 @@
|
|||
00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "../node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = "<group>"; };
|
||||
00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "../node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = "<group>"; };
|
||||
00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "../node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = "<group>"; };
|
||||
00E356EE1AD99517003FC87E /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
00E356EE1AD99517003FC87E /* appTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = appTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
00E356F21AD99517003FC87E /* appTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = appTests.m; sourceTree = "<group>"; };
|
||||
139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = "<group>"; };
|
||||
139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = "<group>"; };
|
||||
13B07F961A680F5B00A75B9A /* enei2019.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = enei2019.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
13B07F961A680F5B00A75B9A /* app.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = app.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = app/AppDelegate.h; sourceTree = "<group>"; };
|
||||
13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = app/AppDelegate.m; sourceTree = "<group>"; };
|
||||
13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = "<group>"; };
|
||||
|
@ -390,35 +406,36 @@
|
|||
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = app/Info.plist; sourceTree = "<group>"; };
|
||||
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = app/main.m; sourceTree = "<group>"; };
|
||||
146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = "<group>"; };
|
||||
2D02E47B1E0B4A5D006451C7 /* enei2019-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "enei2019-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2D02E4901E0B4A5D006451C7 /* enei2019-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "enei2019-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
1908F5E093844AC5A143E888 /* BVLinearGradient.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = BVLinearGradient.xcodeproj; path = "../node_modules/react-native-linear-gradient/BVLinearGradient.xcodeproj"; sourceTree = "<group>"; };
|
||||
2D02E47B1E0B4A5D006451C7 /* app-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "app-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2D02E4901E0B4A5D006451C7 /* app-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "app-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = "<group>"; };
|
||||
664970B9D10A41A18B44727F /* RNVectorIcons.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNVectorIcons.xcodeproj; path = "../node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj"; sourceTree = "<group>"; };
|
||||
78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = "<group>"; };
|
||||
832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = "<group>"; };
|
||||
A55A26724384416FAF74A98D /* Ionicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Ionicons.ttf; path = "../node_modules/react-native-ionicons/fonts/Ionicons.ttf"; sourceTree = "<group>"; };
|
||||
95B0A42B6CD8441E904E6EB9 /* libRNVectorIcons-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNVectorIcons-tvOS.a"; sourceTree = "<group>"; };
|
||||
ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBlob.xcodeproj; path = "../node_modules/react-native/Libraries/Blob/RCTBlob.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE2BDF682200F93B0001B8A8 /* RNGestureHandler.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGestureHandler.xcodeproj; path = "../node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE2BDF932200F9490001B8A8 /* RNCamera.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RNCamera.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE2BDF9B2200F9830001B8A8 /* ReactNativePermissions.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativePermissions.xcodeproj; path = "../node_modules/react-native-permissions/ios/ReactNativePermissions.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE2BDFD92201012E0001B8A8 /* RNVectorIcons.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNVectorIcons.xcodeproj; path = "../node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj"; sourceTree = "<group>"; };
|
||||
BEA7C1B122034BC800B47CD7 /* MaterialIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B222034BC800B47CD7 /* FontAwesome.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B322034BC800B47CD7 /* Ionicons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Ionicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B422034BC800B47CD7 /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Brands.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B522034BC800B47CD7 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B622034BC800B47CD7 /* Entypo.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Entypo.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B722034BC800B47CD7 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B822034BC800B47CD7 /* Zocial.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1B922034BC800B47CD7 /* Feather.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Feather.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BA22034BC800B47CD7 /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Regular.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BB22034BC800B47CD7 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Solid.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BC22034BC800B47CD7 /* AntDesign.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = AntDesign.ttf; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BD22034BC800B47CD7 /* Foundation.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Foundation.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BE22034BC800B47CD7 /* EvilIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = EvilIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = "<group>"; };
|
||||
BEA7C1BF22034BC800B47CD7 /* Octicons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; };
|
||||
B5DCFEB358F745A89DBBDC7B /* BVLinearGradient.xcodeproj */ = {isa = PBXFileReference; name = "BVLinearGradient.xcodeproj"; path = "../node_modules/react-native-linear-gradient/BVLinearGradient.xcodeproj"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; };
|
||||
A757D24430CF4419B7ABDE21 /* libBVLinearGradient.a */ = {isa = PBXFileReference; name = "libBVLinearGradient.a"; path = "libBVLinearGradient.a"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; };
|
||||
BE302B67221B7860005626CF /* RNCamera.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RNCamera.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE302B6E221B7AC7005626CF /* RNGestureHandler.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGestureHandler.xcodeproj; path = "../node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj"; sourceTree = "<group>"; };
|
||||
BE302B75221B7C3B005626CF /* Ionicons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Ionicons.ttf; path = "../node_modules/react-native-ionicons/fonts/Ionicons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB69221B7D5300E92E5B /* MaterialIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6A221B7D5300E92E5B /* Entypo.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Entypo.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6B221B7D5300E92E5B /* FontAwesome.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6C221B7D5300E92E5B /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6D221B7D5300E92E5B /* EvilIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = EvilIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6E221B7D5300E92E5B /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Regular.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB6F221B7D5300E92E5B /* Foundation.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Foundation.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB70221B7D5300E92E5B /* Feather.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Feather.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB71221B7D5400E92E5B /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Solid.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB72221B7D5400E92E5B /* AntDesign.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = AntDesign.ttf; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB73221B7D5400E92E5B /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB75221B7D5400E92E5B /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = FontAwesome5_Brands.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB76221B7D5400E92E5B /* Octicons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAB77221B7D5400E92E5B /* Zocial.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = "<group>"; };
|
||||
BE5EAC3B221B888C00E92E5B /* ReactNativePermissions.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativePermissions.xcodeproj; path = "../node_modules/react-native-permissions/ios/ReactNativePermissions.xcodeproj"; sourceTree = "<group>"; };
|
||||
C00CE8A4E3B747F9816B91CF /* libBVLinearGradient.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libBVLinearGradient.a; sourceTree = "<group>"; };
|
||||
EB0A5A258CBE4EEFAD3C358E /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVectorIcons.a; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
|
@ -434,10 +451,8 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
BE2BDFE2220101420001B8A8 /* libRNVectorIcons.a in Frameworks */,
|
||||
BE2BDFA12200F9880001B8A8 /* libReactNativePermissions.a in Frameworks */,
|
||||
BE2BDF9A2200F96A0001B8A8 /* libRNGestureHandler.a in Frameworks */,
|
||||
BE2BDF992200F95B0001B8A8 /* libRNCamera.a in Frameworks */,
|
||||
BE302B74221B7ACE005626CF /* libRNGestureHandler.a in Frameworks */,
|
||||
BE302B6D221B7875005626CF /* libRNCamera.a in Frameworks */,
|
||||
ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */,
|
||||
11D1A2F320CAFA9E000508D9 /* libRCTAnimation.a in Frameworks */,
|
||||
146834051AC3E58100842450 /* libReact.a in Frameworks */,
|
||||
|
@ -447,10 +462,12 @@
|
|||
133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */,
|
||||
00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */,
|
||||
139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */,
|
||||
BE5EAC41221B889900E92E5B /* libReactNativePermissions.a in Frameworks */,
|
||||
832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */,
|
||||
00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */,
|
||||
139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */,
|
||||
7BB898A137474B3ABEF9425B /* libBVLinearGradient.a in Frameworks */,
|
||||
BE104176D74E47E9A369B15A /* libRNVectorIcons.a in Frameworks */,
|
||||
69E1B84AE0DF486CB1B1D226 /* libBVLinearGradient.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -466,6 +483,7 @@
|
|||
2D02E4C61E0B4AEC006451C7 /* libRCTSettings-tvOS.a in Frameworks */,
|
||||
2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */,
|
||||
2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */,
|
||||
514DB1DF2E3B452F9EF272E3 /* libRNVectorIcons-tvOS.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -613,29 +631,6 @@
|
|||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
624432DF59944E72B6023C91 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
BEA7C1BC22034BC800B47CD7 /* AntDesign.ttf */,
|
||||
BEA7C1B622034BC800B47CD7 /* Entypo.ttf */,
|
||||
BEA7C1BE22034BC800B47CD7 /* EvilIcons.ttf */,
|
||||
BEA7C1B922034BC800B47CD7 /* Feather.ttf */,
|
||||
BEA7C1B222034BC800B47CD7 /* FontAwesome.ttf */,
|
||||
BEA7C1B422034BC800B47CD7 /* FontAwesome5_Brands.ttf */,
|
||||