Skip to content

Commit 9191d47

Browse files
authored
chore: Merge 4.49.0 into master (#5684)
2 parents a4a9456 + a035211 commit 9191d47

42 files changed

Lines changed: 292 additions & 430 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

__tests__/containers/message/__snapshots__/Message.stories.storyshot

Lines changed: 2 additions & 0 deletions
Large diffs are not rendered by default.

android/app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ android {
147147
minSdkVersion rootProject.ext.minSdkVersion
148148
targetSdkVersion rootProject.ext.targetSdkVersion
149149
versionCode VERSIONCODE as Integer
150-
versionName "4.48.0"
150+
versionName "4.49.0"
151151
vectorDrawables.useSupportLibrary = true
152152
if (!isFoss) {
153153
manifestPlaceholders = [BugsnagAPIKey: BugsnagAPIKey as String]

android/app/src/main/java/chat/rocket/reactnative/networking/SSLPinningModule.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,6 @@
3232
import java.util.Arrays;
3333
import java.util.concurrent.TimeUnit;
3434

35-
import com.RNFetchBlob.RNFetchBlob;
36-
3735
import com.reactnativecommunity.webview.RNCWebViewManager;
3836

3937
import com.dylanvann.fastimage.FastImageOkHttpUrlLoader;
@@ -104,8 +102,6 @@ public void setCertificate(String data, Promise promise) {
104102
WebSocketModule.setCustomClientBuilder(new CustomClient());
105103
// Image networking react-native layer
106104
ReactOkHttpNetworkFetcher.setOkHttpClient(getOkHttpClient());
107-
// RNFetchBlob networking layer
108-
RNFetchBlob.applyCustomOkHttpClient(getOkHttpClient());
109105
// RNCWebView onReceivedClientCertRequest
110106
RNCWebViewManager.setCertificateAlias(data);
111107
// FastImage Glide network layer

app/containers/MessageComposer/hooks/useChooseMedia.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ export const useChooseMedia = ({
136136
// FIXME: use useNavigation
137137
Navigation.navigate('ShareView', {
138138
room,
139-
thread,
139+
thread: thread || tmid,
140140
attachments,
141141
action,
142142
finishShareView,

app/containers/Toast.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@ const styles = StyleSheet.create({
1313
},
1414
text: {
1515
fontSize: 14,
16-
...sharedStyles.textRegular,
17-
...sharedStyles.textAlignCenter
16+
// jest error: TypeError: Cannot read property 'textRegular' of undefined
17+
...sharedStyles?.textRegular,
18+
...sharedStyles?.textAlignCenter
1819
}
1920
});
2021

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import React from 'react';
2+
3+
import { CustomIcon } from '../../../CustomIcon';
4+
import styles from '../../styles';
5+
6+
const Pinned = ({ pinned, testID }: { pinned?: boolean; testID?: string }): React.ReactElement | null => {
7+
if (pinned) return <CustomIcon testID={testID} name='pin' size={16} style={styles.rightIcons} />;
8+
return null;
9+
};
10+
11+
export default Pinned;

app/containers/message/Components/RightIcons/index.tsx

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import React from 'react';
22
import { StyleSheet, View } from 'react-native';
33

4-
import Encrypted from './Encrypted';
4+
import { MessageType } from '../../../../definitions';
55
import Edited from './Edited';
6+
import Encrypted from './Encrypted';
67
import MessageError from './MessageError';
8+
import Pinned from './Pinned';
79
import ReadReceipt from './ReadReceipt';
810
import Translated from './Translated';
9-
import { MessageType } from '../../../../definitions';
1011

1112
const styles = StyleSheet.create({
1213
actionIcons: {
@@ -22,10 +23,21 @@ interface IRightIcons {
2223
unread?: boolean;
2324
hasError: boolean;
2425
isTranslated: boolean;
26+
pinned?: boolean;
2527
}
2628

27-
const RightIcons = ({ type, msg, isEdited, hasError, isReadReceiptEnabled, unread, isTranslated }: IRightIcons) => (
29+
const RightIcons = ({
30+
type,
31+
msg,
32+
isEdited,
33+
hasError,
34+
isReadReceiptEnabled,
35+
unread,
36+
isTranslated,
37+
pinned
38+
}: IRightIcons): React.ReactElement => (
2839
<View style={styles.actionIcons}>
40+
<Pinned pinned={pinned} testID={`${msg}-pinned`} />
2941
<Encrypted type={type} />
3042
<Edited testID={`${msg}-edited`} isEdited={isEdited} />
3143
<MessageError hasError={hasError} />

app/containers/message/Message.stories.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,13 @@ export const Edited = () => (
127127
</>
128128
);
129129

130+
export const Pinned = () => (
131+
<>
132+
<Message msg='Message header' pinned />
133+
<Message msg='Message without header' pinned isHeader={false} />
134+
</>
135+
);
136+
130137
export const Translated = () => (
131138
<>
132139
<Message msg='Message header' isTranslated />

app/containers/message/Message.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ const Message = React.memo((props: IMessage) => {
117117
hasError={props.hasError}
118118
isReadReceiptEnabled={props.isReadReceiptEnabled}
119119
unread={props.unread}
120+
pinned={props.pinned}
120121
isTranslated={props.isTranslated}
121122
/>
122123
) : null}

app/containers/message/Reply.tsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1+
import { dequal } from 'dequal';
2+
import moment from 'moment';
13
import React, { useContext, useState } from 'react';
24
import { StyleSheet, Text, View } from 'react-native';
3-
import moment from 'moment';
4-
import { dequal } from 'dequal';
55
import FastImage from 'react-native-fast-image';
66

7-
import Touchable from './Touchable';
8-
import Markdown from '../markdown';
7+
import { IAttachment, TGetCustomEmoji } from '../../definitions';
8+
import { themes } from '../../lib/constants';
9+
import { fileDownloadAndPreview } from '../../lib/methods/helpers';
10+
import { formatAttachmentUrl } from '../../lib/methods/helpers/formatAttachmentUrl';
911
import openLink from '../../lib/methods/helpers/openLink';
12+
import { TSupportedThemes, useTheme } from '../../theme';
1013
import sharedStyles from '../../views/Styles';
11-
import { themes } from '../../lib/constants';
12-
import MessageContext from './Context';
13-
import { fileDownloadAndPreview } from './helpers/fileDownload';
14-
import { IAttachment, TGetCustomEmoji } from '../../definitions';
1514
import RCActivityIndicator from '../ActivityIndicator';
15+
import Markdown from '../markdown';
1616
import Attachments from './Attachments';
17-
import { TSupportedThemes, useTheme } from '../../theme';
18-
import { formatAttachmentUrl } from '../../lib/methods/helpers/formatAttachmentUrl';
17+
import MessageContext from './Context';
18+
import Touchable from './Touchable';
1919
import messageStyles from './styles';
2020

2121
const styles = StyleSheet.create({

0 commit comments

Comments
 (0)