Auto stash before merge of "master" and "origin/master"

This commit is contained in:
Guilherme Gazzo 2017-08-10 13:25:50 -03:00
parent a154656fa4
commit 8213fec76a
23 changed files with 814 additions and 2924 deletions

View File

@ -133,6 +133,7 @@ android {
} }
dependencies { dependencies {
compile project(':react-native-vector-icons')
compile project(':react-native-fetch-blob') compile project(':react-native-fetch-blob')
compile project(':react-native-zeroconf') compile project(':react-native-zeroconf')
compile project(':realm') compile project(':realm')
@ -147,3 +148,4 @@ task copyDownloadableDepsToLibs(type: Copy) {
from configurations.compile from configurations.compile
into 'libs' into 'libs'
} }
apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -3,6 +3,7 @@ package com.rocketchatrn;
import android.app.Application; import android.app.Application;
import com.facebook.react.ReactApplication; import com.facebook.react.ReactApplication;
import com.oblador.vectoricons.VectorIconsPackage;
import com.RNFetchBlob.RNFetchBlobPackage; import com.RNFetchBlob.RNFetchBlobPackage;
import com.balthazargronon.RCTZeroconf.ZeroconfReactPackage; import com.balthazargronon.RCTZeroconf.ZeroconfReactPackage;
import io.realm.react.RealmReactPackage; import io.realm.react.RealmReactPackage;
@ -26,6 +27,7 @@ public class MainApplication extends Application implements ReactApplication {
protected List<ReactPackage> getPackages() { protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList( return Arrays.<ReactPackage>asList(
new MainReactPackage(), new MainReactPackage(),
new VectorIconsPackage(),
new RNFetchBlobPackage(), new RNFetchBlobPackage(),
new ZeroconfReactPackage(), new ZeroconfReactPackage(),
new RealmReactPackage() new RealmReactPackage()

View File

@ -1,4 +1,6 @@
rootProject.name = 'RocketChatRN' rootProject.name = 'RocketChatRN'
include ':react-native-vector-icons'
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')
include ':react-native-fetch-blob' include ':react-native-fetch-blob'
project(':react-native-fetch-blob').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fetch-blob/android') project(':react-native-fetch-blob').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fetch-blob/android')
include ':react-native-zeroconf' include ':react-native-zeroconf'

View File

@ -2,8 +2,8 @@ import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { View, Text, StyleSheet } from 'react-native'; import { View, Text, StyleSheet } from 'react-native';
import { CachedImage } from 'react-native-img-cache'; import { CachedImage } from 'react-native-img-cache';
import Markdown from 'react-native-easy-markdown';
import { emojify } from 'react-emojione'; import { emojify } from 'react-emojione';
import Markdown from 'react-native-easy-markdown';
const styles = StyleSheet.create({ const styles = StyleSheet.create({
message: { message: {

View File

@ -1,4 +1,7 @@
import React from 'react'; import React from 'react';
import Ionicons from 'react-native-vector-icons/Ionicons';
import FontAwesome from 'react-native-vector-icons/FontAwesome';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { View, Text, StyleSheet } from 'react-native'; import { View, Text, StyleSheet } from 'react-native';
@ -6,37 +9,46 @@ const styles = StyleSheet.create({
container: { container: {
flex: 1, flex: 1,
flexDirection: 'row', flexDirection: 'row',
padding: 24,
alignItems: 'center' alignItems: 'center'
}, },
number: { number: {
minWidth: 20, minWidth: 20,
fontSize: 14,
padding: 2, padding: 2,
borderRadius: 5, borderRadius: 5,
backgroundColor: '#aaa', backgroundColor: '#aaa',
color: '#fff', color: '#fff',
textAlign: 'center', textAlign: 'center',
overflow: 'hidden', overflow: 'hidden',
marginRight: 15 marginRight: 15,
fontSize: 14
}, },
roomItem: { roomItem: {
lineHeight: 18, flexGrow: 1,
padding: 14, fontSize: 20
flexGrow: 1 },
icon: {
fontSize: 20,
height: 22,
width: 22
} }
}); });
export default class RoomItem extends React.PureComponent { export default class RoomItem extends React.PureComponent {
static propTypes = { static propTypes = {
onPressItem: PropTypes.func.isRequired, item: PropTypes.object.isRequired
item: PropTypes.object.isRequired, }
id: PropTypes.string.isRequired get icon() {
const icon = {
d: 'at',
c: 'hashtag',
p: 'md-lock'
}[this.props.item.t];
if (!icon) {
return null;
}
return ['p'].includes(this.props.item.t) ? <Ionicons name={icon} style={styles.icon} /> : <FontAwesome name={icon} style={styles.icon} />;
} }
_onPress = () => {
this.props.onPressItem(this.props.id);
};
renderNumber = (item) => { renderNumber = (item) => {
if (item.unread) { if (item.unread) {
return ( return (
@ -48,15 +60,11 @@ export default class RoomItem extends React.PureComponent {
} }
render() { render() {
let name = this.props.item.name; const name = this.props.item.name;
if (this.props.item.t === 'd') {
name = `@ ${ name }`;
} else {
name = `# ${ name }`;
}
return ( return (
<View style={styles.container}> <View style={styles.container}>
<Text onPress={this._onPress} style={styles.roomItem}>{ name }</Text> {this.icon}
<Text style={styles.roomItem}>{ name }</Text>
{this.renderNumber(this.props.item)} {this.renderNumber(this.props.item)}
</View> </View>
); );

View File

@ -5,6 +5,12 @@ import realm from './realm';
export { Accounts } from 'react-native-meteor'; export { Accounts } from 'react-native-meteor';
const RocketChat = { const RocketChat = {
createChannel({ name, users, type }) {
return new Promise((resolve, reject) => {
Meteor.call(type ? 'createChannel' : 'createPrivateGroup', name, users, type, (err, res) => (err ? reject(err) : resolve(res)));
});
},
get currentServer() { get currentServer() {
const current = realm.objects('servers').filtered('current = true')[0]; const current = realm.objects('servers').filtered('current = true')[0];
return current && current.id; return current && current.id;
@ -60,6 +66,7 @@ const RocketChat = {
} }
if (ddbMessage.collection === 'stream-notify-user') { if (ddbMessage.collection === 'stream-notify-user') {
console.log(ddbMessage);
realm.write(() => { realm.write(() => {
const data = ddbMessage.fields.args[1]; const data = ddbMessage.fields.args[1];
data._server = { id: RocketChat.currentServer }; data._server = { id: RocketChat.currentServer };

View File

@ -6,7 +6,7 @@ import NewServerView from './views/serverNew';
import ListServerView from './views/serverList'; import ListServerView from './views/serverList';
import RoomsListView from './views/roomsList'; import RoomsListView from './views/roomsList';
import RoomView from './views/room'; import RoomView from './views/room';
import CreateChannel from './views/CreateChannel';
const position = Platform.OS === 'ios' ? 'headerLeft' : 'headerRight'; const position = Platform.OS === 'ios' ? 'headerLeft' : 'headerRight';
@ -54,6 +54,12 @@ export default new StackNavigator({
navigationOptions: ({ navigation }) => ({ navigationOptions: ({ navigation }) => ({
headerLeft: Platform.OS === 'ios' && (<Button title='Close' onPress={() => navigation.dispatch({ type: 'Navigation/BACK' })} />) headerLeft: Platform.OS === 'ios' && (<Button title='Close' onPress={() => navigation.dispatch({ type: 'Navigation/BACK' })} />)
}) })
},
CreateChannel: {
screen: CreateChannel,
navigationOptions: ({ navigation }) => ({
headerLeft: Platform.OS === 'ios' && (<Button title='Cancel' onPress={() => navigation.dispatch({ type: 'Navigation/BACK' })} />)
})
} }
}, { }, {
initialRouteName: 'Main', initialRouteName: 'Main',

101
app/views/CreateChannel.js Normal file
View File

@ -0,0 +1,101 @@
import ActionButton from 'react-native-action-button';
import Icon from 'react-native-vector-icons/Ionicons';
import React from 'react';
import PropTypes from 'prop-types';
import { TextInput, StyleSheet, View, Text, Switch } from 'react-native';
import RocketChat from '../lib/rocketchat';
// import KeyboardView from '../components/KeyboardView';
const styles = StyleSheet.create({
view: {
flex: 1,
flexDirection: 'column',
padding: 24
},
input: {
// height: 50,
fontSize: 20,
borderColor: '#ffffff',
padding: 5,
borderWidth: 0,
backgroundColor: 'white'
},
field: {
flex: 1,
flexDirection: 'row',
alignItems: 'center'
},
field_label: {
flexGrow: 1
},
field_input: {
flexGrow: 1,
fontSize: 20,
borderColor: '#ffffff',
padding: 5,
borderWidth: 0,
backgroundColor: 'white'
},
actionButtonIcon: {
fontSize: 20,
height: 22,
color: 'white'
}
});
const mainIcon = <Icon name='md-checkmark' style={styles.actionButtonIcon} />;
export default class CreateChannelView extends React.Component {
static propTypes = {
navigation: PropTypes.object.isRequired
}
static navigationOptions = () => ({
title: 'Create Channel'
});
constructor(props) {
super(props);
this.state = {
channelName: '',
type: true
};
}
submit() {
const { channelName, users = [], type = true } = this.state;
RocketChat.createChannel({ name: channelName, users, type }).then(res => Promise.reject(res));
// { username: this.state.username }, this.state.password, () => {
// this.props.navigation.dispatch({ type: 'Navigation/BACK' });
// });
}
render() {
return (
<View style={styles.view}>
<View style={styles.field}>
<TextInput
style={styles.field_input}
onChangeText={channelName => this.setState({ channelName })}
autoCorrect={false}
returnKeyType='done'
autoCapitalize='none'
autoFocus
// onSubmitEditing={() => this.textInput.focus()}
placeholder='Type the channel name here'
/>
</View>
<View style={styles.field}>
<Text style={styles.field_label}>{this.state.type ? 'Public' : 'Private'}</Text>
<Switch
style={styles.field_input}
value={this.state.type}
onValueChange={type => this.setState({ type })}
/>
</View>
{this.state.channelName.length > 0 ?
<ActionButton buttonColor='green' icon={mainIcon} onPress={() => this.submit()} /> : null }
</View>
);
}
}

View File

@ -1,10 +1,11 @@
import ActionButton from 'react-native-action-button';
import Icon from 'react-native-vector-icons/Ionicons';
import React from 'react'; import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { Text, View, FlatList, StyleSheet, Platform } from 'react-native'; import { Text, View, FlatList, StyleSheet, TouchableOpacity } from 'react-native';
import Meteor from 'react-native-meteor'; import Meteor from 'react-native-meteor';
import realm from '../lib/realm'; import realm from '../lib/realm';
import RocketChat from '../lib/rocketchat'; import RocketChat from '../lib/rocketchat';
import RoomItem from '../components/RoomItem'; import RoomItem from '../components/RoomItem';
const styles = StyleSheet.create({ const styles = StyleSheet.create({
@ -15,7 +16,7 @@ const styles = StyleSheet.create({
}, },
separator: { separator: {
height: 1, height: 1,
backgroundColor: '#CED0CE' backgroundColor: '#E7E7E7'
}, },
list: { list: {
width: '100%' width: '100%'
@ -36,6 +37,11 @@ const styles = StyleSheet.create({
bannerText: { bannerText: {
textAlign: 'center', textAlign: 'center',
margin: 5 margin: 5
},
actionButtonIcon: {
fontSize: 20,
height: 22,
color: 'white'
} }
}); });
@ -74,7 +80,7 @@ export default class RoomsListView extends React.Component {
constructor(props) { constructor(props) {
super(props); super(props);
this._listViewOffset = 0;
this.state = this.getState(); this.state = this.getState();
} }
@ -117,7 +123,10 @@ export default class RoomsListView extends React.Component {
const { navigate } = this.props.navigation; const { navigate } = this.props.navigation;
navigate('Room', { sid: id }); navigate('Room', { sid: id });
} }
_createChannel = () => {
const { navigate } = this.props.navigation;
navigate('CreateChannel');
}
renderBanner = () => { renderBanner = () => {
const status = Meteor.getData() && Meteor.getData().ddp && Meteor.getData().ddp.status; const status = Meteor.getData() && Meteor.getData().ddp && Meteor.getData().ddp.status;
@ -139,11 +148,12 @@ export default class RoomsListView extends React.Component {
} }
renderItem = ({ item }) => ( renderItem = ({ item }) => (
<TouchableOpacity onPress={() => this._onPressItem(item._id)}>
<RoomItem <RoomItem
id={item._id} id={item._id}
onPressItem={this._onPressItem}
item={item} item={item}
/> />
</TouchableOpacity>
); );
renderSeparator = () => ( renderSeparator = () => (
@ -169,12 +179,20 @@ export default class RoomsListView extends React.Component {
</View> </View>
); );
} }
renderCreateButtons() {
return (
<ActionButton buttonColor='rgba(231,76,60,1)'>
<ActionButton.Item buttonColor='#9b59b6' title='Create Channel' onPress={() => { this._createChannel(); }} >
<Icon name='md-chatbubbles' style={styles.actionButtonIcon} />
</ActionButton.Item>
</ActionButton>);
}
render() { render() {
return ( return (
<View style={styles.container}> <View style={styles.container}>
{this.renderBanner()} {this.renderBanner()}
{this.renderList()} {this.renderList()}
{this.renderCreateButtons()}
</View> </View>
); );
} }

View File

@ -40,6 +40,17 @@
832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; };
EF736EF520A64AE8820E684A /* libRealmReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DF26CC845883492D8AC8869B /* libRealmReact.a */; }; EF736EF520A64AE8820E684A /* libRealmReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DF26CC845883492D8AC8869B /* libRealmReact.a */; };
BED2B77AA660460E8BC9F8E0 /* libRNFetchBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6533FB90166345D29F1B91C0 /* libRNFetchBlob.a */; }; BED2B77AA660460E8BC9F8E0 /* libRNFetchBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6533FB90166345D29F1B91C0 /* libRNFetchBlob.a */; };
77C35F50C01C43668188886C /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A0EEFAF8AB14F5B9E796CDD /* libRNVectorIcons.a */; };
AE5D35882AE04CC29630FB3D /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DC6EE17B5550465E98C70FF0 /* Entypo.ttf */; };
647660C6B6A340C7BD4D1099 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A18EFC3B0CFE40E0918A8F0C /* EvilIcons.ttf */; };
70A8D9B456894EFFAF027CAB /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7A30DA4B2D474348824CD05B /* FontAwesome.ttf */; };
435AB658888F41D69A230652 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9A1E1766CCB84C91A62BD5A6 /* Foundation.ttf */; };
4529B474417149059A180775 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1B0746E708284151B8AD1198 /* Ionicons.ttf */; };
0DC38A29B0E54AF4AF96CB95 /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2EADB1731B5E47D093292B59 /* MaterialCommunityIcons.ttf */; };
334A709FA3B448BC9A8563F6 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2F5CA2CDA66D46E99B8C184A /* MaterialIcons.ttf */; };
2684481F67844BE398381564 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F88C6541BD764BEEABB87272 /* Octicons.ttf */; };
D6408D9E4A864FF6BA986857 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8A2DD67ADD954AD9873F45FC /* SimpleLineIcons.ttf */; };
CBD0E0A35B174C4DBFED3B31 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E528DE3A405E43B4A37ABA68 /* Zocial.ttf */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */ /* Begin PBXContainerItemProxy section */
@ -309,6 +320,18 @@
DF26CC845883492D8AC8869B /* libRealmReact.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRealmReact.a; sourceTree = "<group>"; }; DF26CC845883492D8AC8869B /* libRealmReact.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRealmReact.a; sourceTree = "<group>"; };
4CD38E4891ED4601B7481448 /* RNFetchBlob.xcodeproj */ = {isa = PBXFileReference; name = "RNFetchBlob.xcodeproj"; path = "../node_modules/react-native-fetch-blob/ios/RNFetchBlob.xcodeproj"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; 4CD38E4891ED4601B7481448 /* RNFetchBlob.xcodeproj */ = {isa = PBXFileReference; name = "RNFetchBlob.xcodeproj"; path = "../node_modules/react-native-fetch-blob/ios/RNFetchBlob.xcodeproj"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; };
6533FB90166345D29F1B91C0 /* libRNFetchBlob.a */ = {isa = PBXFileReference; name = "libRNFetchBlob.a"; path = "libRNFetchBlob.a"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; 6533FB90166345D29F1B91C0 /* libRNFetchBlob.a */ = {isa = PBXFileReference; name = "libRNFetchBlob.a"; path = "libRNFetchBlob.a"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; };
22A8B76C8EBA443BB97CE82D /* RNVectorIcons.xcodeproj */ = {isa = PBXFileReference; name = "RNVectorIcons.xcodeproj"; path = "../node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; };
5A0EEFAF8AB14F5B9E796CDD /* libRNVectorIcons.a */ = {isa = PBXFileReference; name = "libRNVectorIcons.a"; path = "libRNVectorIcons.a"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; };
DC6EE17B5550465E98C70FF0 /* Entypo.ttf */ = {isa = PBXFileReference; name = "Entypo.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
A18EFC3B0CFE40E0918A8F0C /* EvilIcons.ttf */ = {isa = PBXFileReference; name = "EvilIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
7A30DA4B2D474348824CD05B /* FontAwesome.ttf */ = {isa = PBXFileReference; name = "FontAwesome.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
9A1E1766CCB84C91A62BD5A6 /* Foundation.ttf */ = {isa = PBXFileReference; name = "Foundation.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
1B0746E708284151B8AD1198 /* Ionicons.ttf */ = {isa = PBXFileReference; name = "Ionicons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
2EADB1731B5E47D093292B59 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; name = "MaterialCommunityIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
2F5CA2CDA66D46E99B8C184A /* MaterialIcons.ttf */ = {isa = PBXFileReference; name = "MaterialIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
F88C6541BD764BEEABB87272 /* Octicons.ttf */ = {isa = PBXFileReference; name = "Octicons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
8A2DD67ADD954AD9873F45FC /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; name = "SimpleLineIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
E528DE3A405E43B4A37ABA68 /* Zocial.ttf */ = {isa = PBXFileReference; name = "Zocial.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
/* End PBXFileReference section */ /* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */ /* Begin PBXFrameworksBuildPhase section */
@ -340,6 +363,7 @@
24A2AEF2383D44B586D31C01 /* libz.tbd in Frameworks */, 24A2AEF2383D44B586D31C01 /* libz.tbd in Frameworks */,
33647F7997A2493E9E1343B3 /* libRNZeroconf.a in Frameworks */, 33647F7997A2493E9E1343B3 /* libRNZeroconf.a in Frameworks */,
BED2B77AA660460E8BC9F8E0 /* libRNFetchBlob.a in Frameworks */, BED2B77AA660460E8BC9F8E0 /* libRNFetchBlob.a in Frameworks */,
77C35F50C01C43668188886C /* libRNVectorIcons.a in Frameworks */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -529,6 +553,7 @@
5A8684E7C27E426C9206E980 /* RealmReact.xcodeproj */, 5A8684E7C27E426C9206E980 /* RealmReact.xcodeproj */,
41FE03CD3B554249859F01BA /* RNZeroconf.xcodeproj */, 41FE03CD3B554249859F01BA /* RNZeroconf.xcodeproj */,
4CD38E4891ED4601B7481448 /* RNFetchBlob.xcodeproj */, 4CD38E4891ED4601B7481448 /* RNFetchBlob.xcodeproj */,
22A8B76C8EBA443BB97CE82D /* RNVectorIcons.xcodeproj */,
); );
name = Libraries; name = Libraries;
sourceTree = "<group>"; sourceTree = "<group>";
@ -550,6 +575,7 @@
00E356EF1AD99517003FC87E /* RocketChatRNTests */, 00E356EF1AD99517003FC87E /* RocketChatRNTests */,
83CBBA001A601CBA00E9B192 /* Products */, 83CBBA001A601CBA00E9B192 /* Products */,
BB4B591B5FC44CD9986DB2A6 /* Frameworks */, BB4B591B5FC44CD9986DB2A6 /* Frameworks */,
AF5E16F0398347E6A80C8CBE /* Resources */,
); );
indentWidth = 2; indentWidth = 2;
sourceTree = "<group>"; sourceTree = "<group>";
@ -575,6 +601,24 @@
name = Frameworks; name = Frameworks;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
AF5E16F0398347E6A80C8CBE /* Resources */ = {
isa = "PBXGroup";
children = (
DC6EE17B5550465E98C70FF0 /* Entypo.ttf */,
A18EFC3B0CFE40E0918A8F0C /* EvilIcons.ttf */,
7A30DA4B2D474348824CD05B /* FontAwesome.ttf */,
9A1E1766CCB84C91A62BD5A6 /* Foundation.ttf */,
1B0746E708284151B8AD1198 /* Ionicons.ttf */,
2EADB1731B5E47D093292B59 /* MaterialCommunityIcons.ttf */,
2F5CA2CDA66D46E99B8C184A /* MaterialIcons.ttf */,
F88C6541BD764BEEABB87272 /* Octicons.ttf */,
8A2DD67ADD954AD9873F45FC /* SimpleLineIcons.ttf */,
E528DE3A405E43B4A37ABA68 /* Zocial.ttf */,
);
name = Resources;
sourceTree = "<group>";
path = "";
};
/* End PBXGroup section */ /* End PBXGroup section */
/* Begin PBXNativeTarget section */ /* Begin PBXNativeTarget section */
@ -990,6 +1034,16 @@
files = ( files = (
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */,
AE5D35882AE04CC29630FB3D /* Entypo.ttf in Resources */,
647660C6B6A340C7BD4D1099 /* EvilIcons.ttf in Resources */,
70A8D9B456894EFFAF027CAB /* FontAwesome.ttf in Resources */,
435AB658888F41D69A230652 /* Foundation.ttf in Resources */,
4529B474417149059A180775 /* Ionicons.ttf in Resources */,
0DC38A29B0E54AF4AF96CB95 /* MaterialCommunityIcons.ttf in Resources */,
334A709FA3B448BC9A8563F6 /* MaterialIcons.ttf in Resources */,
2684481F67844BE398381564 /* Octicons.ttf in Resources */,
D6408D9E4A864FF6BA986857 /* SimpleLineIcons.ttf in Resources */,
CBD0E0A35B174C4DBFED3B31 /* Zocial.ttf in Resources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -1118,6 +1172,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = RocketChatRNTests/Info.plist; INFOPLIST_FILE = RocketChatRNTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 8.0; IPHONEOS_DEPLOYMENT_TARGET = 8.0;
@ -1127,6 +1182,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-ObjC", "-ObjC",
@ -1148,6 +1204,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = RocketChatRNTests/Info.plist; INFOPLIST_FILE = RocketChatRNTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 8.0; IPHONEOS_DEPLOYMENT_TARGET = 8.0;
@ -1157,6 +1214,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-ObjC", "-ObjC",
@ -1180,6 +1238,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = RocketChatRN/Info.plist; INFOPLIST_FILE = RocketChatRN/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@ -1208,6 +1267,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = RocketChatRN/Info.plist; INFOPLIST_FILE = RocketChatRN/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@ -1241,6 +1301,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = "RocketChatRN-tvOS/Info.plist"; INFOPLIST_FILE = "RocketChatRN-tvOS/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@ -1249,6 +1310,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-ObjC", "-ObjC",
@ -1280,6 +1342,7 @@
"$(SRCROOT)/../node_modules/realm/src/**", "$(SRCROOT)/../node_modules/realm/src/**",
"$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf", "$(SRCROOT)/../node_modules/react-native-zeroconf/ios/RNZeroconf",
"$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**", "$(SRCROOT)/../node_modules/react-native-fetch-blob/ios/**",
"$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager",
); );
INFOPLIST_FILE = "RocketChatRN-tvOS/Info.plist"; INFOPLIST_FILE = "RocketChatRN-tvOS/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@ -1288,6 +1351,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-ObjC", "-ObjC",
@ -1320,6 +1384,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RocketChatRN-tvOSTests"; PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RocketChatRN-tvOSTests";
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
@ -1348,6 +1413,7 @@
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"", "\"$(SRCROOT)/$(TARGET_NAME)\"",
"\"$(SRCROOT)/$(TARGET_NAME)\"",
); );
PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RocketChatRN-tvOSTests"; PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RocketChatRN-tvOSTests";
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";

View File

@ -36,7 +36,7 @@
</dict> </dict>
</dict> </dict>
<key>NSLocationWhenInUseUsageDescription</key> <key>NSLocationWhenInUseUsageDescription</key>
<string></string> <string/>
<key>UILaunchStoryboardName</key> <key>UILaunchStoryboardName</key>
<string>LaunchScreen</string> <string>LaunchScreen</string>
<key>UIRequiredDeviceCapabilities</key> <key>UIRequiredDeviceCapabilities</key>
@ -51,5 +51,18 @@
</array> </array>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>
<key>UIAppFonts</key>
<array>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>FontAwesome.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>Octicons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Zocial.ttf</string>
</array>
</dict> </dict>
</plist> </plist>

3441
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -17,8 +17,12 @@
"react-native": "0.46.1", "react-native": "0.46.1",
"react-native-easy-markdown": "git+https://github.com/lappalj4/react-native-easy-markdown.git", "react-native-easy-markdown": "git+https://github.com/lappalj4/react-native-easy-markdown.git",
"react-native-fetch-blob": "^0.10.8", "react-native-fetch-blob": "^0.10.8",
"react-native-form-generator": "^0.9.9",
"react-native-img-cache": "^1.4.0", "react-native-img-cache": "^1.4.0",
"react-native-meteor": "^1.1.0", "react-native-meteor": "^1.1.0",
"react-native-svg": "^5.4.1",
"react-native-svg-image": "^1.1.4",
"react-native-vector-icons": "^4.3.0",
"react-native-zeroconf": "^0.8.1", "react-native-zeroconf": "^0.8.1",
"react-navigation": "^1.0.0-beta.11", "react-navigation": "^1.0.0-beta.11",
"realm": "^1.10.1", "realm": "^1.10.1",