Merge branch 'develop' into update.message-parser

This commit is contained in:
Gerzon Z 2021-10-01 11:10:30 -04:00
commit 9ddbef603c
6 changed files with 17 additions and 27 deletions

View File

@ -274,7 +274,7 @@ class MessageBox extends Component<IMessageBoxProps, IMessageBoxState> {
}
if (isMasterDetail && usedCannedResponse) {
this.onChangeText('');
this.onChangeText(usedCannedResponse);
}
this.unsubscribeFocus = navigation.addListener('focus', () => {

View File

@ -1040,7 +1040,7 @@ const RocketChat = {
}
return this.post('subscriptions.read', { rid: roomId });
},
getRoomMembers({ rid, allUsers, roomType, type, filter, skip = 0, limit = 10 }) {
async getRoomMembers({ rid, allUsers, roomType, type, filter, skip = 0, limit = 10 }) {
const serverVersion = reduxStore.getState().server.version;
if (compareServerVersion(serverVersion, '3.16.0', methods.greaterThanOrEqualTo)) {
const params = {
@ -1051,10 +1051,12 @@ const RocketChat = {
...(filter && { filter })
};
// RC 3.16.0
return this.sdk.get(`${this.roomTypeToApiType(roomType)}.members`, params);
const result = await this.sdk.get(`${this.roomTypeToApiType(roomType)}.members`, params);
return result?.members;
}
// RC 0.42.0
return this.methodCallWrapper('getUsersOfRoom', rid, allUsers, { skip, limit });
const result = await this.methodCallWrapper('getUsersOfRoom', rid, allUsers, { skip, limit });
return result?.records;
},
methodCallWrapper(method, ...params) {
const { API_Use_REST_For_DDP_Calls } = reduxStore.getState().settings;

View File

@ -1,6 +1,6 @@
import React, { useEffect, useState, useCallback } from 'react';
import PropTypes from 'prop-types';
import { FlatList, RefreshControl } from 'react-native';
import { FlatList } from 'react-native';
import { useSelector } from 'react-redux';
import { useSafeAreaInsets } from 'react-native-safe-area-context';
import { HeaderBackButton } from '@react-navigation/stack';
@ -50,7 +50,6 @@ const CannedResponsesListView = ({ navigation, route }) => {
const [cannedResponses, setCannedResponses] = useState([]);
const [cannedResponsesScopeName, setCannedResponsesScopeName] = useState([]);
const [departments, setDepartments] = useState([]);
const [refreshing, setRefreshing] = useState(false);
// states used by the filter in Header and Dropdown
const [isSearching, setIsSearching] = useState(false);
@ -304,17 +303,6 @@ const CannedResponsesListView = ({ navigation, route }) => {
);
};
const onRefresh = () => {
setRefreshing(true);
onChangeText('');
};
useEffect(() => {
if (refreshing) {
setRefreshing(false);
}
}, [cannedResponses]);
const renderContent = () => {
if (!cannedResponsesScopeName.length && !loading) {
return (
@ -341,13 +329,12 @@ const CannedResponsesListView = ({ navigation, route }) => {
/>
)}
keyExtractor={item => item._id || item.shortcut}
refreshControl={<RefreshControl refreshing={refreshing} onRefresh={onRefresh} tintColor={themes[theme].auxiliaryText} />}
ListHeaderComponent={renderFlatListHeader}
stickyHeaderIndices={[0]}
onEndReached={onEndReached}
onEndReachedThreshold={0.5}
ItemSeparatorComponent={List.Separator}
ListFooterComponent={loading && !refreshing ? <ActivityIndicator theme={theme} /> : null}
ListFooterComponent={loading ? <ActivityIndicator theme={theme} /> : null}
/>
);
};

View File

@ -75,6 +75,7 @@ class RoomActionsView extends React.Component {
const member = props.route.params?.member;
this.rid = props.route.params?.rid;
this.t = props.route.params?.t;
this.joined = props.route.params?.joined;
this.state = {
room: room || { rid: this.rid, t: this.t },
membersCount: 0,
@ -173,7 +174,7 @@ class RoomActionsView extends React.Component {
get isOmnichannelPreview() {
const { room } = this.state;
return room.t === 'l' && room.status === 'queued';
return room.t === 'l' && room.status === 'queued' && !this.joined;
}
onPressTouchable = item => {

View File

@ -434,7 +434,6 @@ class RoomMembersView extends React.Component {
fetchMembers = async () => {
const { rid, members, isLoading, allUsers, end, room, filtering } = this.state;
const { t } = room;
let newMembers;
if (isLoading || end) {
return;
}
@ -449,11 +448,10 @@ class RoomMembersView extends React.Component {
skip: members.length,
limit: PAGE_SIZE
});
newMembers = membersResult.members;
this.setState({
members: members.concat(newMembers || []),
members: members.concat(membersResult || []),
isLoading: false,
end: newMembers.length < PAGE_SIZE
end: membersResult?.length < PAGE_SIZE
});
this.setHeader();
} catch (e) {

View File

@ -433,7 +433,7 @@ class RoomView extends React.Component {
goRoomActionsView = screen => {
logEvent(events.ROOM_GO_RA);
const { room, member } = this.state;
const { room, member, joined } = this.state;
const { navigation, isMasterDetail } = this.props;
if (isMasterDetail) {
navigation.navigate('ModalStackNavigator', {
@ -443,7 +443,8 @@ class RoomView extends React.Component {
t: this.t,
room,
member,
showCloseModal: !!screen
showCloseModal: !!screen,
joined
}
});
} else {
@ -451,7 +452,8 @@ class RoomView extends React.Component {
rid: this.rid,
t: this.t,
room,
member
member,
joined
});
}
};