@ethora/chat-component-rn 26.7.8 → 26.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/CHANGELOG.md +0 -2
  2. package/lib/commonjs/assets/icons.js +2 -2
  3. package/lib/commonjs/assets/icons.js.map +1 -1
  4. package/lib/commonjs/components/MainComponents/ChatRoom.js +17 -8
  5. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  6. package/lib/commonjs/components/MainComponents/MediaMessage.js +8 -5
  7. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  8. package/lib/commonjs/components/MainComponents/MessageContainer.js +5 -1
  9. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  10. package/lib/commonjs/components/MainComponents/MessageList.js +2 -1
  11. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  12. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +1 -51
  13. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  14. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +51 -12
  15. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  16. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +12 -1
  17. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  18. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +13 -2
  19. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  20. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +13 -2
  21. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  22. package/lib/commonjs/components/styled/MessageImage.js +3 -1
  23. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  24. package/lib/commonjs/components/styled/UnsupportedType.js +14 -4
  25. package/lib/commonjs/components/styled/UnsupportedType.js.map +1 -1
  26. package/lib/commonjs/components/styled/VideoMessage.js +3 -1
  27. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  28. package/lib/commonjs/context/xmppProvider.js +46 -31
  29. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  30. package/lib/commonjs/helpers/createMessageFromXml.js +19 -1
  31. package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
  32. package/lib/commonjs/helpers/getDisplayFileName.js +79 -0
  33. package/lib/commonjs/helpers/getDisplayFileName.js.map +1 -0
  34. package/lib/commonjs/helpers/getServerReadTimestamp.js +125 -0
  35. package/lib/commonjs/helpers/getServerReadTimestamp.js.map +1 -0
  36. package/lib/commonjs/helpers/initXmppRooms.js +9 -7
  37. package/lib/commonjs/helpers/initXmppRooms.js.map +1 -1
  38. package/lib/commonjs/helpers/isOwnMessage.js +75 -0
  39. package/lib/commonjs/helpers/isOwnMessage.js.map +1 -0
  40. package/lib/commonjs/helpers/mimeToExtension.js +6 -14
  41. package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
  42. package/lib/commonjs/hooks/useChatRoomFocus.js +17 -8
  43. package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -1
  44. package/lib/commonjs/hooks/useChatWrapperInit.js +12 -7
  45. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  46. package/lib/commonjs/i18n/strings.js +0 -18
  47. package/lib/commonjs/i18n/strings.js.map +1 -1
  48. package/lib/commonjs/networking/api-requests/rooms.api.js +0 -13
  49. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  50. package/lib/commonjs/networking/stanzaHandlers.js +20 -2
  51. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  52. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +45 -11
  53. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  54. package/lib/commonjs/networking/xmppClient.js +36 -2
  55. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  56. package/lib/commonjs/roomStore/index.js +35 -2
  57. package/lib/commonjs/roomStore/index.js.map +1 -1
  58. package/lib/commonjs/roomStore/persistence.js +200 -11
  59. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  60. package/lib/commonjs/roomStore/roomsSlice.js +83 -6
  61. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  62. package/lib/module/assets/icons.js +1 -1
  63. package/lib/module/assets/icons.js.map +1 -1
  64. package/lib/module/components/MainComponents/ChatRoom.js +17 -8
  65. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  66. package/lib/module/components/MainComponents/MediaMessage.js +9 -6
  67. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  68. package/lib/module/components/MainComponents/MessageContainer.js +5 -1
  69. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  70. package/lib/module/components/MainComponents/MessageList.js +2 -1
  71. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  72. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +3 -53
  73. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  74. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +52 -13
  75. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  76. package/lib/module/components/RoomComponents/styled/LastMessageFile.js +12 -1
  77. package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  78. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +13 -2
  79. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  80. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +13 -2
  81. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  82. package/lib/module/components/styled/MessageImage.js +3 -1
  83. package/lib/module/components/styled/MessageImage.js.map +1 -1
  84. package/lib/module/components/styled/UnsupportedType.js +14 -4
  85. package/lib/module/components/styled/UnsupportedType.js.map +1 -1
  86. package/lib/module/components/styled/VideoMessage.js +3 -1
  87. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  88. package/lib/module/context/xmppProvider.js +47 -32
  89. package/lib/module/context/xmppProvider.js.map +1 -1
  90. package/lib/module/helpers/createMessageFromXml.js +19 -1
  91. package/lib/module/helpers/createMessageFromXml.js.map +1 -1
  92. package/lib/module/helpers/getDisplayFileName.js +73 -0
  93. package/lib/module/helpers/getDisplayFileName.js.map +1 -0
  94. package/lib/module/helpers/getServerReadTimestamp.js +120 -0
  95. package/lib/module/helpers/getServerReadTimestamp.js.map +1 -0
  96. package/lib/module/helpers/initXmppRooms.js +9 -7
  97. package/lib/module/helpers/initXmppRooms.js.map +1 -1
  98. package/lib/module/helpers/isOwnMessage.js +70 -0
  99. package/lib/module/helpers/isOwnMessage.js.map +1 -0
  100. package/lib/module/helpers/mimeToExtension.js +6 -13
  101. package/lib/module/helpers/mimeToExtension.js.map +1 -1
  102. package/lib/module/hooks/useChatRoomFocus.js +17 -8
  103. package/lib/module/hooks/useChatRoomFocus.js.map +1 -1
  104. package/lib/module/hooks/useChatWrapperInit.js +12 -7
  105. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  106. package/lib/module/i18n/strings.js +0 -18
  107. package/lib/module/i18n/strings.js.map +1 -1
  108. package/lib/module/networking/api-requests/rooms.api.js +0 -12
  109. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  110. package/lib/module/networking/stanzaHandlers.js +20 -2
  111. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  112. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +45 -11
  113. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  114. package/lib/module/networking/xmppClient.js +36 -2
  115. package/lib/module/networking/xmppClient.js.map +1 -1
  116. package/lib/module/roomStore/index.js +37 -4
  117. package/lib/module/roomStore/index.js.map +1 -1
  118. package/lib/module/roomStore/persistence.js +197 -11
  119. package/lib/module/roomStore/persistence.js.map +1 -1
  120. package/lib/module/roomStore/roomsSlice.js +83 -6
  121. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  122. package/lib/typescript/assets/icons.d.ts +0 -8
  123. package/lib/typescript/assets/icons.d.ts.map +1 -1
  124. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  125. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  126. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  127. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  128. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  129. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  130. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +1 -1
  131. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
  132. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +1 -1
  133. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
  134. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +1 -1
  135. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
  136. package/lib/typescript/components/styled/MessageImage.d.ts +6 -0
  137. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  138. package/lib/typescript/components/styled/UnsupportedType.d.ts.map +1 -1
  139. package/lib/typescript/components/styled/VideoMessage.d.ts +6 -0
  140. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  141. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  142. package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
  143. package/lib/typescript/helpers/getAvatarColor.d.ts +1 -1
  144. package/lib/typescript/helpers/getDisplayFileName.d.ts +49 -0
  145. package/lib/typescript/helpers/getDisplayFileName.d.ts.map +1 -0
  146. package/lib/typescript/helpers/getServerReadTimestamp.d.ts +69 -0
  147. package/lib/typescript/helpers/getServerReadTimestamp.d.ts.map +1 -0
  148. package/lib/typescript/helpers/initXmppRooms.d.ts.map +1 -1
  149. package/lib/typescript/helpers/isOwnMessage.d.ts +36 -0
  150. package/lib/typescript/helpers/isOwnMessage.d.ts.map +1 -0
  151. package/lib/typescript/helpers/mimeToExtension.d.ts +0 -15
  152. package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
  153. package/lib/typescript/hooks/useChatRoomFocus.d.ts +4 -1
  154. package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -1
  155. package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
  156. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  157. package/lib/typescript/networking/api-requests/rooms.api.d.ts +0 -1
  158. package/lib/typescript/networking/api-requests/rooms.api.d.ts.map +1 -1
  159. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  160. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +9 -2
  161. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
  162. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  163. package/lib/typescript/roomStore/index.d.ts.map +1 -1
  164. package/lib/typescript/roomStore/persistence.d.ts +18 -1
  165. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  166. package/lib/typescript/roomStore/roomsSlice.d.ts +13 -1
  167. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  168. package/lib/typescript/types/models/room.model.d.ts +0 -1
  169. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  170. package/lib/typescript/types/types.d.ts +0 -1
  171. package/lib/typescript/types/types.d.ts.map +1 -1
  172. package/package.json +1 -1
  173. package/src/assets/icons.tsx +0 -24
  174. package/src/components/MainComponents/ChatRoom.tsx +21 -10
  175. package/src/components/MainComponents/MediaMessage.tsx +8 -5
  176. package/src/components/MainComponents/MessageContainer.tsx +5 -1
  177. package/src/components/MainComponents/MessageList.tsx +2 -1
  178. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +2 -36
  179. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +63 -26
  180. package/src/components/RoomComponents/styled/LastMessageFile.tsx +14 -2
  181. package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +14 -2
  182. package/src/components/RoomComponents/styled/LastMessageVideo.tsx +14 -2
  183. package/src/components/styled/MessageImage.tsx +8 -1
  184. package/src/components/styled/UnsupportedType.tsx +14 -4
  185. package/src/components/styled/VideoMessage.tsx +8 -1
  186. package/src/context/xmppProvider.tsx +47 -24
  187. package/src/helpers/createMessageFromXml.ts +20 -1
  188. package/src/helpers/getDisplayFileName.ts +87 -0
  189. package/src/helpers/getServerReadTimestamp.ts +120 -0
  190. package/src/helpers/initXmppRooms.tsx +9 -9
  191. package/src/helpers/isOwnMessage.ts +90 -0
  192. package/src/helpers/mimeToExtension.ts +6 -22
  193. package/src/hooks/useChatRoomFocus.ts +14 -5
  194. package/src/hooks/useChatWrapperInit.ts +12 -7
  195. package/src/i18n/strings.ts +0 -18
  196. package/src/networking/api-requests/rooms.api.ts +0 -9
  197. package/src/networking/stanzaHandlers.ts +20 -6
  198. package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +65 -18
  199. package/src/networking/xmppClient.ts +41 -2
  200. package/src/roomStore/index.ts +40 -4
  201. package/src/roomStore/persistence.ts +197 -7
  202. package/src/roomStore/roomsSlice.ts +84 -6
  203. package/src/types/models/room.model.ts +0 -1
  204. package/src/types/types.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"room.model.d.ts","sourceRoot":"","sources":["../../../../src/types/models/room.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"room.model.d.ts","sourceRoot":"","sources":["../../../../src/types/models/room.model.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,6 @@ export interface IRoom {
28
28
  lastViewedTimestamp?: number;
29
29
  unreadMessages?: number;
30
30
  noMessages?: boolean;
31
- muted?: boolean;
32
31
  role?: string;
33
32
  createdAt?: string | number | Date;
34
33
  updatedAt?: string | number | Date;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ethora/chat-component-rn",
3
- "version": "26.7.8",
3
+ "version": "26.7.9",
4
4
  "description": "Drop-in XMPP chat component for React Native / Expo. <Chat config={...}/> and you're done.",
5
5
  "main": "index.js",
6
6
  "module": "lib/module/main.js",
@@ -457,30 +457,6 @@ export const BurgerMenuIcon = ({ color = '#fff', ...props }) => (
457
457
  </Svg>
458
458
  );
459
459
 
460
- export const BellIcon = ({ color = '#141414', ...props }) => (
461
- <Svg width="24" height="24" viewBox="0 0 24 24" fill="none" {...props}>
462
- <Path
463
- d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 0 1-3.46 0"
464
- stroke={color}
465
- strokeWidth="2"
466
- strokeLinecap="round"
467
- strokeLinejoin="round"
468
- />
469
- </Svg>
470
- );
471
-
472
- export const BellOffIcon = ({ color = '#141414', ...props }) => (
473
- <Svg width="24" height="24" viewBox="0 0 24 24" fill="none" {...props}>
474
- <Path
475
- d="M13.73 21a2 2 0 0 1-3.46 0M18.63 13A17.9 17.9 0 0 1 18 8M6.26 6.26A5.86 5.86 0 0 0 6 8c0 7-3 9-3 9h14M18 8a6 6 0 0 0-9.33-5M1 1l22 22"
476
- stroke={color}
477
- strokeWidth="2"
478
- strokeLinecap="round"
479
- strokeLinejoin="round"
480
- />
481
- </Svg>
482
- );
483
-
484
460
  export const LeaveIcon = ({ color = '#E53935', ...props }) => (
485
461
  <Svg width="24" height="24" viewBox="0 0 24 24" fill="none" {...props}>
486
462
  <Path
@@ -28,6 +28,7 @@ import { IConfig } from '../../types/models/config.model';
28
28
  import { useRoomInitialization } from '../../hooks/useRoomInitialization';
29
29
  import { useRoomState } from '../../hooks/useRoomState';
30
30
  import { useChatSettingState } from '../../hooks/useChatSettingState';
31
+ import { isOwnMessage } from '../../helpers/isOwnMessage';
31
32
  import CustomTypingIndicator from '../styled/StyledInputComponents/CustomTypingIndicator';
32
33
  // import {PanGestureHandler} from 'react-native-gesture-handler';
33
34
  import { FlatList } from 'react-native';
@@ -46,6 +47,7 @@ import {
46
47
  } from 'react-native-keyboard-controller';
47
48
  import useComposing from '../../hooks/useComposing';
48
49
  import { store } from '../../roomStore';
50
+ import { getServerReadTimestamp } from '../../helpers/getServerReadTimestamp';
49
51
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
50
52
  import {
51
53
  getInputDockPaddingBottom,
@@ -234,21 +236,30 @@ const ChatRoom: React.FC<ChatRoomProps> = React.memo(
234
236
  dispatch(setVisibleRoom({ roomJID: activeRoomJID }));
235
237
  setIsLoadingMore(false);
236
238
  return () => {
237
- const timestamp = readBoundaryRef.current ?? new Date().getTime();
238
- dispatch(
239
- setLastViewedTimestamp({
240
- chatJID: activeRoomJID,
241
- timestamp,
242
- }),
243
- );
239
+ const rooms = store.getState().rooms?.rooms;
240
+ const heapState = store.getState().roomHeapSlice;
241
+ // Fall back to the newest server-acked message, never the device
242
+ // clock: a fast device clock would write a future marker that the
243
+ // forward-only private-store merge could never correct (bug #38).
244
+ const timestamp =
245
+ readBoundaryRef.current ??
246
+ getServerReadTimestamp(rooms?.[activeRoomJID], heapState);
247
+ if (timestamp > 0) {
248
+ dispatch(
249
+ setLastViewedTimestamp({
250
+ chatJID: activeRoomJID,
251
+ timestamp,
252
+ }),
253
+ );
254
+ }
244
255
  dispatch(clearVisibleRoom());
245
256
  const liveClient = clientRef.current;
246
257
  if (liveClient) {
247
258
  liveClient
248
- .flushLastViewedToPrivateStoreStanza(store.getState().rooms?.rooms, {
259
+ .flushLastViewedToPrivateStoreStanza(rooms, {
249
260
  visibleRoomJID: activeRoomJID,
250
261
  // Carry the same boundary to the SERVER marker. Without
251
- // this the flush defaults to Date.now() for the visible
262
+ // this the flush defaults to "everything" for the visible
252
263
  // room, so messages the user never scrolled down to come
253
264
  // back as read on the next login — the local count was
254
265
  // right but the server overrode it.
@@ -440,7 +451,7 @@ const ChatRoom: React.FC<ChatRoomProps> = React.memo(
440
451
  CustomMessageComponent ? (
441
452
  <CustomMessageComponent
442
453
  message={decorated.message}
443
- isUser={decorated.message.user.id === user.xmppUsername}
454
+ isUser={isOwnMessage(decorated.message, user)}
444
455
  isReply={false}
445
456
  />
446
457
  ) : null
@@ -11,7 +11,8 @@ import {
11
11
  Text,
12
12
  View,
13
13
  } from 'react-native';
14
- import { deriveDisplayFilename, isLikelyAudio } from '../../helpers/mimeToExtension';
14
+ import { isLikelyAudio } from '../../helpers/mimeToExtension';
15
+ import { getDisplayFileName } from '../../helpers/getDisplayFileName';
15
16
  import { FileIcon, PlayIcon } from '../../assets/icons';
16
17
  import { defaultMediaDims } from '../../helpers/mediaDimensions';
17
18
  import { useChatSettingState } from '../../hooks/useChatSettingState';
@@ -148,11 +149,11 @@ const MediaMessage: React.FC<MediaMessageProps> = ({
148
149
  const messageText = appendFileToken(rawMessageText, fileToken);
149
150
 
150
151
  if (mimeType) {
151
- const displayName = deriveDisplayFilename({
152
- fileName: message?.fileName,
152
+ const displayName = getDisplayFileName({
153
153
  originalName: (message as any)?.originalName,
154
- url: rawLocation || rawMessageText,
155
- mime: mimeType,
154
+ fileName: message?.fileName,
155
+ location: rawLocation || rawMessageText,
156
+ mimetype: mimeType,
156
157
  });
157
158
  const isAudioPayload = isLikelyAudio(
158
159
  mimeType,
@@ -180,6 +181,7 @@ const MediaMessage: React.FC<MediaMessageProps> = ({
180
181
  return (
181
182
  <CustomMessageImage
182
183
  fileName={displayName}
184
+ originalName={(message as any)?.originalName}
183
185
  // Full-size original: opened by the preview modal.
184
186
  fileURL={location || messageText || ''}
185
187
  // ...and the thumbnail the bubble actually renders, which is
@@ -192,6 +194,7 @@ const MediaMessage: React.FC<MediaMessageProps> = ({
192
194
  return (
193
195
  <CustomMessageVideo
194
196
  fileName={displayName}
197
+ originalName={(message as any)?.originalName}
195
198
  fileURL={location || ''}
196
199
  // `messageText` is the message's locationPreview — the poster
197
200
  // frame the backend generated for this video. Handing it over
@@ -1,5 +1,6 @@
1
1
  import React, { FC, Fragment, useMemo } from 'react';
2
2
  import { IConfig, IMessage } from '../../types/types';
3
+ import { isOwnMessage } from '../../helpers/isOwnMessage';
3
4
  import DateLabel from '../styled/DateLabel';
4
5
  import SystemMessage from './SystemMessage';
5
6
  import NewMessageLabel from '../styled/NewMessageLabel';
@@ -46,7 +47,10 @@ export const MessageContainer: FC<MessageContainerProps> = ({
46
47
  isReply,
47
48
  className,
48
49
  }) => {
49
- const isUser = message.user.id === walletAddress;
50
+ // Bug #41: `message.user.id === walletAddress` used to treat two
51
+ // empty/undefined ids as a match, briefly rendering catch-up messages
52
+ // from other users as our own. isOwnMessage() never does that.
53
+ const isUser = isOwnMessage(message, walletAddress);
50
54
 
51
55
  const messageDate = new Date(message.date);
52
56
 
@@ -29,6 +29,7 @@ import { ArowDownIcon } from '../../assets/icons';
29
29
  import CustomTypingIndicator from '../styled/StyledInputComponents/CustomTypingIndicator';
30
30
  import { getIconColor } from '../../helpers/getIconColor';
31
31
  import { getChatBackgroundColor } from '../../helpers/getChatBackground';
32
+ import { isOwnMessage } from '../../helpers/isOwnMessage';
32
33
 
33
34
  interface MessageListProps<TMessage extends IMessage> {
34
35
  CustomMessage?: React.ComponentType<{
@@ -438,7 +439,7 @@ const MessageList = <TMessage extends IMessage>({
438
439
  {CustomMessage && (
439
440
  <CustomMessage
440
441
  message={activeMessage}
441
- isUser={activeMessage.user.id === user.walletAddress}
442
+ isUser={isOwnMessage(activeMessage, user)}
442
443
  isReply={isReply}
443
444
  />
444
445
  )}
@@ -26,8 +26,6 @@ import { deleteRoom, updateRoom } from '../../../roomStore/roomsSlice';
26
26
  import Loader from '../../styled/Loader';
27
27
  import {
28
28
  AddNewIcon,
29
- BellIcon,
30
- BellOffIcon,
31
29
  DeleteIcon,
32
30
  EditIcon,
33
31
  LeaveIcon,
@@ -38,7 +36,7 @@ import { useChatSettingState } from '../../../hooks/useChatSettingState';
38
36
  import { chatTextStyle } from '../../../helpers/typography';
39
37
  import { getElementFont } from '../../../helpers/getElementFont';
40
38
  import { getIconColor } from '../../../helpers/getIconColor';
41
- import { deleteRoomMember, setRoomMuted } from '../../../networking/api-requests/rooms.api';
39
+ import { deleteRoomMember } from '../../../networking/api-requests/rooms.api';
42
40
  import { RoomMember } from '../../../types/models/room.model';
43
41
  import { setActiveModal, setSelectedUser } from '../../../roomStore/chatSettingsSlice';
44
42
  import { MODAL_TYPES } from '../../../helpers/constants/MODAL_TYPES';
@@ -357,40 +355,8 @@ const ChatProfileModal: React.FC<ChatProfileModalProps> = ({
357
355
  return () => sub.remove();
358
356
  }, [isSearchOpen]); // eslint-disable-line react-hooks/exhaustive-deps
359
357
 
360
- const muteInFlightRef = useRef(false);
361
- const toggleMuted = async () => {
362
- if (!activeRoom?.jid || !activeRoom?.name || muteInFlightRef.current) {return;}
363
- const next = !activeRoom.muted;
364
- muteInFlightRef.current = true;
365
- dispatch(updateRoom({ jid: activeRoom.jid, updates: { muted: next } }));
366
- try {
367
- const confirmed = await setRoomMuted(activeRoom.name, next);
368
- if (confirmed !== next) {
369
- dispatch(updateRoom({ jid: activeRoom.jid, updates: { muted: confirmed } }));
370
- }
371
- } catch (error) {
372
- dispatch(updateRoom({ jid: activeRoom.jid, updates: { muted: !next } }));
373
- console.warn('[ethora-rn] mute toggle failed', error);
374
- showToast({
375
- id: Date.now().toString(),
376
- title: 'Error',
377
- message: t('toast.muteFailed'),
378
- type: 'error',
379
- });
380
- } finally {
381
- muteInFlightRef.current = false;
382
- }
383
- };
384
-
385
358
  const heroActions: HeroAction[] = useMemo(
386
359
  () => [
387
- {
388
- key: 'mute',
389
- label: activeRoom?.muted ? t('action.muted') : t('action.unmuted'),
390
- icon: (color: string) =>
391
- activeRoom?.muted ? <BellOffIcon color={color} /> : <BellIcon color={color} />,
392
- onPress: toggleMuted,
393
- },
394
360
  {
395
361
  key: 'search',
396
362
  label: t('action.search'),
@@ -410,7 +376,7 @@ const ChatProfileModal: React.FC<ChatProfileModalProps> = ({
410
376
  onPress: () => setIsReportOpen(true),
411
377
  },
412
378
  ],
413
- [t, activeRoom?.jid, activeRoom?.muted] // eslint-disable-line react-hooks/exhaustive-deps
379
+ [t, activeRoom?.jid] // eslint-disable-line react-hooks/exhaustive-deps
414
380
  );
415
381
 
416
382
  // "…" menu. Edit is the chat picture — the only chat detail this SDK can
@@ -31,7 +31,12 @@ import { useToast } from '../../../context/ToastContext';
31
31
  import PdfViewer from './PdfView';
32
32
  import DocumentViewer from './DocumentViewer';
33
33
  import AudioMessage from '../../styled/AudioMessage';
34
- import { ensureFilenameHasExtension, isLikelyAudio } from '../../../helpers/mimeToExtension';
34
+ import { isLikelyAudio } from '../../../helpers/mimeToExtension';
35
+ import {
36
+ getDisplayFileName,
37
+ getUniqueFileName,
38
+ sanitizeFileNameForPath,
39
+ } from '../../../helpers/getDisplayFileName';
35
40
 
36
41
  // MIME types Google's gview embed renders reliably. Everything else
37
42
  // falls through to the info-card so the user can still download.
@@ -128,6 +133,19 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
128
133
 
129
134
  if (!activeFile) {return null;}
130
135
 
136
+ // Bug #40: prefer the sender's original name over the server's stored
137
+ // hash name everywhere this modal shows or saves/shares the file.
138
+ // Sanitized so it's safe to use as an actual path segment (strips path
139
+ // separators/control chars) when writing to disk below.
140
+ const displayFileName = sanitizeFileNameForPath(
141
+ getDisplayFileName({
142
+ originalName: activeFile.originalName,
143
+ fileName: activeFile.fileName,
144
+ location: activeFile.fileURL,
145
+ mimetype: activeFile.mimetype,
146
+ })
147
+ );
148
+
131
149
  const requestStoragePermission = async () => {
132
150
  const MediaLibrary = getMediaLibrary();
133
151
  if (!MediaLibrary?.requestPermissionsAsync) {return false;}
@@ -151,12 +169,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
151
169
  }
152
170
 
153
171
  try {
154
- const fileName = ensureFilenameHasExtension(
155
- activeFile.fileName,
156
- activeFile.mimetype
157
- );
158
-
159
- const filePath = FileSystem.cacheDirectory + fileName;
172
+ const filePath = FileSystem.cacheDirectory + displayFileName;
160
173
  const download = await FileSystem.downloadAsync(withFileToken(activeFile.fileURL), filePath);
161
174
 
162
175
  if (download.status === 200) {
@@ -171,17 +184,39 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
171
184
  Alert.alert('Error', 'Failed to save the file.');
172
185
  }
173
186
  } catch (err) {
174
- Alert.alert('Error', `Failed to save the file: ${activeFile.fileName}`);
187
+ Alert.alert('Error', `Failed to save the file: ${displayFileName}`);
188
+ }
189
+ };
190
+
191
+ // Best-effort existing-name lookup for the Android SAF branch below: SAF
192
+ // hands back content URIs, not plain names, so this decodes each one and
193
+ // takes its last path segment. If the provider's URI shape doesn't match
194
+ // what we expect, we fail open (empty set) rather than block the save -
195
+ // worst case we skip de-duplication, we never crash the save flow.
196
+ const listSafDirectoryNames = async (
197
+ saf: any,
198
+ dirUri: string
199
+ ): Promise<Set<string>> => {
200
+ try {
201
+ const uris: string[] = await saf.readDirectoryAsync(dirUri);
202
+ const names = uris.map((uri) => {
203
+ try {
204
+ const decoded = decodeURIComponent(uri);
205
+ const last = decoded.split('/').pop() || '';
206
+ return last.includes(':') ? last.split(':').pop() || '' : last;
207
+ } catch {
208
+ return '';
209
+ }
210
+ });
211
+ return new Set(names.filter(Boolean));
212
+ } catch {
213
+ return new Set<string>();
175
214
  }
176
215
  };
177
216
 
178
217
  const saveFileToDownloads = async () => {
179
218
  try {
180
- const fileName = ensureFilenameHasExtension(
181
- activeFile.fileName,
182
- activeFile.mimetype
183
- );
184
- const filePath = FileSystem.cacheDirectory + fileName;
219
+ const filePath = FileSystem.cacheDirectory + displayFileName;
185
220
  const download = await FileSystem.downloadAsync(withFileToken(activeFile.fileURL), filePath);
186
221
 
187
222
  if (download.status !== 200) {
@@ -205,7 +240,16 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
205
240
  safDirUriRef.current = dirUri;
206
241
  }
207
242
 
208
- const baseName = fileName.replace(/\.[^/.]+$/, '');
243
+ // Avoid silently overwriting a different attachment that happens
244
+ // to share the same display name (common now that we prefer the
245
+ // human-picked name over the unique server hash - bug #40) by
246
+ // suffixing " (1)", " (2)", ... on a collision.
247
+ const existingNames = await listSafDirectoryNames(saf, dirUri as string);
248
+ const uniqueName = await getUniqueFileName(
249
+ displayFileName,
250
+ async (candidate) => existingNames.has(candidate)
251
+ );
252
+ const baseName = uniqueName.replace(/\.[^/.]+$/, '');
209
253
  const mime = activeFile.mimetype || 'application/octet-stream';
210
254
  const base64 = await FileSystem.readAsStringAsync(download.uri, {
211
255
  encoding: FileSystem.EncodingType.Base64,
@@ -232,7 +276,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
232
276
  // user may cancel), so we don't show a "Save successful" toast here.
233
277
  await Share.share({
234
278
  url: download.uri,
235
- title: fileName,
279
+ title: displayFileName,
236
280
  });
237
281
  } catch (err) {
238
282
  console.error('Error saving file:', err);
@@ -279,7 +323,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
279
323
  'https://as2.ftcdn.net/v2/jpg/02/51/95/53/1000_F_251955356_FAQH0U1y1TZw3ZcdPGybwUkH90a3VAhb.jpg',
280
324
  }}
281
325
  resizeMode="contain"
282
- accessibilityLabel={activeFile.fileName}
326
+ accessibilityLabel={displayFileName}
283
327
  />
284
328
  );
285
329
  case activeFile.mimetype.startsWith('video/'):
@@ -333,10 +377,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
333
377
  }}
334
378
  >
335
379
  <Text style={{ fontSize: 16, fontWeight: '600' }}>
336
- {ensureFilenameHasExtension(
337
- activeFile.originalName || activeFile.fileName,
338
- activeFile.mimetype
339
- )}
380
+ {displayFileName}
340
381
  </Text>
341
382
  <AudioMessage
342
383
  src={withFileToken(activeFile.fileURL)}
@@ -351,10 +392,6 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
351
392
  case activeFile.mimetype === 'application/pdf':
352
393
  return <PdfViewer pdfUrl={withFileToken(activeFile.fileURL)} />;
353
394
  default: {
354
- const displayName = ensureFilenameHasExtension(
355
- activeFile.fileName,
356
- activeFile.mimetype
357
- );
358
395
  // Office docs (.docx / .xlsx / .pptx / .doc / .xls / .ppt /
359
396
  // .txt / .csv / .rtf) → render inline via Google's gview embed
360
397
  // — fixes the "blank preview" complaint for docs (bug #9).
@@ -362,7 +399,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
362
399
  return (
363
400
  <DocumentViewer
364
401
  url={activeFile.fileURL}
365
- fileName={displayName}
402
+ fileName={displayFileName}
366
403
  />
367
404
  );
368
405
  }
@@ -379,7 +416,7 @@ const FilePreviewModal: React.FC<FilePreviewModalProps> = ({
379
416
  }}
380
417
  >
381
418
  <Text style={{ fontSize: 16, fontWeight: '600' }}>
382
- {displayName}
419
+ {displayFileName}
383
420
  </Text>
384
421
  <Text style={{ color: '#666' }}>
385
422
  {activeFile.mimetype || 'unknown type'}
@@ -14,9 +14,13 @@ import {
14
14
  isSecureFileUrl,
15
15
  requestFileTokenRecovery,
16
16
  } from '../../../helpers/secureFileUrl';
17
+ import { getDisplayFileName } from '../../../helpers/getDisplayFileName';
17
18
 
18
19
  interface LastMessageFileProps
19
- extends Pick<LastMessage, 'user' | 'originalName' | 'locationPreview'> {}
20
+ extends Pick<
21
+ LastMessage,
22
+ 'user' | 'originalName' | 'fileName' | 'mimetype' | 'locationPreview'
23
+ > {}
20
24
 
21
25
  const fallbackImage =
22
26
  'https://as2.ftcdn.net/v2/jpg/02/51/95/53/1000_F_251955356_FAQH0U1y1TZw3ZcdPGybwUkH90a3VAhb.jpg';
@@ -24,10 +28,18 @@ const fallbackImage =
24
28
  const LastMessageFile: FC<LastMessageFileProps> = ({
25
29
  user,
26
30
  originalName,
31
+ fileName,
32
+ mimetype,
27
33
  locationPreview,
28
34
  }) => {
29
35
  const [imgSrc, setImgSrc] = useState(locationPreview);
30
36
  const fileToken = useFileToken();
37
+ // Bug #40: prefer the sender's original name over the stored hash
38
+ // name; only fall back to the generic "file" label when neither is
39
+ // present at all (avoids a synthetic "media_<timestamp>.bin" here).
40
+ const displayName = originalName || fileName
41
+ ? getDisplayFileName({ originalName, fileName, mimetype })
42
+ : 'file';
31
43
 
32
44
  return (
33
45
  <LastRoomMessageContainer>
@@ -57,7 +69,7 @@ const LastMessageFile: FC<LastMessageFileProps> = ({
57
69
  ) : (
58
70
  <FileIcon style={{ width: '20px', height: '20px' }} />
59
71
  )}
60
- <LastRoomMessageText>{originalName || 'file'}</LastRoomMessageText>
72
+ <LastRoomMessageText>{displayName}</LastRoomMessageText>
61
73
  </View>
62
74
  </LastRoomMessageContainer>
63
75
  );
@@ -11,6 +11,7 @@ import {
11
11
  ShadeWrapper,
12
12
  } from './StyledRoomComponents';
13
13
  import { View } from 'react-native';
14
+ import { getDisplayFileName } from '../../../helpers/getDisplayFileName';
14
15
 
15
16
  const PhotoContainer = styled.View`
16
17
  position: relative;
@@ -25,14 +26,25 @@ const PhotoContainer = styled.View`
25
26
  `;
26
27
 
27
28
  interface LastMessagePhotoProps
28
- extends Pick<LastMessage, 'user' | 'originalName' | 'locationPreview'> {}
29
+ extends Pick<
30
+ LastMessage,
31
+ 'user' | 'originalName' | 'fileName' | 'mimetype' | 'locationPreview'
32
+ > {}
29
33
 
30
34
  const LastMessagePhoto: FC<LastMessagePhotoProps> = ({
31
35
  user,
32
36
  locationPreview,
33
37
  originalName,
38
+ fileName,
39
+ mimetype,
34
40
  }) => {
35
41
  const fileToken = useFileToken();
42
+ // Bug #40: prefer the sender's original name over the stored hash
43
+ // name; only fall back to the generic "file" label when neither is
44
+ // present at all (avoids a synthetic "media_<timestamp>.bin" here).
45
+ const displayName = originalName || fileName
46
+ ? getDisplayFileName({ originalName, fileName, mimetype })
47
+ : 'file';
36
48
  return (
37
49
  <LastRoomMessageContainer>
38
50
  <LastRoomMessageName>{user?.name || ''}:</LastRoomMessageName>
@@ -48,7 +60,7 @@ const LastMessagePhoto: FC<LastMessagePhotoProps> = ({
48
60
  <LastMessageImg src={appendFileToken(locationPreview, fileToken)} />
49
61
  </ShadeWrapper>
50
62
  </PhotoContainer>
51
- <LastRoomMessageText>{originalName || 'file'}</LastRoomMessageText>
63
+ <LastRoomMessageText>{displayName}</LastRoomMessageText>
52
64
  </View>
53
65
  </LastRoomMessageContainer>
54
66
  );