[FIX] Share Extension issues (#1064)
This commit is contained in:
parent
805be06c4a
commit
d80dd0e2ce
|
@ -14,6 +14,11 @@ export const LOGIN = createRequestTypes('LOGIN', [
|
|||
'SET_SERVICES',
|
||||
'SET_PREFERENCE'
|
||||
]);
|
||||
export const SHARE = createRequestTypes('SHARE', [
|
||||
'SELECT_SERVER',
|
||||
'SET_USER',
|
||||
'SET_SERVER_INFO'
|
||||
]);
|
||||
export const USER = createRequestTypes('USER', ['SET']);
|
||||
export const ROOMS = createRequestTypes('ROOMS', [
|
||||
...defaultTypes,
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
import { SHARE } from './actionsTypes';
|
||||
|
||||
export function shareSelectServer(server) {
|
||||
return {
|
||||
type: SHARE.SELECT_SERVER,
|
||||
server
|
||||
};
|
||||
}
|
||||
|
||||
export function shareSetUser(user) {
|
||||
return {
|
||||
type: SHARE.SET_USER,
|
||||
user
|
||||
};
|
||||
}
|
|
@ -5,6 +5,7 @@ import HeaderButtons, { HeaderButton, Item } from 'react-navigation-header-butto
|
|||
import { CustomIcon } from '../lib/Icons';
|
||||
import { isIOS } from '../utils/deviceInfo';
|
||||
import { COLOR_PRIMARY, COLOR_WHITE } from '../constants/colors';
|
||||
import I18n from '../i18n';
|
||||
|
||||
const color = isIOS ? COLOR_PRIMARY : COLOR_WHITE;
|
||||
export const headerIconSize = 23;
|
||||
|
@ -35,7 +36,7 @@ export const CloseModalButton = React.memo(({ navigation, testID }) => (
|
|||
export const CloseShareExtensionButton = React.memo(({ onPress, testID }) => (
|
||||
<CustomHeaderButtons left>
|
||||
{isIOS
|
||||
? <Item title='cancel' onPress={onPress} testID={testID} />
|
||||
? <Item title={I18n.t('Cancel')} onPress={onPress} testID={testID} />
|
||||
: <Item title='close' iconName='cross' onPress={onPress} testID={testID} />
|
||||
}
|
||||
</CustomHeaderButtons>
|
||||
|
|
|
@ -489,7 +489,9 @@ class MessageBox extends Component {
|
|||
}
|
||||
|
||||
sendMediaMessage = async(file) => {
|
||||
const { rid, tmid } = this.props;
|
||||
const {
|
||||
rid, tmid, baseUrl: server, user
|
||||
} = this.props;
|
||||
this.setState({ file: { isVisible: false } });
|
||||
const fileInfo = {
|
||||
name: file.name,
|
||||
|
@ -500,7 +502,7 @@ class MessageBox extends Component {
|
|||
path: file.path
|
||||
};
|
||||
try {
|
||||
await RocketChat.sendFileMessage(rid, fileInfo, tmid);
|
||||
await RocketChat.sendFileMessage(rid, fileInfo, tmid, server, user);
|
||||
} catch (e) {
|
||||
log('err_send_media_message', e);
|
||||
}
|
||||
|
@ -602,14 +604,16 @@ class MessageBox extends Component {
|
|||
}
|
||||
|
||||
finishAudioMessage = async(fileInfo) => {
|
||||
const { rid, tmid } = this.props;
|
||||
const {
|
||||
rid, tmid, baseUrl: server, user
|
||||
} = this.props;
|
||||
|
||||
this.setState({
|
||||
recording: false
|
||||
});
|
||||
if (fileInfo) {
|
||||
try {
|
||||
await RocketChat.sendFileMessage(rid, fileInfo, tmid);
|
||||
await RocketChat.sendFileMessage(rid, fileInfo, tmid, server, user);
|
||||
} catch (e) {
|
||||
if (e && e.error === 'error-file-too-large') {
|
||||
return Alert.alert(I18n.t(e.error));
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
import React from 'react';
|
||||
import { View, StyleSheet, TextInput } from 'react-native';
|
||||
import {
|
||||
View, StyleSheet, TextInput, Text
|
||||
} from 'react-native';
|
||||
import PropTypes from 'prop-types';
|
||||
import Touchable from 'react-native-platform-touchable';
|
||||
|
||||
import I18n from '../i18n';
|
||||
import { isIOS } from '../utils/deviceInfo';
|
||||
|
@ -9,7 +12,10 @@ import sharedStyles from '../views/Styles';
|
|||
|
||||
const styles = StyleSheet.create({
|
||||
container: {
|
||||
backgroundColor: isIOS ? '#F7F8FA' : '#54585E'
|
||||
backgroundColor: isIOS ? '#F7F8FA' : '#54585E',
|
||||
flexDirection: 'row',
|
||||
alignItems: 'center',
|
||||
flex: 1
|
||||
},
|
||||
searchBox: {
|
||||
alignItems: 'center',
|
||||
|
@ -21,7 +27,8 @@ const styles = StyleSheet.create({
|
|||
height: 36,
|
||||
margin: 16,
|
||||
marginVertical: 10,
|
||||
paddingHorizontal: 10
|
||||
paddingHorizontal: 10,
|
||||
flex: 1
|
||||
},
|
||||
input: {
|
||||
color: '#8E8E93',
|
||||
|
@ -31,10 +38,26 @@ const styles = StyleSheet.create({
|
|||
paddingTop: 0,
|
||||
paddingBottom: 0,
|
||||
...sharedStyles.textRegular
|
||||
},
|
||||
cancel: {
|
||||
marginRight: 10
|
||||
},
|
||||
cancelText: {
|
||||
...sharedStyles.textRegular,
|
||||
...sharedStyles.textColorHeaderBack,
|
||||
fontSize: 17
|
||||
}
|
||||
});
|
||||
|
||||
const SearchBox = ({ onChangeText, onSubmitEditing, testID }) => (
|
||||
const CancelButton = onCancelPress => (
|
||||
<Touchable onPress={onCancelPress} style={styles.cancel}>
|
||||
<Text style={styles.cancelText}>{I18n.t('Cancel')}</Text>
|
||||
</Touchable>
|
||||
);
|
||||
|
||||
const SearchBox = ({
|
||||
onChangeText, onSubmitEditing, testID, hasCancel, onCancelPress, ...props
|
||||
}) => (
|
||||
<View style={styles.container}>
|
||||
<View style={styles.searchBox}>
|
||||
<CustomIcon name='magnifier' size={14} color='#8E8E93' />
|
||||
|
@ -50,14 +73,18 @@ const SearchBox = ({ onChangeText, onSubmitEditing, testID }) => (
|
|||
underlineColorAndroid='transparent'
|
||||
onChangeText={onChangeText}
|
||||
onSubmitEditing={onSubmitEditing}
|
||||
{...props}
|
||||
/>
|
||||
</View>
|
||||
{ hasCancel ? CancelButton(onCancelPress) : null }
|
||||
</View>
|
||||
);
|
||||
|
||||
SearchBox.propTypes = {
|
||||
onChangeText: PropTypes.func.isRequired,
|
||||
onSubmitEditing: PropTypes.func,
|
||||
hasCancel: PropTypes.bool,
|
||||
onCancelPress: PropTypes.func,
|
||||
testID: PropTypes.string
|
||||
};
|
||||
|
||||
|
|
|
@ -311,13 +311,13 @@ export default {
|
|||
Search_global_users: 'Search for global users',
|
||||
Search_global_users_description: 'If you turn-on, you can search for any user from others companies or servers.',
|
||||
Select_Avatar: 'Select Avatar',
|
||||
Select_Channels: 'Select Channels',
|
||||
Select_Server: 'Select Server',
|
||||
Select_Users: 'Select Users',
|
||||
Send: 'Send',
|
||||
Send_audio_message: 'Send audio message',
|
||||
Send_crash_report: 'Send crash report',
|
||||
Send_message: 'Send message',
|
||||
Send_to: 'Send to...',
|
||||
Sent_an_attachment: 'Sent an attachment',
|
||||
Server: 'Server',
|
||||
Servers: 'Servers',
|
||||
|
|
|
@ -302,12 +302,12 @@ export default {
|
|||
Search_global_users: 'Busca por usuários globais',
|
||||
Search_global_users_description: 'Caso ativado, busca por usuários de outras empresas ou servidores.',
|
||||
Select_Avatar: 'Selecionar Avatar',
|
||||
Select_Channels: 'Selecionar Canais',
|
||||
Select_Server: 'Selecionar Servidor',
|
||||
Select_Users: 'Selecionar Usuários',
|
||||
Send: 'Enviar',
|
||||
Send_audio_message: 'Enviar mensagem de áudio',
|
||||
Send_message: 'Enviar mensagem',
|
||||
Send_to: 'Enviar para...',
|
||||
Sent_an_attachment: 'Enviou um anexo',
|
||||
Server: 'Servidor',
|
||||
Set_username_subtitle: 'O usuário é utilizado para permitir que você seja mencionado em mensagens',
|
||||
|
@ -383,5 +383,6 @@ export default {
|
|||
you_were_mentioned: 'você foi mencionado',
|
||||
you: 'você',
|
||||
You: 'Você',
|
||||
You_need_to_access_at_least_one_RocketChat_server_to_share_something: 'Você precisa acessar ao menos um servidor Rocket.Chat para compartilhar.',
|
||||
You_will_not_be_able_to_recover_this_message: 'Você não será capaz de recuperar essa mensagem!'
|
||||
};
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
import { NavigationActions } from 'react-navigation';
|
||||
|
||||
let _shareNavigator;
|
||||
|
||||
function setTopLevelNavigator(navigatorRef) {
|
||||
_shareNavigator = navigatorRef;
|
||||
}
|
||||
|
||||
function navigate(routeName, params) {
|
||||
_shareNavigator.dispatch(
|
||||
NavigationActions.navigate({
|
||||
routeName,
|
||||
params
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
export default {
|
||||
navigate,
|
||||
setTopLevelNavigator
|
||||
};
|
|
@ -40,6 +40,15 @@ export default async function() {
|
|||
if (setting._id === 'Site_Name') {
|
||||
updateServer.call(this, { name: setting.valueAsString });
|
||||
}
|
||||
if (setting._id === 'UI_Use_Real_Name') {
|
||||
updateServer.call(this, { useRealName: setting.valueAsBoolean });
|
||||
}
|
||||
if (setting._id === 'FileUpload_MediaTypeWhiteList') {
|
||||
updateServer.call(this, { FileUpload_MediaTypeWhiteList: setting.valueAsString });
|
||||
}
|
||||
if (setting._id === 'FileUpload_MaxFileSize') {
|
||||
updateServer.call(this, { FileUpload_MaxFileSize: setting.valueAsNumber });
|
||||
}
|
||||
})
|
||||
)
|
||||
);
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
import reduxStore from '../createStore';
|
||||
import database from '../realm';
|
||||
import log from '../../utils/log';
|
||||
|
||||
|
@ -23,11 +22,12 @@ export function cancelUpload(path) {
|
|||
}
|
||||
}
|
||||
|
||||
export function sendFileMessage(rid, fileInfo, tmid) {
|
||||
export function sendFileMessage(rid, fileInfo, tmid, server, user) {
|
||||
return new Promise((resolve, reject) => {
|
||||
try {
|
||||
const { FileUpload_MaxFileSize, Site_Url } = reduxStore.getState().settings;
|
||||
const { id, token } = reduxStore.getState().login.user;
|
||||
const { serversDB } = database.databases;
|
||||
const { FileUpload_MaxFileSize, id: Site_Url } = serversDB.objectForPrimaryKey('servers', server);
|
||||
const { id, token } = user;
|
||||
|
||||
// -1 maxFileSize means there is no limit
|
||||
if (FileUpload_MaxFileSize > -1 && fileInfo.size > FileUpload_MaxFileSize) {
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
import messagesStatus from '../../constants/messagesStatus';
|
||||
import buildMessage from './helpers/buildMessage';
|
||||
import database from '../realm';
|
||||
import reduxStore from '../createStore';
|
||||
import log from '../../utils/log';
|
||||
import random from '../../utils/random';
|
||||
|
||||
export const getMessage = (rid, msg = '', tmid) => {
|
||||
export const getMessage = (rid, msg = '', tmid, user) => {
|
||||
const _id = random(17);
|
||||
const { id, username } = user;
|
||||
const message = {
|
||||
_id,
|
||||
rid,
|
||||
|
@ -16,8 +16,8 @@ export const getMessage = (rid, msg = '', tmid) => {
|
|||
_updatedAt: new Date(),
|
||||
status: messagesStatus.TEMP,
|
||||
u: {
|
||||
_id: reduxStore.getState().login.user.id || '1',
|
||||
username: reduxStore.getState().login.user.username
|
||||
_id: id || '1',
|
||||
username
|
||||
}
|
||||
};
|
||||
try {
|
||||
|
@ -43,9 +43,9 @@ export async function sendMessageCall(message) {
|
|||
return data;
|
||||
}
|
||||
|
||||
export default async function(rid, msg, tmid) {
|
||||
export default async function(rid, msg, tmid, user) {
|
||||
try {
|
||||
const message = getMessage(rid, msg, tmid);
|
||||
const message = getMessage(rid, msg, tmid, user);
|
||||
const [room] = database.objects('subscriptions').filtered('rid == $0', rid);
|
||||
|
||||
if (room) {
|
||||
|
|
|
@ -26,6 +26,9 @@ const serversSchema = {
|
|||
id: 'string',
|
||||
name: { type: 'string', optional: true },
|
||||
iconURL: { type: 'string', optional: true },
|
||||
useRealName: { type: 'bool', optional: true },
|
||||
FileUpload_MediaTypeWhiteList: { type: 'string', optional: true },
|
||||
FileUpload_MaxFileSize: { type: 'int', optional: true },
|
||||
roomsUpdatedAt: { type: 'date', optional: true },
|
||||
version: 'string?'
|
||||
}
|
||||
|
@ -414,7 +417,7 @@ class DB {
|
|||
userSchema,
|
||||
serversSchema
|
||||
],
|
||||
schemaVersion: 9,
|
||||
schemaVersion: 10,
|
||||
migration: (oldRealm, newRealm) => {
|
||||
if (oldRealm.schemaVersion >= 1 && newRealm.schemaVersion <= 9) {
|
||||
const newServers = newRealm.objects('servers');
|
||||
|
|
|
@ -14,6 +14,9 @@ import {
|
|||
setUser, setLoginServices, loginRequest, loginFailure, logout
|
||||
} from '../actions/login';
|
||||
import { disconnect, connectSuccess, connectRequest } from '../actions/connect';
|
||||
import {
|
||||
shareSelectServer, shareSetUser
|
||||
} from '../actions/share';
|
||||
|
||||
import subscribeRooms from './methods/subscriptions/rooms';
|
||||
import subscribeRoom from './methods/subscriptions/room';
|
||||
|
@ -217,6 +220,35 @@ const RocketChat = {
|
|||
});
|
||||
},
|
||||
|
||||
async shareExtensionInit(server) {
|
||||
database.setActiveDB(server);
|
||||
|
||||
if (this.sdk) {
|
||||
this.sdk.disconnect();
|
||||
this.sdk = null;
|
||||
}
|
||||
|
||||
// Use useSsl: false only if server url starts with http://
|
||||
const useSsl = !/http:\/\//.test(server);
|
||||
|
||||
this.sdk = new RocketchatClient({ host: server, protocol: 'ddp', useSsl });
|
||||
|
||||
// set Server
|
||||
const { serversDB } = database.databases;
|
||||
reduxStore.dispatch(shareSelectServer(server));
|
||||
|
||||
// set User info
|
||||
const userId = await RNUserDefaults.get(`${ RocketChat.TOKEN_KEY }-${ server }`);
|
||||
const user = userId && serversDB.objectForPrimaryKey('user', userId);
|
||||
reduxStore.dispatch(shareSetUser({
|
||||
id: user.id,
|
||||
token: user.token,
|
||||
username: user.username
|
||||
}));
|
||||
|
||||
await RocketChat.login({ resume: user.token });
|
||||
},
|
||||
|
||||
register(credentials) {
|
||||
// RC 0.50.0
|
||||
return this.sdk.post('users.register', credentials, false);
|
||||
|
|
|
@ -35,7 +35,7 @@ const DirectoryItem = ({
|
|||
<RoomTypeIcon type={type} />
|
||||
<Text style={styles.directoryItemName} numberOfLines={1}>{title}</Text>
|
||||
</View>
|
||||
<Text style={styles.directoryItemUsername} numberOfLines={1}>{description}</Text>
|
||||
{ description ? <Text style={styles.directoryItemUsername} numberOfLines={1}>{description}</Text> : null }
|
||||
</View>
|
||||
<DirectoryItemLabel text={rightLabel} />
|
||||
</View>
|
||||
|
|
|
@ -16,8 +16,8 @@ export default StyleSheet.create({
|
|||
alignItems: 'center'
|
||||
},
|
||||
serverIcon: {
|
||||
width: 38,
|
||||
height: 38,
|
||||
width: 44,
|
||||
height: 44,
|
||||
marginHorizontal: 15,
|
||||
borderRadius: 4
|
||||
},
|
||||
|
|
|
@ -11,6 +11,7 @@ import app from './app';
|
|||
import sortPreferences from './sortPreferences';
|
||||
import notification from './notification';
|
||||
import markdown from './markdown';
|
||||
import share from './share';
|
||||
|
||||
export default combineReducers({
|
||||
settings,
|
||||
|
@ -24,5 +25,6 @@ export default combineReducers({
|
|||
rooms,
|
||||
sortPreferences,
|
||||
notification,
|
||||
markdown
|
||||
markdown,
|
||||
share
|
||||
});
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
import { SHARE } from '../actions/actionsTypes';
|
||||
|
||||
const initialState = {
|
||||
user: {},
|
||||
server: ''
|
||||
};
|
||||
|
||||
export default function share(state = initialState, action) {
|
||||
switch (action.type) {
|
||||
case SHARE.SELECT_SERVER:
|
||||
return {
|
||||
...state,
|
||||
server: action.server
|
||||
};
|
||||
case SHARE.SET_USER:
|
||||
return {
|
||||
...state,
|
||||
user: action.user
|
||||
};
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
50
app/share.js
50
app/share.js
|
@ -2,31 +2,34 @@ import React from 'react';
|
|||
import { View } from 'react-native';
|
||||
import { createAppContainer, createStackNavigator, createSwitchNavigator } from 'react-navigation';
|
||||
import { Provider } from 'react-redux';
|
||||
import RNUserDefaults from 'rn-user-defaults';
|
||||
|
||||
import Navigation from './lib/Navigation';
|
||||
import Navigation from './lib/ShareNavigation';
|
||||
import store from './lib/createStore';
|
||||
import { appInit } from './actions';
|
||||
import ShareListView from './views/ShareListView';
|
||||
import ShareView from './views/ShareView';
|
||||
import SelectServerView from './views/SelectServerView';
|
||||
import AuthLoadingView from './views/AuthLoadingView';
|
||||
import WithoutServersView from './views/WithoutServersView';
|
||||
import sharedStyles from './views/Styles';
|
||||
import { isNotch } from './utils/deviceInfo';
|
||||
import { isNotch, isIOS } from './utils/deviceInfo';
|
||||
import { defaultHeader, onNavigationStateChange } from './utils/navigation';
|
||||
|
||||
import RocketChat from './lib/rocketchat';
|
||||
|
||||
const InsideNavigator = createStackNavigator({
|
||||
ShareListView,
|
||||
ShareView,
|
||||
SelectServerView
|
||||
ShareListView: {
|
||||
getScreen: () => require('./views/ShareListView').default
|
||||
},
|
||||
ShareView: {
|
||||
getScreen: () => require('./views/ShareView').default
|
||||
},
|
||||
SelectServerView: {
|
||||
getScreen: () => require('./views/SelectServerView').default
|
||||
}
|
||||
}, {
|
||||
initialRouteName: 'ShareListView',
|
||||
defaultNavigationOptions: defaultHeader
|
||||
});
|
||||
|
||||
const OutsideNavigator = createStackNavigator({
|
||||
WithoutServersView
|
||||
WithoutServersView: {
|
||||
getScreen: () => require('./views/WithoutServersView').default
|
||||
}
|
||||
}, {
|
||||
initialRouteName: 'WithoutServersView',
|
||||
defaultNavigationOptions: defaultHeader
|
||||
|
@ -35,7 +38,9 @@ const OutsideNavigator = createStackNavigator({
|
|||
const AppContainer = createAppContainer(createSwitchNavigator({
|
||||
OutsideStack: OutsideNavigator,
|
||||
InsideStack: InsideNavigator,
|
||||
AuthLoading: AuthLoadingView
|
||||
AuthLoading: {
|
||||
getScreen: () => require('./views/AuthLoadingView').default
|
||||
}
|
||||
},
|
||||
{
|
||||
initialRouteName: 'AuthLoading'
|
||||
|
@ -44,10 +49,25 @@ const AppContainer = createAppContainer(createSwitchNavigator({
|
|||
class Root extends React.Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
store.dispatch(appInit());
|
||||
this.state = {
|
||||
isLandscape: false
|
||||
};
|
||||
this.init();
|
||||
}
|
||||
|
||||
init = async() => {
|
||||
if (isIOS) {
|
||||
await RNUserDefaults.setName('group.ios.chat.rocket');
|
||||
}
|
||||
const currentServer = await RNUserDefaults.get('currentServer');
|
||||
const token = await RNUserDefaults.get(RocketChat.TOKEN_KEY);
|
||||
|
||||
if (currentServer && token) {
|
||||
await Navigation.navigate('InsideStack');
|
||||
await RocketChat.shareExtensionInit(currentServer);
|
||||
} else {
|
||||
await Navigation.navigate('OutsideStack');
|
||||
}
|
||||
}
|
||||
|
||||
handleLayout = (event) => {
|
||||
|
|
|
@ -64,7 +64,13 @@ const styles = StyleSheet.create({
|
|||
export default class UploadProgress extends Component {
|
||||
static propTypes = {
|
||||
window: PropTypes.object,
|
||||
rid: PropTypes.string
|
||||
rid: PropTypes.string,
|
||||
user: PropTypes.shape({
|
||||
id: PropTypes.string.isRequired,
|
||||
username: PropTypes.string.isRequired,
|
||||
token: PropTypes.string.isRequired
|
||||
}),
|
||||
baseUrl: PropTypes.string.isRequired
|
||||
}
|
||||
|
||||
constructor(props) {
|
||||
|
@ -124,13 +130,13 @@ export default class UploadProgress extends Component {
|
|||
}
|
||||
|
||||
tryAgain = async(item) => {
|
||||
const { rid } = this.props;
|
||||
const { rid, baseUrl: server, user } = this.props;
|
||||
|
||||
try {
|
||||
database.write(() => {
|
||||
item.error = false;
|
||||
});
|
||||
await RocketChat.sendFileMessage(rid, item);
|
||||
await RocketChat.sendFileMessage(rid, item, undefined, server, user);
|
||||
} catch (e) {
|
||||
log('err_upload_progress_try_again', e);
|
||||
}
|
||||
|
|
|
@ -410,8 +410,9 @@ export default class RoomView extends React.Component {
|
|||
}
|
||||
|
||||
sendMessage = (message, tmid) => {
|
||||
const { user } = this.props;
|
||||
LayoutAnimation.easeInEaseOut();
|
||||
RocketChat.sendMessage(this.rid, message, this.tmid || tmid).then(() => {
|
||||
RocketChat.sendMessage(this.rid, message, this.tmid || tmid, user).then(() => {
|
||||
this.setLastOpen(null);
|
||||
});
|
||||
};
|
||||
|
@ -623,7 +624,7 @@ export default class RoomView extends React.Component {
|
|||
{this.renderFooter()}
|
||||
{this.renderActions()}
|
||||
<ReactionPicker onEmojiSelected={this.onReactionPress} />
|
||||
<UploadProgress rid={this.rid} />
|
||||
<UploadProgress rid={this.rid} user={user} baseUrl={baseUrl} />
|
||||
<FileModal
|
||||
attachment={selectedAttachment}
|
||||
isVisible={photoModalVisible}
|
||||
|
|
|
@ -9,14 +9,11 @@ import { SafeAreaView } from 'react-navigation';
|
|||
import I18n from '../i18n';
|
||||
import database from '../lib/realm';
|
||||
import StatusBar from '../containers/StatusBar';
|
||||
import { selectServerRequest as selectServerRequestAction } from '../actions/server';
|
||||
|
||||
import {
|
||||
COLOR_BACKGROUND_CONTAINER
|
||||
} from '../constants/colors';
|
||||
import Navigation from '../lib/Navigation';
|
||||
import { COLOR_BACKGROUND_CONTAINER } from '../constants/colors';
|
||||
import Navigation from '../lib/ShareNavigation';
|
||||
import ServerItem, { ROW_HEIGHT } from '../presentation/ServerItem';
|
||||
import sharedStyles from './Styles';
|
||||
import RocketChat from '../lib/rocketchat';
|
||||
|
||||
const getItemLayout = (data, index) => ({ length: ROW_HEIGHT, offset: ROW_HEIGHT * index, index });
|
||||
const keyExtractor = item => item.id;
|
||||
|
@ -36,10 +33,8 @@ const styles = StyleSheet.create({
|
|||
}
|
||||
});
|
||||
|
||||
@connect(state => ({
|
||||
server: state.server.server
|
||||
}), dispatch => ({
|
||||
selectServerRequest: server => dispatch(selectServerRequestAction(server))
|
||||
@connect(({ share }) => ({
|
||||
server: share.server
|
||||
}))
|
||||
export default class SelectServerView extends React.Component {
|
||||
static navigationOptions = () => ({
|
||||
|
@ -47,8 +42,7 @@ export default class SelectServerView extends React.Component {
|
|||
})
|
||||
|
||||
static propTypes = {
|
||||
server: PropTypes.string,
|
||||
selectServerRequest: PropTypes.func
|
||||
server: PropTypes.string
|
||||
}
|
||||
|
||||
constructor(props) {
|
||||
|
@ -61,15 +55,15 @@ export default class SelectServerView extends React.Component {
|
|||
};
|
||||
}
|
||||
|
||||
select = (server) => {
|
||||
select = async(server) => {
|
||||
const {
|
||||
server: currentServer, selectServerRequest
|
||||
server: currentServer
|
||||
} = this.props;
|
||||
|
||||
if (currentServer !== server) {
|
||||
selectServerRequest(server);
|
||||
}
|
||||
Navigation.navigate('ShareListView');
|
||||
if (currentServer !== server) {
|
||||
await RocketChat.shareExtensionInit(server);
|
||||
}
|
||||
}
|
||||
|
||||
renderItem = ({ item }) => {
|
||||
|
|
|
@ -1,92 +0,0 @@
|
|||
import React, { PureComponent } from 'react';
|
||||
import {
|
||||
View, StyleSheet, Text, Platform
|
||||
} from 'react-native';
|
||||
import PropTypes from 'prop-types';
|
||||
import { connect } from 'react-redux';
|
||||
import { TextInput } from 'react-native-gesture-handler';
|
||||
|
||||
import I18n from '../../i18n';
|
||||
import { COLOR_WHITE, HEADER_TITLE } from '../../constants/colors';
|
||||
import sharedStyles from '../Styles';
|
||||
import { setSearch as setSearchAction } from '../../actions/rooms';
|
||||
import { isAndroid } from '../../utils/deviceInfo';
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
container: {
|
||||
flex: 1,
|
||||
justifyContent: 'center'
|
||||
},
|
||||
search: {
|
||||
fontSize: 20,
|
||||
color: COLOR_WHITE,
|
||||
...sharedStyles.textRegular
|
||||
},
|
||||
title: {
|
||||
...Platform.select({
|
||||
ios: {
|
||||
fontSize: 17,
|
||||
...sharedStyles.textSemibold,
|
||||
color: HEADER_TITLE
|
||||
},
|
||||
android: {
|
||||
fontSize: 20,
|
||||
...sharedStyles.textRegular,
|
||||
color: HEADER_TITLE
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
@connect(state => ({
|
||||
showSearchHeader: state.rooms.showSearchHeader
|
||||
}), dispatch => ({
|
||||
setSearch: searchText => dispatch(setSearchAction(searchText))
|
||||
}))
|
||||
class ShareListHeader extends PureComponent {
|
||||
static propTypes = {
|
||||
showSearchHeader: PropTypes.bool,
|
||||
setSearch: PropTypes.func
|
||||
}
|
||||
|
||||
componentDidUpdate(prevProps) {
|
||||
const { showSearchHeader } = this.props;
|
||||
if (showSearchHeader && prevProps.showSearchHeader !== showSearchHeader) {
|
||||
setTimeout(() => {
|
||||
this.searchInputRef.focus();
|
||||
}, 300);
|
||||
}
|
||||
}
|
||||
|
||||
onSearchChangeText = (text) => {
|
||||
const { setSearch } = this.props;
|
||||
setSearch(text.trim());
|
||||
}
|
||||
|
||||
setSearchInputRef = (ref) => {
|
||||
this.searchInputRef = ref;
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
showSearchHeader
|
||||
} = this.props;
|
||||
|
||||
if (showSearchHeader && isAndroid) {
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
<TextInput
|
||||
ref={this.setSearchInputRef}
|
||||
style={styles.search}
|
||||
placeholder={I18n.t('Search')}
|
||||
placeholderTextColor='rgba(255, 255, 255, 0.5)'
|
||||
onChangeText={this.onSearchChangeText}
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
return <Text style={styles.title}>{I18n.t('Select_Channels')}</Text>;
|
||||
}
|
||||
}
|
||||
|
||||
export default ShareListHeader;
|
|
@ -0,0 +1,52 @@
|
|||
import React from 'react';
|
||||
import {
|
||||
View, StyleSheet, Text, TextInput
|
||||
} from 'react-native';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import I18n from '../../../i18n';
|
||||
import { COLOR_WHITE, HEADER_TITLE } from '../../../constants/colors';
|
||||
import sharedStyles from '../../Styles';
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
container: {
|
||||
flex: 1,
|
||||
justifyContent: 'center'
|
||||
},
|
||||
search: {
|
||||
fontSize: 20,
|
||||
color: COLOR_WHITE,
|
||||
...sharedStyles.textRegular,
|
||||
marginHorizontal: 14
|
||||
},
|
||||
title: {
|
||||
fontSize: 20,
|
||||
...sharedStyles.textBold,
|
||||
color: HEADER_TITLE,
|
||||
marginHorizontal: 16
|
||||
}
|
||||
});
|
||||
|
||||
const Header = React.memo(({ searching, onChangeSearchText }) => {
|
||||
if (searching) {
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
<TextInput
|
||||
style={styles.search}
|
||||
placeholder={I18n.t('Search')}
|
||||
placeholderTextColor='rgba(255, 255, 255, 0.5)'
|
||||
onChangeText={onChangeSearchText}
|
||||
autoFocus
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
return <Text style={styles.title}>{I18n.t('Send_to')}</Text>;
|
||||
});
|
||||
|
||||
Header.propTypes = {
|
||||
searching: PropTypes.bool,
|
||||
onChangeSearchText: PropTypes.func
|
||||
};
|
||||
|
||||
export default Header;
|
|
@ -0,0 +1,76 @@
|
|||
import React, { useState } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
Keyboard, LayoutAnimation, View, StyleSheet
|
||||
} from 'react-native';
|
||||
import ShareExtension from 'rn-extensions-share';
|
||||
|
||||
import SearchBox from '../../../containers/SearchBox';
|
||||
import { CloseShareExtensionButton } from '../../../containers/HeaderButton';
|
||||
import { HEADER_BACKGROUND } from '../../../constants/colors';
|
||||
|
||||
import sharedStyles from '../../Styles';
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
container: {
|
||||
backgroundColor: HEADER_BACKGROUND,
|
||||
flexDirection: 'row',
|
||||
...sharedStyles.separatorBottom
|
||||
}
|
||||
});
|
||||
|
||||
const Header = React.memo(({
|
||||
searching, onChangeSearchText, initSearch, cancelSearch
|
||||
}) => {
|
||||
const [text, setText] = useState('');
|
||||
|
||||
const onChangeText = (searchText) => {
|
||||
onChangeSearchText(searchText);
|
||||
setText(searchText);
|
||||
};
|
||||
|
||||
const onCancelPress = () => {
|
||||
Keyboard.dismiss();
|
||||
onChangeText('');
|
||||
cancelSearch();
|
||||
LayoutAnimation.easeInEaseOut();
|
||||
};
|
||||
|
||||
const onFocus = () => {
|
||||
initSearch();
|
||||
LayoutAnimation.easeInEaseOut();
|
||||
};
|
||||
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
{
|
||||
!searching
|
||||
? (
|
||||
<CloseShareExtensionButton
|
||||
onPress={ShareExtension.close}
|
||||
testID='share-extension-close'
|
||||
/>
|
||||
)
|
||||
: null
|
||||
}
|
||||
<SearchBox
|
||||
value={text}
|
||||
hasCancel={searching}
|
||||
onFocus={onFocus}
|
||||
onCancelPress={onCancelPress}
|
||||
onChangeText={onChangeText}
|
||||
testID='rooms-list-view-search'
|
||||
key='rooms-list-view-search'
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
});
|
||||
|
||||
Header.propTypes = {
|
||||
searching: PropTypes.bool,
|
||||
onChangeSearchText: PropTypes.func,
|
||||
initSearch: PropTypes.func,
|
||||
cancelSearch: PropTypes.func
|
||||
};
|
||||
|
||||
export default Header;
|
|
@ -0,0 +1,30 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import Header from './Header';
|
||||
|
||||
const ShareListHeader = React.memo(({
|
||||
searching, initSearch, cancelSearch, search
|
||||
}) => {
|
||||
const onSearchChangeText = (text) => {
|
||||
search(text.trim());
|
||||
};
|
||||
|
||||
return (
|
||||
<Header
|
||||
searching={searching}
|
||||
initSearch={initSearch}
|
||||
cancelSearch={cancelSearch}
|
||||
onChangeSearchText={onSearchChangeText}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
ShareListHeader.propTypes = {
|
||||
searching: PropTypes.bool,
|
||||
initSearch: PropTypes.func,
|
||||
cancelSearch: PropTypes.func,
|
||||
search: PropTypes.func
|
||||
};
|
||||
|
||||
export default ShareListHeader;
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
View, Text, LayoutAnimation, InteractionManager, FlatList, ScrollView, ActivityIndicator, Keyboard
|
||||
View, Text, LayoutAnimation, FlatList, ActivityIndicator, Keyboard, BackHandler
|
||||
} from 'react-native';
|
||||
import { SafeAreaView } from 'react-navigation';
|
||||
import ShareExtension from 'rn-extensions-share';
|
||||
|
@ -10,60 +10,57 @@ import RNFetchBlob from 'rn-fetch-blob';
|
|||
import * as mime from 'react-native-mime-types';
|
||||
import { isEqual } from 'lodash';
|
||||
|
||||
import Navigation from '../../lib/Navigation';
|
||||
import database, { safeAddListener } from '../../lib/realm';
|
||||
import debounce from '../../utils/debounce';
|
||||
import Navigation from '../../lib/ShareNavigation';
|
||||
import database from '../../lib/realm';
|
||||
import { isIOS, isAndroid } from '../../utils/deviceInfo';
|
||||
import I18n from '../../i18n';
|
||||
import { CustomIcon } from '../../lib/Icons';
|
||||
import log from '../../utils/log';
|
||||
import {
|
||||
openSearchHeader as openSearchHeaderAction,
|
||||
closeSearchHeader as closeSearchHeaderAction
|
||||
} from '../../actions/rooms';
|
||||
import DirectoryItem, { ROW_HEIGHT } from '../../presentation/DirectoryItem';
|
||||
import ServerItem, { ROW_HEIGHT as ROW_HEIGHT_SERVER } from '../../presentation/ServerItem';
|
||||
import ServerItem from '../../presentation/ServerItem';
|
||||
import { CloseShareExtensionButton, CustomHeaderButtons, Item } from '../../containers/HeaderButton';
|
||||
import SearchBar from '../RoomsListView/ListHeader/SearchBar';
|
||||
import ShareListHeader from './Header';
|
||||
|
||||
import styles from './styles';
|
||||
import StatusBar from '../../containers/StatusBar';
|
||||
|
||||
const SCROLL_OFFSET = 56;
|
||||
const getItemLayoutChannel = (data, index) => ({ length: ROW_HEIGHT, offset: ROW_HEIGHT * index, index });
|
||||
const getItemLayoutServer = (data, index) => ({ length: ROW_HEIGHT_SERVER, offset: ROW_HEIGHT_SERVER * index, index });
|
||||
const LIMIT = 50;
|
||||
const getItemLayout = (data, index) => ({ length: ROW_HEIGHT, offset: ROW_HEIGHT * index, index });
|
||||
const keyExtractor = item => item.rid;
|
||||
|
||||
@connect(state => ({
|
||||
userId: state.login.user && state.login.user.id,
|
||||
token: state.login.user && state.login.user.token,
|
||||
useRealName: state.settings.UI_Use_Real_Name,
|
||||
searchText: state.rooms.searchText,
|
||||
server: state.server.server,
|
||||
loading: state.server.loading,
|
||||
FileUpload_MediaTypeWhiteList: state.settings.FileUpload_MediaTypeWhiteList,
|
||||
FileUpload_MaxFileSize: state.settings.FileUpload_MaxFileSize,
|
||||
baseUrl: state.settings.baseUrl || state.server ? state.server.server : '',
|
||||
sortBy: state.sortPreferences.sortBy,
|
||||
groupByType: state.sortPreferences.groupByType,
|
||||
showFavorites: state.sortPreferences.showFavorites
|
||||
}), dispatch => ({
|
||||
openSearchHeader: () => dispatch(openSearchHeaderAction()),
|
||||
closeSearchHeader: () => dispatch(closeSearchHeaderAction())
|
||||
@connect(({ share }) => ({
|
||||
userId: share.user && share.user.id,
|
||||
token: share.user && share.user.token,
|
||||
server: share.server,
|
||||
baseUrl: share ? share.server : ''
|
||||
}))
|
||||
/** @extends React.Component */
|
||||
export default class ShareListView extends React.Component {
|
||||
static navigationOptions = ({ navigation }) => {
|
||||
const searching = navigation.getParam('searching');
|
||||
const cancelSearchingAndroid = navigation.getParam('cancelSearchingAndroid');
|
||||
const initSearchingAndroid = navigation.getParam('initSearchingAndroid', () => {});
|
||||
const initSearch = navigation.getParam('initSearch', () => {});
|
||||
const cancelSearch = navigation.getParam('cancelSearch', () => {});
|
||||
const search = navigation.getParam('search', () => {});
|
||||
|
||||
if (isIOS) {
|
||||
return {
|
||||
headerTitle: (
|
||||
<ShareListHeader
|
||||
searching={searching}
|
||||
initSearch={initSearch}
|
||||
cancelSearch={cancelSearch}
|
||||
search={search}
|
||||
/>
|
||||
)
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
headerBackTitle: isIOS ? I18n.t('Back') : null,
|
||||
headerBackTitle: null,
|
||||
headerLeft: searching
|
||||
? (
|
||||
<CustomHeaderButtons left>
|
||||
<Item title='cancel' iconName='cross' onPress={cancelSearchingAndroid} />
|
||||
<Item title='cancel' iconName='cross' onPress={cancelSearch} />
|
||||
</CustomHeaderButtons>
|
||||
)
|
||||
: (
|
||||
|
@ -72,13 +69,13 @@ export default class ShareListView extends React.Component {
|
|||
testID='share-extension-close'
|
||||
/>
|
||||
),
|
||||
headerTitle: <ShareListHeader />,
|
||||
headerTitle: <ShareListHeader searching={searching} search={search} />,
|
||||
headerRight: (
|
||||
searching
|
||||
? null
|
||||
: (
|
||||
<CustomHeaderButtons>
|
||||
{isAndroid ? <Item title='search' iconName='magnifier' onPress={initSearchingAndroid} /> : null}
|
||||
{isAndroid ? <Item title='search' iconName='magnifier' onPress={initSearch} /> : null}
|
||||
</CustomHeaderButtons>
|
||||
)
|
||||
)
|
||||
|
@ -88,50 +85,38 @@ export default class ShareListView extends React.Component {
|
|||
static propTypes = {
|
||||
navigation: PropTypes.object,
|
||||
server: PropTypes.string,
|
||||
useRealName: PropTypes.bool,
|
||||
searchText: PropTypes.string,
|
||||
FileUpload_MediaTypeWhiteList: PropTypes.string,
|
||||
FileUpload_MaxFileSize: PropTypes.number,
|
||||
openSearchHeader: PropTypes.func,
|
||||
closeSearchHeader: PropTypes.func,
|
||||
baseUrl: PropTypes.string,
|
||||
token: PropTypes.string,
|
||||
userId: PropTypes.string,
|
||||
sortBy: PropTypes.string,
|
||||
groupByType: PropTypes.bool,
|
||||
showFavorites: PropTypes.bool,
|
||||
loading: PropTypes.bool
|
||||
userId: PropTypes.string
|
||||
}
|
||||
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.data = [];
|
||||
this.state = {
|
||||
showError: false,
|
||||
searching: false,
|
||||
searchText: '',
|
||||
value: '',
|
||||
isMedia: false,
|
||||
mediaLoading: false,
|
||||
loading: true,
|
||||
fileInfo: null,
|
||||
search: [],
|
||||
discussions: [],
|
||||
channels: [],
|
||||
favorites: [],
|
||||
searchResults: [],
|
||||
chats: [],
|
||||
privateGroup: [],
|
||||
direct: [],
|
||||
livechat: [],
|
||||
servers: []
|
||||
servers: [],
|
||||
loading: true,
|
||||
serverInfo: null
|
||||
};
|
||||
this.didFocusListener = props.navigation.addListener('didFocus', () => BackHandler.addEventListener('hardwareBackPress', this.handleBackPress));
|
||||
this.willBlurListener = props.navigation.addListener('willBlur', () => BackHandler.addEventListener('hardwareBackPress', this.handleBackPress));
|
||||
}
|
||||
|
||||
async componentDidMount() {
|
||||
this.getSubscriptions();
|
||||
|
||||
const { navigation } = this.props;
|
||||
const { navigation, server } = this.props;
|
||||
navigation.setParams({
|
||||
initSearchingAndroid: this.initSearchingAndroid,
|
||||
cancelSearchingAndroid: this.cancelSearchingAndroid
|
||||
initSearch: this.initSearch,
|
||||
cancelSearch: this.cancelSearch,
|
||||
search: this.search
|
||||
});
|
||||
|
||||
try {
|
||||
|
@ -157,33 +142,36 @@ export default class ShareListView extends React.Component {
|
|||
log('err_process_media_share_extension', e);
|
||||
this.setState({ mediaLoading: false });
|
||||
}
|
||||
|
||||
this.getSubscriptions(server);
|
||||
}
|
||||
|
||||
componentWillReceiveProps(nextProps) {
|
||||
const { searchText, loading } = this.props;
|
||||
|
||||
if (nextProps.server && loading !== nextProps.loading) {
|
||||
if (nextProps.loading) {
|
||||
this.internalSetState({ loading: true });
|
||||
} else {
|
||||
this.getSubscriptions();
|
||||
}
|
||||
} else if (searchText !== nextProps.searchText) {
|
||||
this.search(nextProps.searchText);
|
||||
const { server } = this.props;
|
||||
if (nextProps.server !== server) {
|
||||
this.getSubscriptions(nextProps.server);
|
||||
}
|
||||
}
|
||||
|
||||
shouldComponentUpdate(nextProps, nextState) {
|
||||
const { loading, searching } = this.state;
|
||||
if (nextState.loading !== loading) {
|
||||
return true;
|
||||
}
|
||||
const { searching } = this.state;
|
||||
if (nextState.searching !== searching) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const { search } = this.state;
|
||||
if (!isEqual(nextState.search, search)) {
|
||||
const { isMedia } = this.state;
|
||||
if (nextState.isMedia !== isMedia) {
|
||||
this.getSubscriptions(nextProps.server, nextState.fileInfo);
|
||||
return true;
|
||||
}
|
||||
|
||||
const { server } = this.props;
|
||||
if (server !== nextProps.server) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const { searchResults } = this.state;
|
||||
if (!isEqual(nextState.searchResults, searchResults)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
@ -198,69 +186,31 @@ export default class ShareListView extends React.Component {
|
|||
this.setState(...args);
|
||||
}
|
||||
|
||||
getSubscriptions = debounce(() => {
|
||||
if (this.data && this.data.removeAllListeners) {
|
||||
this.data.removeAllListeners();
|
||||
}
|
||||
|
||||
const {
|
||||
server, sortBy, showFavorites, groupByType
|
||||
} = this.props;
|
||||
getSubscriptions = (server, fileInfo) => {
|
||||
const { serversDB } = database.databases;
|
||||
|
||||
if (server) {
|
||||
this.data = database.objects('subscriptions').filtered('archived != true && open == true');
|
||||
if (sortBy === 'alphabetical') {
|
||||
this.data = this.data.sorted('name', false);
|
||||
} else {
|
||||
this.data = this.data.sorted('roomUpdatedAt', true);
|
||||
}
|
||||
// servers
|
||||
this.data = database.objects('subscriptions').filtered('archived != true && open == true').sorted('roomUpdatedAt', true);
|
||||
this.servers = serversDB.objects('servers');
|
||||
this.chats = this.data.slice(0, LIMIT);
|
||||
const serverInfo = serversDB.objectForPrimaryKey('servers', server);
|
||||
|
||||
// favorites
|
||||
if (showFavorites) {
|
||||
this.favorites = this.data.filtered('f == true');
|
||||
} else {
|
||||
this.favorites = [];
|
||||
this.internalSetState({
|
||||
chats: this.chats ? this.chats.slice() : [],
|
||||
servers: this.servers ? this.servers.slice() : [],
|
||||
loading: false,
|
||||
showError: !this.canUploadFile(serverInfo, fileInfo),
|
||||
serverInfo
|
||||
});
|
||||
this.forceUpdate();
|
||||
}
|
||||
|
||||
// type
|
||||
if (groupByType) {
|
||||
this.discussions = this.data.filtered('prid != null');
|
||||
this.channels = this.data.filtered('t == $0 AND prid == null', 'c');
|
||||
this.privateGroup = this.data.filtered('t == $0 AND prid == null', 'p');
|
||||
this.direct = this.data.filtered('t == $0 AND prid == null', 'd');
|
||||
this.livechat = this.data.filtered('t == $0 AND prid == null', 'l');
|
||||
} else {
|
||||
this.chats = this.data;
|
||||
}
|
||||
safeAddListener(this.data, this.updateState);
|
||||
}
|
||||
}, 300);
|
||||
};
|
||||
|
||||
uriToPath = uri => decodeURIComponent(isIOS ? uri.replace(/^file:\/\//, '') : uri);
|
||||
|
||||
// eslint-disable-next-line react/sort-comp
|
||||
updateState = debounce(() => {
|
||||
this.updateStateInteraction = InteractionManager.runAfterInteractions(() => {
|
||||
this.internalSetState({
|
||||
chats: this.chats ? this.chats.slice() : [],
|
||||
favorites: this.favorites ? this.favorites.slice() : [],
|
||||
discussions: this.discussions ? this.discussions.slice() : [],
|
||||
channels: this.channels ? this.channels.slice() : [],
|
||||
privateGroup: this.privateGroup ? this.privateGroup.slice() : [],
|
||||
direct: this.direct ? this.direct.slice() : [],
|
||||
livechat: this.livechat ? this.livechat.slice() : [],
|
||||
servers: this.servers ? this.servers.slice() : [],
|
||||
loading: false
|
||||
});
|
||||
this.forceUpdate();
|
||||
});
|
||||
}, 300);
|
||||
|
||||
getRoomTitle = (item) => {
|
||||
const { useRealName } = this.props;
|
||||
const { serverInfo } = this.state;
|
||||
const { useRealName } = serverInfo;
|
||||
return ((item.prid || useRealName) && item.fname) || item.name;
|
||||
}
|
||||
|
||||
|
@ -277,13 +227,11 @@ export default class ShareListView extends React.Component {
|
|||
});
|
||||
}
|
||||
|
||||
canUploadFile = () => {
|
||||
const { FileUpload_MediaTypeWhiteList, FileUpload_MaxFileSize } = this.props;
|
||||
const { fileInfo: file, mediaLoading, loading } = this.state;
|
||||
canUploadFile = (serverInfo, fileInfo) => {
|
||||
const { fileInfo: fileData } = this.state;
|
||||
const file = fileInfo || fileData;
|
||||
const { FileUpload_MediaTypeWhiteList, FileUpload_MaxFileSize } = serverInfo;
|
||||
|
||||
if (loading || mediaLoading) {
|
||||
return true;
|
||||
}
|
||||
if (!(file && file.path)) {
|
||||
return true;
|
||||
}
|
||||
|
@ -307,40 +255,49 @@ export default class ShareListView extends React.Component {
|
|||
|
||||
search = (text) => {
|
||||
const result = database.objects('subscriptions').filtered('name CONTAINS[c] $0', text);
|
||||
const subscriptions = database.objects('subscriptions');
|
||||
const data = result.length !== subscriptions.length ? result : [];
|
||||
this.internalSetState({
|
||||
search: data
|
||||
searchResults: result.slice(0, LIMIT),
|
||||
searchText: text
|
||||
});
|
||||
}
|
||||
|
||||
initSearchingAndroid = () => {
|
||||
const { openSearchHeader, navigation } = this.props;
|
||||
this.setState({ searching: true });
|
||||
initSearch = () => {
|
||||
const { chats } = this.state;
|
||||
const { navigation } = this.props;
|
||||
this.setState({ searching: true, searchResults: chats });
|
||||
navigation.setParams({ searching: true });
|
||||
openSearchHeader();
|
||||
}
|
||||
|
||||
cancelSearchingAndroid = () => {
|
||||
if (isAndroid) {
|
||||
const { closeSearchHeader, navigation } = this.props;
|
||||
this.setState({ searching: false });
|
||||
cancelSearch = () => {
|
||||
const { navigation } = this.props;
|
||||
this.internalSetState({ searching: false, searchResults: [], searchText: '' });
|
||||
navigation.setParams({ searching: false });
|
||||
closeSearchHeader();
|
||||
this.internalSetState({ search: [] });
|
||||
Keyboard.dismiss();
|
||||
}
|
||||
|
||||
handleBackPress = () => {
|
||||
const { searching } = this.state;
|
||||
if (searching) {
|
||||
this.cancelSearch();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
renderListHeader = () => <SearchBar onChangeSearchText={this.search} />;
|
||||
renderSectionHeader = (header) => {
|
||||
const { searching } = this.state;
|
||||
if (searching) {
|
||||
return null;
|
||||
}
|
||||
|
||||
renderSectionHeader = header => (
|
||||
return (
|
||||
<View style={styles.headerContainer}>
|
||||
<Text style={styles.headerText}>
|
||||
{I18n.t(header)}
|
||||
</Text>
|
||||
</View>
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
renderItem = ({ item }) => {
|
||||
const { userId, token, baseUrl } = this.props;
|
||||
|
@ -367,33 +324,9 @@ export default class ShareListView extends React.Component {
|
|||
|
||||
renderSeparator = () => <View style={styles.separator} />;
|
||||
|
||||
renderSection = (data, header) => {
|
||||
if (data && data.length > 0) {
|
||||
return (
|
||||
<React.Fragment>
|
||||
{this.renderSectionHeader(header)}
|
||||
<View style={styles.bordered}>
|
||||
<FlatList
|
||||
data={data}
|
||||
keyExtractor={keyExtractor}
|
||||
style={styles.flatlist}
|
||||
renderItem={this.renderItem}
|
||||
ItemSeparatorComponent={this.renderSeparator}
|
||||
getItemLayout={getItemLayoutServer}
|
||||
enableEmptySections
|
||||
removeClippedSubviews
|
||||
keyboardShouldPersistTaps='always'
|
||||
initialNumToRender={12}
|
||||
windowSize={20}
|
||||
/>
|
||||
</View>
|
||||
</React.Fragment>
|
||||
);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
renderBorderBottom = () => <View style={styles.borderBottom} />;
|
||||
|
||||
renderServerSelector = () => {
|
||||
renderSelectServer = () => {
|
||||
const { servers } = this.state;
|
||||
const { server } = this.props;
|
||||
const currentServer = servers.find(serverFiltered => serverFiltered.id === server);
|
||||
|
@ -411,21 +344,50 @@ export default class ShareListView extends React.Component {
|
|||
) : null;
|
||||
}
|
||||
|
||||
renderEmptyComponent = () => (
|
||||
<View style={[styles.container, styles.emptyContainer]}>
|
||||
<Text style={styles.title}>{I18n.t('No_results_found')}</Text>
|
||||
</View>
|
||||
);
|
||||
|
||||
renderHeader = () => {
|
||||
const { searching } = this.state;
|
||||
return (
|
||||
<React.Fragment>
|
||||
{ !searching
|
||||
? (
|
||||
<React.Fragment>
|
||||
{this.renderSelectServer()}
|
||||
{this.renderSectionHeader('Chats')}
|
||||
</React.Fragment>
|
||||
)
|
||||
: null
|
||||
}
|
||||
</React.Fragment>
|
||||
);
|
||||
}
|
||||
|
||||
renderContent = () => {
|
||||
const {
|
||||
discussions, channels, privateGroup, direct, livechat, search, chats, favorites
|
||||
chats, mediaLoading, loading, searchResults, searching, searchText
|
||||
} = this.state;
|
||||
|
||||
if (search.length > 0) {
|
||||
if (mediaLoading || loading) {
|
||||
return <ActivityIndicator style={styles.loading} />;
|
||||
}
|
||||
|
||||
return (
|
||||
<FlatList
|
||||
data={search}
|
||||
extraData={search}
|
||||
data={searching ? searchResults : chats}
|
||||
keyExtractor={keyExtractor}
|
||||
style={styles.flatlist}
|
||||
renderItem={this.renderItem}
|
||||
getItemLayout={getItemLayoutChannel}
|
||||
getItemLayout={getItemLayout}
|
||||
ItemSeparatorComponent={this.renderSeparator}
|
||||
ListHeaderComponent={this.renderHeader}
|
||||
ListFooterComponent={!searching && this.renderBorderBottom}
|
||||
ListHeaderComponentStyle={!searching ? styles.borderBottom : {}}
|
||||
ListEmptyComponent={searching && searchText ? this.renderEmptyComponent : null}
|
||||
enableEmptySections
|
||||
removeClippedSubviews
|
||||
keyboardShouldPersistTaps='always'
|
||||
|
@ -435,59 +397,44 @@ export default class ShareListView extends React.Component {
|
|||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<View style={styles.content}>
|
||||
{this.renderServerSelector()}
|
||||
{this.renderSection(favorites, 'Favorites')}
|
||||
{this.renderSection(discussions, 'Discussions')}
|
||||
{this.renderSection(channels, 'Channels')}
|
||||
{this.renderSection(direct, 'Direct_Messages')}
|
||||
{this.renderSection(privateGroup, 'Private_Groups')}
|
||||
{this.renderSection(livechat, 'Livechat')}
|
||||
{this.renderSection(chats, 'Chats')}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
renderError = () => {
|
||||
const {
|
||||
fileInfo: file, loading, searching, serverInfo
|
||||
} = this.state;
|
||||
const { FileUpload_MaxFileSize } = serverInfo;
|
||||
const errorMessage = (FileUpload_MaxFileSize < file.size)
|
||||
? 'error-file-too-large'
|
||||
: 'error-invalid-file-type';
|
||||
|
||||
|
||||
renderScrollView = () => {
|
||||
const { mediaLoading, loading } = this.state;
|
||||
if (mediaLoading || loading) {
|
||||
if (loading) {
|
||||
return <ActivityIndicator style={styles.loading} />;
|
||||
}
|
||||
|
||||
return (
|
||||
<ScrollView
|
||||
style={styles.scroll}
|
||||
contentOffset={isIOS ? { x: 0, y: SCROLL_OFFSET } : {}}
|
||||
keyboardShouldPersistTaps='always'
|
||||
>
|
||||
{this.renderListHeader()}
|
||||
{this.renderContent()}
|
||||
</ScrollView>
|
||||
);
|
||||
}
|
||||
|
||||
renderError = () => {
|
||||
const { fileInfo: file } = this.state;
|
||||
const { FileUpload_MaxFileSize } = this.props;
|
||||
const errorMessage = (FileUpload_MaxFileSize < file.size)
|
||||
? 'error-file-too-large'
|
||||
: 'error-invalid-file-type';
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
{ !searching
|
||||
? (
|
||||
<React.Fragment>
|
||||
{this.renderSelectServer()}
|
||||
</React.Fragment>
|
||||
)
|
||||
: null
|
||||
}
|
||||
<View style={[styles.container, styles.centered]}>
|
||||
<Text style={styles.title}>{I18n.t(errorMessage)}</Text>
|
||||
<CustomIcon name='circle-cross' size={120} style={styles.errorIcon} />
|
||||
<Text style={styles.fileMime}>{ file.type }</Text>
|
||||
</View>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
render() {
|
||||
const showError = !this.canUploadFile();
|
||||
const { showError } = this.state;
|
||||
return (
|
||||
<SafeAreaView style={styles.container} forceInset={{ bottom: 'never' }}>
|
||||
{ showError ? this.renderError() : this.renderScrollView() }
|
||||
<StatusBar />
|
||||
{ showError ? this.renderError() : this.renderContent() }
|
||||
</SafeAreaView>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -8,24 +8,34 @@ import {
|
|||
|
||||
export default StyleSheet.create({
|
||||
container: {
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
flex: 1,
|
||||
backgroundColor: COLOR_BACKGROUND_CONTAINER
|
||||
},
|
||||
emptyContainer: {
|
||||
padding: 20,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center'
|
||||
},
|
||||
content: {
|
||||
flex: 1,
|
||||
backgroundColor: isIOS ? COLOR_WHITE : '#E1E5E8'
|
||||
backgroundColor: isIOS ? COLOR_WHITE : '#E1E5E8',
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center'
|
||||
},
|
||||
centered: {
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center'
|
||||
},
|
||||
flatlist: {
|
||||
marginTop: isIOS ? 6 : 0, // the height of the navigation bar with the searchbar is larger
|
||||
width: '100%',
|
||||
backgroundColor: COLOR_WHITE
|
||||
backgroundColor: COLOR_BACKGROUND_CONTAINER
|
||||
},
|
||||
bordered: {
|
||||
...sharedStyles.separatorVertical
|
||||
},
|
||||
scroll: {
|
||||
width: '100%'
|
||||
borderBottom: {
|
||||
...sharedStyles.separatorBottom
|
||||
},
|
||||
headerContainer: {
|
||||
paddingHorizontal: 15,
|
||||
|
@ -37,8 +47,7 @@ export default StyleSheet.create({
|
|||
...sharedStyles.textColorNormal,
|
||||
...sharedStyles.textRegular,
|
||||
fontSize: 17,
|
||||
letterSpacing: 0.27,
|
||||
flex: 1
|
||||
letterSpacing: 0.27
|
||||
},
|
||||
separator: {
|
||||
...sharedStyles.separatorBottom,
|
||||
|
|
|
@ -19,12 +19,17 @@ import database from '../../lib/realm';
|
|||
import { CustomHeaderButtons, Item } from '../../containers/HeaderButton';
|
||||
import { isReadOnly, isBlocked } from '../../utils/room';
|
||||
|
||||
@connect(state => ({
|
||||
username: state.login.user && state.login.user.username
|
||||
@connect(({ share }) => ({
|
||||
user: {
|
||||
id: share.user && share.user.id,
|
||||
username: share.user && share.user.username,
|
||||
token: share.user && share.user.token
|
||||
},
|
||||
baseUrl: share ? share.server : ''
|
||||
}))
|
||||
export default class ShareView extends React.Component {
|
||||
static navigationOptions = ({ navigation }) => {
|
||||
const canSend = navigation.getParam('canSend', false);
|
||||
const canSend = navigation.getParam('canSend', true);
|
||||
|
||||
return ({
|
||||
title: I18n.t('Share'),
|
||||
|
@ -46,7 +51,12 @@ export default class ShareView extends React.Component {
|
|||
|
||||
static propTypes = {
|
||||
navigation: PropTypes.object,
|
||||
username: PropTypes.string.isRequired
|
||||
user: PropTypes.shape({
|
||||
id: PropTypes.string.isRequired,
|
||||
username: PropTypes.string.isRequired,
|
||||
token: PropTypes.string.isRequired
|
||||
}),
|
||||
baseUrl: PropTypes.string.isRequired
|
||||
};
|
||||
|
||||
constructor(props) {
|
||||
|
@ -77,11 +87,12 @@ export default class ShareView extends React.Component {
|
|||
|
||||
componentDidMount() {
|
||||
const { room } = this.state;
|
||||
const { navigation, username } = this.props;
|
||||
const { navigation, user } = this.props;
|
||||
const { username } = user;
|
||||
navigation.setParams({ sendMessage: this._sendMessage, canSend: !(isReadOnly(room, { username }) || isBlocked(room)) });
|
||||
}
|
||||
|
||||
bytesToSize = bits => `${ ((bits / 8) / 1048576).toFixed(2) }MB`;
|
||||
bytesToSize = bytes => `${ (bytes / 1048576).toFixed(2) }MB`;
|
||||
|
||||
_sendMessage = async() => {
|
||||
const { isMedia } = this.state;
|
||||
|
@ -99,11 +110,12 @@ export default class ShareView extends React.Component {
|
|||
|
||||
sendMediaMessage = async() => {
|
||||
const { rid, fileInfo, file } = this.state;
|
||||
const { baseUrl: server, user } = this.props;
|
||||
const { name, description } = file;
|
||||
const fileMessage = { ...fileInfo, name, description };
|
||||
if (fileInfo && rid !== '') {
|
||||
try {
|
||||
await RocketChat.sendFileMessage(rid, fileMessage, undefined);
|
||||
await RocketChat.sendFileMessage(rid, fileMessage, undefined, server, user);
|
||||
} catch (e) {
|
||||
log('err_send_media_message', e);
|
||||
}
|
||||
|
@ -112,9 +124,10 @@ export default class ShareView extends React.Component {
|
|||
|
||||
sendTextMessage = async() => {
|
||||
const { value, rid } = this.state;
|
||||
const { user } = this.props;
|
||||
if (value !== '' && rid !== '') {
|
||||
try {
|
||||
await RocketChat.sendMessage(rid, value, undefined);
|
||||
await RocketChat.sendMessage(rid, value, undefined, user);
|
||||
} catch (error) {
|
||||
log('err_share_extension_send_message', error);
|
||||
}
|
||||
|
@ -204,7 +217,8 @@ export default class ShareView extends React.Component {
|
|||
}
|
||||
|
||||
render() {
|
||||
const { username } = this.props;
|
||||
const { user } = this.props;
|
||||
const { username } = user;
|
||||
const {
|
||||
name, loading, isMedia, room
|
||||
} = this.state;
|
||||
|
|
|
@ -200,7 +200,7 @@ export default StyleSheet.create({
|
|||
marginVertical: 10
|
||||
},
|
||||
notchLandscapeContainer: {
|
||||
marginTop: -44,
|
||||
marginTop: -34,
|
||||
paddingHorizontal: 30,
|
||||
backgroundColor: COLOR_BACKGROUND_CONTAINER
|
||||
}
|
||||
|
|
|
@ -14,7 +14,8 @@ const styles = StyleSheet.create({
|
|||
flex: 1,
|
||||
backgroundColor: COLOR_WHITE,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center'
|
||||
alignItems: 'center',
|
||||
padding: 15
|
||||
},
|
||||
title: {
|
||||
fontSize: 18,
|
||||
|
|
|
@ -34,6 +34,7 @@ target 'RocketChatRN' do
|
|||
pod 'react-native-splash-screen', :path => '../node_modules/react-native-splash-screen'
|
||||
|
||||
pod 'react-native-orientation-locker', :path => '../node_modules/react-native-orientation-locker'
|
||||
pod 'react-native-realm-path', :path => '../node_modules/react-native-realm-path'
|
||||
|
||||
pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
|
||||
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
|
||||
|
@ -73,6 +74,9 @@ target 'ShareRocketChatRN' do
|
|||
pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info'
|
||||
pod 'RNLocalize', :path => '../node_modules/react-native-localize'
|
||||
|
||||
pod 'react-native-realm-path', :path => '../node_modules/react-native-realm-path'
|
||||
pod 'rn-extensions-share', :path => '../node_modules/rn-extensions-share'
|
||||
|
||||
pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
|
||||
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
|
||||
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
|
||||
|
|
|
@ -113,6 +113,8 @@ PODS:
|
|||
- React
|
||||
- react-native-orientation-locker (1.1.5):
|
||||
- React
|
||||
- react-native-realm-path (1.2.11):
|
||||
- React
|
||||
- react-native-splash-screen (3.2.0):
|
||||
- React
|
||||
- react-native-webview (5.8.1):
|
||||
|
@ -143,6 +145,8 @@ PODS:
|
|||
- React/Core
|
||||
- React/fishhook
|
||||
- React/RCTBlob
|
||||
- rn-extensions-share (2.3.10):
|
||||
- React
|
||||
- RNDeviceInfo (1.6.1):
|
||||
- React
|
||||
- RNImageCropPicker (0.24.1):
|
||||
|
@ -188,6 +192,7 @@ DEPENDENCIES:
|
|||
- GoogleIDFASupport (~> 3.14.0)
|
||||
- react-native-document-picker (from `../node_modules/react-native-document-picker`)
|
||||
- react-native-orientation-locker (from `../node_modules/react-native-orientation-locker`)
|
||||
- react-native-realm-path (from `../node_modules/react-native-realm-path`)
|
||||
- react-native-splash-screen (from `../node_modules/react-native-splash-screen`)
|
||||
- react-native-webview (from `../node_modules/react-native-webview`)
|
||||
- React/Core (from `../node_modules/react-native`)
|
||||
|
@ -200,6 +205,7 @@ DEPENDENCIES:
|
|||
- React/RCTText (from `../node_modules/react-native`)
|
||||
- React/RCTVibration (from `../node_modules/react-native`)
|
||||
- React/RCTWebSocket (from `../node_modules/react-native`)
|
||||
- rn-extensions-share (from `../node_modules/rn-extensions-share`)
|
||||
- RNDeviceInfo (from `../node_modules/react-native-device-info`)
|
||||
- RNImageCropPicker (from `../node_modules/react-native-image-crop-picker`)
|
||||
- RNLocalize (from `../node_modules/react-native-localize`)
|
||||
|
@ -271,10 +277,14 @@ EXTERNAL SOURCES:
|
|||
:path: "../node_modules/react-native-document-picker"
|
||||
react-native-orientation-locker:
|
||||
:path: "../node_modules/react-native-orientation-locker"
|
||||
react-native-realm-path:
|
||||
:path: "../node_modules/react-native-realm-path"
|
||||
react-native-splash-screen:
|
||||
:path: "../node_modules/react-native-splash-screen"
|
||||
react-native-webview:
|
||||
:path: "../node_modules/react-native-webview"
|
||||
rn-extensions-share:
|
||||
:path: "../node_modules/rn-extensions-share"
|
||||
RNDeviceInfo:
|
||||
:path: "../node_modules/react-native-device-info"
|
||||
RNImageCropPicker:
|
||||
|
@ -353,8 +363,10 @@ SPEC CHECKSUMS:
|
|||
React: 76e6aa2b87d05eb6cccb6926d72685c9a07df152
|
||||
react-native-document-picker: 94a07ce0494c559e2ae9fa86621d6c624d810fec
|
||||
react-native-orientation-locker: 132a63bab4dddd2a5709f6f7935ad9676b0af7c5
|
||||
react-native-realm-path: 868473ea0bc4629850f1ec51a70d81055c06d091
|
||||
react-native-splash-screen: 200d11d188e2e78cea3ad319964f6142b6384865
|
||||
react-native-webview: f3e28b48461c78db833f727feec08b13285e7b61
|
||||
rn-extensions-share: 4bfee75806ad54aadeff1dfa535697a6345a50b8
|
||||
RNDeviceInfo: 958a1ed6f94e04557b865b8ef848cfc83db0ebba
|
||||
RNImageCropPicker: 6134b66a3d5bc13e2895a97c630a4254006902b4
|
||||
RNLocalize: 62a949d2ec5bee0eb8f39a80a48f01e2f4f67080
|
||||
|
@ -374,6 +386,6 @@ SPEC CHECKSUMS:
|
|||
UMTaskManagerInterface: 296793ab2a7e181fe5ebe2ba9b40ae208ab4b8fa
|
||||
yoga: 92b2102c3d373d1a790db4ab761d2b0ffc634f64
|
||||
|
||||
PODFILE CHECKSUM: 7875ef440f1c2fb6583ee808c642c97d1410140d
|
||||
PODFILE CHECKSUM: bfa056aa2707bd200eb8a39ada130c51b702380c
|
||||
|
||||
COCOAPODS: 1.6.2
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
../../../../../node_modules/react-native-realm-path/ios/RNRealmPath.h
|
|
@ -0,0 +1 @@
|
|||
../../../../../node_modules/rn-extensions-share/ios/ReactNativeShareExtension.h
|
|
@ -0,0 +1 @@
|
|||
../../../../../node_modules/react-native-realm-path/ios/RNRealmPath.h
|
|
@ -0,0 +1 @@
|
|||
../../../../../node_modules/rn-extensions-share/ios/ReactNativeShareExtension.h
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"name": "react-native-realm-path",
|
||||
"version": "1.2.11",
|
||||
"summary": "A helper to Realm Path on AppGroup iOS.",
|
||||
"license": "MIT",
|
||||
"authors": "Djorkaeff Alexandre",
|
||||
"homepage": "https://github.com/rocketchat/react-native-realm-path",
|
||||
"platforms": {
|
||||
"ios": "10.0"
|
||||
},
|
||||
"source": {
|
||||
"git": "https://github.com/RocketChat/react-native-realm-path.git",
|
||||
"tag": "v1.2.11"
|
||||
},
|
||||
"source_files": "ios/**/*.{h,m}",
|
||||
"dependencies": {
|
||||
"React": [
|
||||
|
||||
]
|
||||
}
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
"name": "rn-extensions-share",
|
||||
"version": "2.3.10",
|
||||
"summary": "Share-Extension using react-native for both ios and android",
|
||||
"license": "MIT",
|
||||
"authors": {
|
||||
"name": "Djorkaeff Alexandre",
|
||||
"email": "djorkaeffalexandre@gmail.com",
|
||||
"url": "http://github.com/djorkaeffalexandre"
|
||||
},
|
||||
"homepage": "https://github.com/RocketChat/rn-extensions-share",
|
||||
"platforms": {
|
||||
"ios": "8.0"
|
||||
},
|
||||
"source": {
|
||||
"git": "https://github.com/RocketChat/rn-extensions-share.git",
|
||||
"tag": "master"
|
||||
},
|
||||
"source_files": "ios/*.{h,m}",
|
||||
"dependencies": {
|
||||
"React": [
|
||||
|
||||
]
|
||||
}
|
||||
}
|
|
@ -113,6 +113,8 @@ PODS:
|
|||
- React
|
||||
- react-native-orientation-locker (1.1.5):
|
||||
- React
|
||||
- react-native-realm-path (1.2.11):
|
||||
- React
|
||||
- react-native-splash-screen (3.2.0):
|
||||
- React
|
||||
- react-native-webview (5.8.1):
|
||||
|
@ -143,6 +145,8 @@ PODS:
|
|||
- React/Core
|
||||
- React/fishhook
|
||||
- React/RCTBlob
|
||||
- rn-extensions-share (2.3.10):
|
||||
- React
|
||||
- RNDeviceInfo (1.6.1):
|
||||
- React
|
||||
- RNImageCropPicker (0.24.1):
|
||||
|
@ -188,6 +192,7 @@ DEPENDENCIES:
|
|||
- GoogleIDFASupport (~> 3.14.0)
|
||||
- react-native-document-picker (from `../node_modules/react-native-document-picker`)
|
||||
- react-native-orientation-locker (from `../node_modules/react-native-orientation-locker`)
|
||||
- react-native-realm-path (from `../node_modules/react-native-realm-path`)
|
||||
- react-native-splash-screen (from `../node_modules/react-native-splash-screen`)
|
||||
- react-native-webview (from `../node_modules/react-native-webview`)
|
||||
- React/Core (from `../node_modules/react-native`)
|
||||
|
@ -200,6 +205,7 @@ DEPENDENCIES:
|
|||
- React/RCTText (from `../node_modules/react-native`)
|
||||
- React/RCTVibration (from `../node_modules/react-native`)
|
||||
- React/RCTWebSocket (from `../node_modules/react-native`)
|
||||
- rn-extensions-share (from `../node_modules/rn-extensions-share`)
|
||||
- RNDeviceInfo (from `../node_modules/react-native-device-info`)
|
||||
- RNImageCropPicker (from `../node_modules/react-native-image-crop-picker`)
|
||||
- RNLocalize (from `../node_modules/react-native-localize`)
|
||||
|
@ -271,10 +277,14 @@ EXTERNAL SOURCES:
|
|||
:path: "../node_modules/react-native-document-picker"
|
||||
react-native-orientation-locker:
|
||||
:path: "../node_modules/react-native-orientation-locker"
|
||||
react-native-realm-path:
|
||||
:path: "../node_modules/react-native-realm-path"
|
||||
react-native-splash-screen:
|
||||
:path: "../node_modules/react-native-splash-screen"
|
||||
react-native-webview:
|
||||
:path: "../node_modules/react-native-webview"
|
||||
rn-extensions-share:
|
||||
:path: "../node_modules/rn-extensions-share"
|
||||
RNDeviceInfo:
|
||||
:path: "../node_modules/react-native-device-info"
|
||||
RNImageCropPicker:
|
||||
|
@ -353,8 +363,10 @@ SPEC CHECKSUMS:
|
|||
React: 76e6aa2b87d05eb6cccb6926d72685c9a07df152
|
||||
react-native-document-picker: 94a07ce0494c559e2ae9fa86621d6c624d810fec
|
||||
react-native-orientation-locker: 132a63bab4dddd2a5709f6f7935ad9676b0af7c5
|
||||
react-native-realm-path: 868473ea0bc4629850f1ec51a70d81055c06d091
|
||||
react-native-splash-screen: 200d11d188e2e78cea3ad319964f6142b6384865
|
||||
react-native-webview: f3e28b48461c78db833f727feec08b13285e7b61
|
||||
rn-extensions-share: 4bfee75806ad54aadeff1dfa535697a6345a50b8
|
||||
RNDeviceInfo: 958a1ed6f94e04557b865b8ef848cfc83db0ebba
|
||||
RNImageCropPicker: 6134b66a3d5bc13e2895a97c630a4254006902b4
|
||||
RNLocalize: 62a949d2ec5bee0eb8f39a80a48f01e2f4f67080
|
||||
|
@ -374,6 +386,6 @@ SPEC CHECKSUMS:
|
|||
UMTaskManagerInterface: 296793ab2a7e181fe5ebe2ba9b40ae208ab4b8fa
|
||||
yoga: 92b2102c3d373d1a790db4ab761d2b0ffc634f64
|
||||
|
||||
PODFILE CHECKSUM: 7875ef440f1c2fb6583ee808c642c97d1410140d
|
||||
PODFILE CHECKSUM: bfa056aa2707bd200eb8a39ada130c51b702380c
|
||||
|
||||
COCOAPODS: 1.6.2
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,8 +1,8 @@
|
|||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Crashlytics/iOS" "${PODS_ROOT}/Fabric/iOS" "${PODS_ROOT}/FirebaseABTesting/Frameworks" "${PODS_ROOT}/FirebaseAnalytics/Frameworks" "${PODS_ROOT}/FirebasePerformance/Frameworks" "${PODS_ROOT}/FirebaseRemoteConfig/Frameworks" "${PODS_ROOT}/GoogleAppMeasurement/Frameworks"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 $(inherited) PB_FIELD_32BIT=1 PB_NO_PACKED_STRUCTS=1 PB_ENABLE_MALLOC=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/EXAppLoaderProvider" "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants" "${PODS_CONFIGURATION_BUILD_DIR}/EXFileSystem" "${PODS_CONFIGURATION_BUILD_DIR}/EXHaptics" "${PODS_CONFIGURATION_BUILD_DIR}/EXPermissions" "${PODS_CONFIGURATION_BUILD_DIR}/EXWebBrowser" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/QBImagePickerController" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RSKImageCropper" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/UMCore" "${PODS_CONFIGURATION_BUILD_DIR}/UMReactNativeAdapter" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-document-picker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-orientation-locker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"EXAppLoaderProvider" -l"EXConstants" -l"EXFileSystem" -l"EXHaptics" -l"EXPermissions" -l"EXWebBrowser" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"QBImagePickerController" -l"RNDeviceInfo" -l"RNImageCropPicker" -l"RNLocalize" -l"RNScreens" -l"RSKImageCropper" -l"React" -l"UMCore" -l"UMReactNativeAdapter" -l"c++" -l"glog" -l"nanopb" -l"react-native-document-picker" -l"react-native-orientation-locker" -l"react-native-splash-screen" -l"react-native-webview" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "Photos" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-realm-path" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/rn-extensions-share" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/EXAppLoaderProvider" "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants" "${PODS_CONFIGURATION_BUILD_DIR}/EXFileSystem" "${PODS_CONFIGURATION_BUILD_DIR}/EXHaptics" "${PODS_CONFIGURATION_BUILD_DIR}/EXPermissions" "${PODS_CONFIGURATION_BUILD_DIR}/EXWebBrowser" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/QBImagePickerController" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RSKImageCropper" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/UMCore" "${PODS_CONFIGURATION_BUILD_DIR}/UMReactNativeAdapter" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-document-picker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-orientation-locker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-realm-path" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"EXAppLoaderProvider" -l"EXConstants" -l"EXFileSystem" -l"EXHaptics" -l"EXPermissions" -l"EXWebBrowser" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"QBImagePickerController" -l"RNDeviceInfo" -l"RNImageCropPicker" -l"RNLocalize" -l"RNScreens" -l"RSKImageCropper" -l"React" -l"UMCore" -l"UMReactNativeAdapter" -l"c++" -l"glog" -l"nanopb" -l"react-native-document-picker" -l"react-native-orientation-locker" -l"react-native-realm-path" -l"react-native-splash-screen" -l"react-native-webview" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "Photos" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Crashlytics/iOS" "${PODS_ROOT}/Fabric/iOS" "${PODS_ROOT}/FirebaseABTesting/Frameworks" "${PODS_ROOT}/FirebaseAnalytics/Frameworks" "${PODS_ROOT}/FirebasePerformance/Frameworks" "${PODS_ROOT}/FirebaseRemoteConfig/Frameworks" "${PODS_ROOT}/GoogleAppMeasurement/Frameworks"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 $(inherited) PB_FIELD_32BIT=1 PB_NO_PACKED_STRUCTS=1 PB_ENABLE_MALLOC=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/EXAppLoaderProvider" "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants" "${PODS_CONFIGURATION_BUILD_DIR}/EXFileSystem" "${PODS_CONFIGURATION_BUILD_DIR}/EXHaptics" "${PODS_CONFIGURATION_BUILD_DIR}/EXPermissions" "${PODS_CONFIGURATION_BUILD_DIR}/EXWebBrowser" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/QBImagePickerController" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RSKImageCropper" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/UMCore" "${PODS_CONFIGURATION_BUILD_DIR}/UMReactNativeAdapter" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-document-picker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-orientation-locker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"EXAppLoaderProvider" -l"EXConstants" -l"EXFileSystem" -l"EXHaptics" -l"EXPermissions" -l"EXWebBrowser" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"QBImagePickerController" -l"RNDeviceInfo" -l"RNImageCropPicker" -l"RNLocalize" -l"RNScreens" -l"RSKImageCropper" -l"React" -l"UMCore" -l"UMReactNativeAdapter" -l"c++" -l"glog" -l"nanopb" -l"react-native-document-picker" -l"react-native-orientation-locker" -l"react-native-splash-screen" -l"react-native-webview" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "Photos" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-realm-path" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/rn-extensions-share" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/EXAppLoaderProvider" "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants" "${PODS_CONFIGURATION_BUILD_DIR}/EXFileSystem" "${PODS_CONFIGURATION_BUILD_DIR}/EXHaptics" "${PODS_CONFIGURATION_BUILD_DIR}/EXPermissions" "${PODS_CONFIGURATION_BUILD_DIR}/EXWebBrowser" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/QBImagePickerController" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RSKImageCropper" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/UMCore" "${PODS_CONFIGURATION_BUILD_DIR}/UMReactNativeAdapter" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-document-picker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-orientation-locker" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-realm-path" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"EXAppLoaderProvider" -l"EXConstants" -l"EXFileSystem" -l"EXHaptics" -l"EXPermissions" -l"EXWebBrowser" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"QBImagePickerController" -l"RNDeviceInfo" -l"RNImageCropPicker" -l"RNLocalize" -l"RNScreens" -l"RSKImageCropper" -l"React" -l"UMCore" -l"UMReactNativeAdapter" -l"c++" -l"glog" -l"nanopb" -l"react-native-document-picker" -l"react-native-orientation-locker" -l"react-native-realm-path" -l"react-native-splash-screen" -l"react-native-webview" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "Photos" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
|
|
|
@ -1483,4 +1483,29 @@ redistribute it freely, subject to the following restrictions:
|
|||
3. This notice may not be removed or altered from any source
|
||||
distribution.
|
||||
|
||||
|
||||
## rn-extensions-share
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Ali Najafizadeh
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
Generated by CocoaPods - https://cocoapods.org
|
||||
|
|
|
@ -1627,6 +1627,37 @@ redistribute it freely, subject to the following restrictions:
|
|||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Ali Najafizadeh
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
</string>
|
||||
<key>License</key>
|
||||
<string>MIT</string>
|
||||
<key>Title</key>
|
||||
<string>rn-extensions-share</string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>Generated by CocoaPods - https://cocoapods.org</string>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Crashlytics/iOS" "${PODS_ROOT}/Fabric/iOS" "${PODS_ROOT}/FirebaseABTesting/Frameworks" "${PODS_ROOT}/FirebaseAnalytics/Frameworks" "${PODS_ROOT}/FirebasePerformance/Frameworks" "${PODS_ROOT}/FirebaseRemoteConfig/Frameworks" "${PODS_ROOT}/GoogleAppMeasurement/Frameworks"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 $(inherited) PB_FIELD_32BIT=1 PB_NO_PACKED_STRUCTS=1 PB_ENABLE_MALLOC=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"RNDeviceInfo" -l"RNLocalize" -l"React" -l"c++" -l"glog" -l"nanopb" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-realm-path" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/rn-extensions-share" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-realm-path" "${PODS_CONFIGURATION_BUILD_DIR}/rn-extensions-share" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"RNDeviceInfo" -l"RNLocalize" -l"React" -l"c++" -l"glog" -l"nanopb" -l"react-native-realm-path" -l"rn-extensions-share" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Crashlytics/iOS" "${PODS_ROOT}/Fabric/iOS" "${PODS_ROOT}/FirebaseABTesting/Frameworks" "${PODS_ROOT}/FirebaseAnalytics/Frameworks" "${PODS_ROOT}/FirebasePerformance/Frameworks" "${PODS_ROOT}/FirebaseRemoteConfig/Frameworks" "${PODS_ROOT}/GoogleAppMeasurement/Frameworks"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 $(inherited) PB_FIELD_32BIT=1 PB_NO_PACKED_STRUCTS=1 PB_ENABLE_MALLOC=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"RNDeviceInfo" -l"RNLocalize" -l"React" -l"c++" -l"glog" -l"nanopb" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/EXAppLoaderProvider" "${PODS_ROOT}/Headers/Public/EXConstants" "${PODS_ROOT}/Headers/Public/EXFileSystem" "${PODS_ROOT}/Headers/Public/EXHaptics" "${PODS_ROOT}/Headers/Public/EXPermissions" "${PODS_ROOT}/Headers/Public/EXWebBrowser" "${PODS_ROOT}/Headers/Public/Firebase" "${PODS_ROOT}/Headers/Public/FirebaseCore" "${PODS_ROOT}/Headers/Public/FirebaseInstanceID" "${PODS_ROOT}/Headers/Public/GTMSessionFetcher" "${PODS_ROOT}/Headers/Public/GoogleToolboxForMac" "${PODS_ROOT}/Headers/Public/GoogleUtilities" "${PODS_ROOT}/Headers/Public/Protobuf" "${PODS_ROOT}/Headers/Public/QBImagePickerController" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNLocalize" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RSKImageCropper" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/UMBarCodeScannerInterface" "${PODS_ROOT}/Headers/Public/UMCameraInterface" "${PODS_ROOT}/Headers/Public/UMConstantsInterface" "${PODS_ROOT}/Headers/Public/UMCore" "${PODS_ROOT}/Headers/Public/UMFaceDetectorInterface" "${PODS_ROOT}/Headers/Public/UMFileSystemInterface" "${PODS_ROOT}/Headers/Public/UMFontInterface" "${PODS_ROOT}/Headers/Public/UMImageLoaderInterface" "${PODS_ROOT}/Headers/Public/UMPermissionsInterface" "${PODS_ROOT}/Headers/Public/UMReactNativeAdapter" "${PODS_ROOT}/Headers/Public/UMSensorsInterface" "${PODS_ROOT}/Headers/Public/UMTaskManagerInterface" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/nanopb" "${PODS_ROOT}/Headers/Public/react-native-document-picker" "${PODS_ROOT}/Headers/Public/react-native-orientation-locker" "${PODS_ROOT}/Headers/Public/react-native-realm-path" "${PODS_ROOT}/Headers/Public/react-native-splash-screen" "${PODS_ROOT}/Headers/Public/react-native-webview" "${PODS_ROOT}/Headers/Public/rn-extensions-share" "${PODS_ROOT}/Headers/Public/yoga" $(inherited) ${PODS_ROOT}/Firebase/CoreOnly/Sources
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore" "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstanceID" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleToolboxForMac" "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNLocalize" "${PODS_CONFIGURATION_BUILD_DIR}/React" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/nanopb" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-realm-path" "${PODS_CONFIGURATION_BUILD_DIR}/rn-extensions-share" "${PODS_CONFIGURATION_BUILD_DIR}/yoga" "${PODS_ROOT}/GoogleIDFASupport/Libraries"
|
||||
OTHER_LDFLAGS = $(inherited) -ObjC -l"AdIdAccessLibrary" -l"DoubleConversion" -l"FirebaseCore" -l"FirebaseInstanceID" -l"Folly" -l"GTMSessionFetcher" -l"GoogleToolboxForMac" -l"GoogleUtilities" -l"Protobuf" -l"RNDeviceInfo" -l"RNLocalize" -l"React" -l"c++" -l"glog" -l"nanopb" -l"react-native-realm-path" -l"rn-extensions-share" -l"sqlite3" -l"stdc++" -l"yoga" -l"z" -framework "AdSupport" -framework "CoreTelephony" -framework "Crashlytics" -framework "FIRAnalyticsConnector" -framework "Fabric" -framework "FirebaseABTesting" -framework "FirebaseAnalytics" -framework "FirebaseCoreDiagnostics" -framework "FirebasePerformance" -framework "FirebaseRemoteConfig" -framework "Foundation" -framework "GoogleAppMeasurement" -framework "JavaScriptCore" -framework "QuartzCore" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration" -framework "UIKit"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
|
|
5
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path-dummy.m
generated
Normal file
5
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path-dummy.m
generated
Normal file
|
@ -0,0 +1,5 @@
|
|||
#import <Foundation/Foundation.h>
|
||||
@interface PodsDummy_react_native_realm_path : NSObject
|
||||
@end
|
||||
@implementation PodsDummy_react_native_realm_path
|
||||
@end
|
12
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path-prefix.pch
generated
Normal file
12
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path-prefix.pch
generated
Normal file
|
@ -0,0 +1,12 @@
|
|||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
9
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path.xcconfig
generated
Normal file
9
ios/Pods/Target Support Files/react-native-realm-path/react-native-realm-path.xcconfig
generated
Normal file
|
@ -0,0 +1,9 @@
|
|||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/react-native-realm-path
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/react-native-realm-path" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/react-native-realm-path" "${PODS_ROOT}/Headers/Public/yoga"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_ROOT = ${SRCROOT}
|
||||
PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/react-native-realm-path
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||
SKIP_INSTALL = YES
|
5
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share-dummy.m
generated
Normal file
5
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share-dummy.m
generated
Normal file
|
@ -0,0 +1,5 @@
|
|||
#import <Foundation/Foundation.h>
|
||||
@interface PodsDummy_rn_extensions_share : NSObject
|
||||
@end
|
||||
@implementation PodsDummy_rn_extensions_share
|
||||
@end
|
12
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share-prefix.pch
generated
Normal file
12
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share-prefix.pch
generated
Normal file
|
@ -0,0 +1,12 @@
|
|||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
9
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share.xcconfig
generated
Normal file
9
ios/Pods/Target Support Files/rn-extensions-share/rn-extensions-share.xcconfig
generated
Normal file
|
@ -0,0 +1,9 @@
|
|||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/rn-extensions-share
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/rn-extensions-share" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/React" "${PODS_ROOT}/Headers/Public/rn-extensions-share" "${PODS_ROOT}/Headers/Public/yoga"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_ROOT = ${SRCROOT}
|
||||
PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/rn-extensions-share
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||
SKIP_INSTALL = YES
|
|
@ -22,12 +22,9 @@
|
|||
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
|
||||
146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; };
|
||||
1E02221122B2F76B00001862 /* libRNUserDefaults.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E02220D22B2F76400001862 /* libRNUserDefaults.a */; };
|
||||
1E25743122CBA2BE005A877F /* libReactNativeShareExtension.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E25741F22CBA263005A877F /* libReactNativeShareExtension.a */; };
|
||||
1E25743222CBA2C2005A877F /* libRNRealmPath.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E25743022CBA2AD005A877F /* libRNRealmPath.a */; };
|
||||
1E25743322CBA2C7005A877F /* libRNUserDefaults.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E02220D22B2F76400001862 /* libRNUserDefaults.a */; };
|
||||
1E25743422CBA2CF005A877F /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7ACD4853222860DE00442C55 /* JavaScriptCore.framework */; };
|
||||
1E25743B22CBA301005A877F /* libRNFetchBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E25743A22CBA2F9005A877F /* libRNFetchBlob.a */; };
|
||||
1E25743C22CBA313005A877F /* (null) in Frameworks */ = {isa = PBXBuildFile; };
|
||||
1E25743D22CBA31B005A877F /* libRNNotifications.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7A8DEB5220ED0BDE00C5DCE4 /* libRNNotifications.a */; };
|
||||
1E25743E22CBA322005A877F /* libRNGestureHandler.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7AD44CF521518C610099D147 /* libRNGestureHandler.a */; };
|
||||
1E25743F22CBA32B005A877F /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; };
|
||||
|
@ -48,7 +45,6 @@
|
|||
1E25745022CBA39A005A877F /* libFastImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7A770EC220BECDC7001AD51A /* libFastImage.a */; };
|
||||
1E25745722CBA3E1005A877F /* libSplashScreen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E25745622CBA3DB005A877F /* libSplashScreen.a */; };
|
||||
1E25745822CBA3E6005A877F /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B8E79A911F3CCC6D005B464F /* libRNVectorIcons.a */; };
|
||||
1E25745922CBA3F1005A877F /* libRNRealmPath.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E25743022CBA2AD005A877F /* libRNRealmPath.a */; };
|
||||
1EC6ACB722CB9FC300A41C61 /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1EC6ACB522CB9FC300A41C61 /* MainInterface.storyboard */; };
|
||||
1EC6ACBB22CB9FC300A41C61 /* ShareRocketChatRN.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 1EC6ACB022CB9FC300A41C61 /* ShareRocketChatRN.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
||||
1EC6ACF622CBA01500A41C61 /* ShareRocketChatRN.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EC6ACF522CBA01500A41C61 /* ShareRocketChatRN.m */; };
|
||||
|
@ -570,7 +566,6 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
1E25745922CBA3F1005A877F /* libRNRealmPath.a in Frameworks */,
|
||||
1E02221122B2F76B00001862 /* libRNUserDefaults.a in Frameworks */,
|
||||
7ACD4897222860DE00442C55 /* JavaScriptCore.framework in Frameworks */,
|
||||
7A8DEB5A20ED0BEC00C5DCE4 /* libRNNotifications.a in Frameworks */,
|
||||
|
@ -625,12 +620,9 @@
|
|||
1E25743F22CBA32B005A877F /* libReact.a in Frameworks */,
|
||||
1E25743E22CBA322005A877F /* libRNGestureHandler.a in Frameworks */,
|
||||
1E25743D22CBA31B005A877F /* libRNNotifications.a in Frameworks */,
|
||||
1E25743C22CBA313005A877F /* (null) in Frameworks */,
|
||||
1E25743422CBA2CF005A877F /* JavaScriptCore.framework in Frameworks */,
|
||||
1E25743B22CBA301005A877F /* libRNFetchBlob.a in Frameworks */,
|
||||
1E25743322CBA2C7005A877F /* libRNUserDefaults.a in Frameworks */,
|
||||
1E25743222CBA2C2005A877F /* libRNRealmPath.a in Frameworks */,
|
||||
1E25743122CBA2BE005A877F /* libReactNativeShareExtension.a in Frameworks */,
|
||||
0BFA93B8E2ED67D4832E0C76 /* libPods-ShareRocketChatRN.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
|
@ -1930,7 +1922,7 @@
|
|||
$PODS_CONFIGURATION_BUILD_DIR/Firebase,
|
||||
);
|
||||
INFOPLIST_FILE = ShareRocketChatRN/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.2;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
|
@ -1938,7 +1930,7 @@
|
|||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "Development chat.rocket.reactnative.ShareExtension";
|
||||
SKIP_INSTALL = YES;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
|
@ -1978,14 +1970,14 @@
|
|||
$PODS_CONFIGURATION_BUILD_DIR/Firebase,
|
||||
);
|
||||
INFOPLIST_FILE = ShareRocketChatRN/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.2;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = chat.rocket.reactnative.ShareExtension;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "chat.rocket.reactnative.ShareExtension AppStore";
|
||||
SKIP_INSTALL = YES;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<key>CFBundlePackageType</key>
|
||||
<string>XPC!</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<string>1.17.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>NSAppTransportSecurity</key>
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
"react-native-orientation-locker": "^1.1.5",
|
||||
"react-native-picker-select": "^5.2.3",
|
||||
"react-native-platform-touchable": "^1.1.1",
|
||||
"react-native-realm-path": "^1.2.10",
|
||||
"react-native-realm-path": "^1.2.11",
|
||||
"react-native-responsive-ui": "^1.1.1",
|
||||
"react-native-screens": "^1.0.0-alpha.22",
|
||||
"react-native-scrollable-tab-view": "0.10.0",
|
||||
|
@ -82,7 +82,7 @@
|
|||
"redux-immutable-state-invariant": "^2.1.0",
|
||||
"redux-saga": "^0.16.2",
|
||||
"remove-markdown": "^0.3.0",
|
||||
"rn-extensions-share": "^2.3.7",
|
||||
"rn-extensions-share": "^2.3.10",
|
||||
"rn-fetch-blob": "^0.10.15",
|
||||
"rn-user-defaults": "^1.3.4",
|
||||
"semver": "6.0.0",
|
||||
|
|
16
yarn.lock
16
yarn.lock
|
@ -11686,10 +11686,10 @@ react-native-platform-touchable@^1.1.1:
|
|||
resolved "https://registry.yarnpkg.com/react-native-platform-touchable/-/react-native-platform-touchable-1.1.1.tgz#fde4acc65eea585d28b164d0c3716a42129a68e4"
|
||||
integrity sha1-/eSsxl7qWF0osWTQw3FqQhKaaOQ=
|
||||
|
||||
react-native-realm-path@^1.2.10:
|
||||
version "1.2.10"
|
||||
resolved "https://registry.yarnpkg.com/react-native-realm-path/-/react-native-realm-path-1.2.10.tgz#886493e334c62279bee631789172cfa7cfd6dc8d"
|
||||
integrity sha512-+FFjA+8fH2ubmAOeF+++4t+QG9qUEg4u3nvVN21zIMpkqj8TIuA0NZ5cdW5YZOx3hjFrYSxyCkq24Zu5QHv2Jw==
|
||||
react-native-realm-path@^1.2.11:
|
||||
version "1.2.11"
|
||||
resolved "https://registry.yarnpkg.com/react-native-realm-path/-/react-native-realm-path-1.2.11.tgz#5380add5b0975d9ccc185a1f680825d8bf23bc78"
|
||||
integrity sha512-kK8tPW14KwsmZUVb+mKXjbaQ/qBlYLUO5knZrOOSt4Xx0VZk+julJbEVUh+tD3g4xllGhrMrrnmQl3Gm0B/+eA==
|
||||
|
||||
react-native-responsive-ui@^1.1.1:
|
||||
version "1.1.1"
|
||||
|
@ -12629,10 +12629,10 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
|
|||
hash-base "^3.0.0"
|
||||
inherits "^2.0.1"
|
||||
|
||||
rn-extensions-share@^2.3.7:
|
||||
version "2.3.7"
|
||||
resolved "https://registry.yarnpkg.com/rn-extensions-share/-/rn-extensions-share-2.3.7.tgz#9f1387af25124c21e92854570cd088ed788b60ac"
|
||||
integrity sha512-8SP3HTKf9g+/4hm/ER+IcbpImaqsTny7WUNOC18Vvq5Js+2O9MAKaQB+gHSP7IC6JYsbOzh+cc2jNRfc0zJpOA==
|
||||
rn-extensions-share@^2.3.10:
|
||||
version "2.3.10"
|
||||
resolved "https://registry.yarnpkg.com/rn-extensions-share/-/rn-extensions-share-2.3.10.tgz#17b9cf101b325cfe4c150f4c2585ca1e78f965a5"
|
||||
integrity sha512-gff32w15VXnuKdGG9QfrysI+Cga4beSWT8xdp1DvVJ1HezJ7XsDR1ELj3Wajij5OlW31VAunO8g91HgUfplmSQ==
|
||||
|
||||
rn-fetch-blob@^0.10.15:
|
||||
version "0.10.15"
|
||||
|
|
Loading…
Reference in New Issue