@ethora/chat-component-rn 26.7.5 → 26.7.6
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.
- package/CHANGELOG.md +59 -0
- package/README.md +31 -8
- package/lib/commonjs/assets/icons.js +7 -2
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/Header/HeaderRoomList.js +26 -7
- package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js +5 -2
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +36 -14
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageList.js +7 -23
- package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js +14 -13
- package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
- package/lib/commonjs/components/MainComponents/RoomList.js +208 -35
- package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +317 -98
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +320 -110
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +552 -213
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +226 -0
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +6 -2
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/Modals/Modal/Modal.js +8 -0
- package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js +2 -1
- package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +202 -104
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
- package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js +556 -0
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js +210 -0
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
- package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
- package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js +7 -21
- package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +507 -244
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +74 -46
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/commonjs/components/Modals/styledModalComponents.js +9 -2
- package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +17 -7
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/commonjs/components/styled/SendInput.js +80 -11
- package/lib/commonjs/components/styled/SendInput.js.map +1 -1
- package/lib/commonjs/components/styled/StyledComponents.js +9 -3
- package/lib/commonjs/components/styled/StyledComponents.js.map +1 -1
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +23 -38
- package/lib/commonjs/context/xmppProvider.js.map +1 -1
- package/lib/commonjs/helpers/getChatBackground.js +23 -0
- package/lib/commonjs/helpers/getChatBackground.js.map +1 -0
- package/lib/commonjs/helpers/mediaLibraryRuntime.js +31 -0
- package/lib/commonjs/helpers/mediaLibraryRuntime.js.map +1 -0
- package/lib/commonjs/helpers/pickImageAsset.js +68 -0
- package/lib/commonjs/helpers/pickImageAsset.js.map +1 -0
- package/lib/commonjs/helpers/sheetGestures.js +32 -0
- package/lib/commonjs/helpers/sheetGestures.js.map +1 -0
- package/lib/commonjs/helpers/updateMessagesTillLast.js +12 -40
- package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
- package/lib/commonjs/hooks/useChatRoomFocus.js +3 -9
- package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -1
- package/lib/commonjs/hooks/useLogout.js +0 -5
- package/lib/commonjs/hooks/useLogout.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +23 -50
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/i18n/strings.js +121 -1
- package/lib/commonjs/i18n/strings.js.map +1 -1
- package/lib/commonjs/main.js +6 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/user.api.js +59 -0
- package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
- package/lib/commonjs/networking/authRefresh.js +12 -2
- package/lib/commonjs/networking/authRefresh.js.map +1 -1
- package/lib/commonjs/networking/outboundQueue.js +0 -18
- package/lib/commonjs/networking/outboundQueue.js.map +1 -1
- package/lib/commonjs/networking/stanzaHandlers.js +1 -10
- package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +8 -1
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmppClient.js +7 -107
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/chatSettingsSlice.js +3 -1
- package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/commonjs/roomStore/roomsSlice.js +3 -22
- package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
- package/lib/module/assets/icons.js +6 -1
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/Header/HeaderRoomList.js +26 -7
- package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
- package/lib/module/components/MainComponents/ChatHeader.js +5 -2
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +36 -14
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/MessageList.js +8 -24
- package/lib/module/components/MainComponents/MessageList.js.map +1 -1
- package/lib/module/components/MainComponents/ProfileImagePlaceholder.js +14 -13
- package/lib/module/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
- package/lib/module/components/MainComponents/RoomList.js +207 -35
- package/lib/module/components/MainComponents/RoomList.js.map +1 -1
- package/lib/module/components/Menu/HeaderRoomListMenu.js +319 -101
- package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js +311 -113
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +555 -217
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +223 -0
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +6 -2
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/Modals/Modal/Modal.js +9 -1
- package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/ModalContent.js +2 -1
- package/lib/module/components/Modals/NewChatModal/ModalContent.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js +205 -106
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
- package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
- package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js +548 -0
- package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
- package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js +205 -0
- package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
- package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
- package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/EditUserModal.js +9 -23
- package/lib/module/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +509 -248
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +76 -48
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/module/components/Modals/styledModalComponents.js +9 -2
- package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js +17 -7
- package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/module/components/styled/SendInput.js +81 -12
- package/lib/module/components/styled/SendInput.js.map +1 -1
- package/lib/module/components/styled/StyledComponents.js +9 -3
- package/lib/module/components/styled/StyledComponents.js.map +1 -1
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/module/context/xmppProvider.js +23 -38
- package/lib/module/context/xmppProvider.js.map +1 -1
- package/lib/module/helpers/getChatBackground.js +18 -0
- package/lib/module/helpers/getChatBackground.js.map +1 -0
- package/lib/module/helpers/mediaLibraryRuntime.js +25 -0
- package/lib/module/helpers/mediaLibraryRuntime.js.map +1 -0
- package/lib/module/helpers/pickImageAsset.js +63 -0
- package/lib/module/helpers/pickImageAsset.js.map +1 -0
- package/lib/module/helpers/sheetGestures.js +26 -0
- package/lib/module/helpers/sheetGestures.js.map +1 -0
- package/lib/module/helpers/updateMessagesTillLast.js +13 -41
- package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
- package/lib/module/hooks/useChatRoomFocus.js +3 -9
- package/lib/module/hooks/useChatRoomFocus.js.map +1 -1
- package/lib/module/hooks/useLogout.js +0 -5
- package/lib/module/hooks/useLogout.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +24 -51
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/i18n/strings.js +121 -1
- package/lib/module/i18n/strings.js.map +1 -1
- package/lib/module/main.js +1 -1
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/user.api.js +56 -0
- package/lib/module/networking/api-requests/user.api.js.map +1 -1
- package/lib/module/networking/authRefresh.js +12 -2
- package/lib/module/networking/authRefresh.js.map +1 -1
- package/lib/module/networking/outboundQueue.js +0 -17
- package/lib/module/networking/outboundQueue.js.map +1 -1
- package/lib/module/networking/stanzaHandlers.js +1 -10
- package/lib/module/networking/stanzaHandlers.js.map +1 -1
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +8 -1
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/module/networking/xmppClient.js +7 -107
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/chatSettingsSlice.js +3 -1
- package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/module/roomStore/roomsSlice.js +2 -20
- package/lib/module/roomStore/roomsSlice.js.map +1 -1
- package/lib/typescript/assets/icons.d.ts +16 -0
- package/lib/typescript/assets/icons.d.ts.map +1 -1
- package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ProfileImagePlaceholder.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/RoomList.d.ts +7 -0
- package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts +3 -0
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
- package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts +9 -0
- package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts +10 -0
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts +9 -0
- package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts.map +1 -0
- package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts +4 -2
- package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts +1 -1
- package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/UpdNewChatModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts +75 -0
- package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts.map +1 -0
- package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts +25 -0
- package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts.map +1 -0
- package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts +6 -1
- package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/EditUserModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts +16 -0
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts +1 -0
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
- package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
- package/lib/typescript/helpers/getChatBackground.d.ts +15 -0
- package/lib/typescript/helpers/getChatBackground.d.ts.map +1 -0
- package/lib/typescript/helpers/mediaLibraryRuntime.d.ts +3 -0
- package/lib/typescript/helpers/mediaLibraryRuntime.d.ts.map +1 -0
- package/lib/typescript/helpers/pickImageAsset.d.ts +27 -0
- package/lib/typescript/helpers/pickImageAsset.d.ts.map +1 -0
- package/lib/typescript/helpers/sheetGestures.d.ts +20 -0
- package/lib/typescript/helpers/sheetGestures.d.ts.map +1 -0
- package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
- package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -1
- package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
- package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/i18n/strings.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +1 -1
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/user.api.d.ts +27 -0
- package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
- package/lib/typescript/networking/authRefresh.d.ts +4 -1
- package/lib/typescript/networking/authRefresh.d.ts.map +1 -1
- package/lib/typescript/networking/outboundQueue.d.ts +0 -16
- package/lib/typescript/networking/outboundQueue.d.ts.map +1 -1
- package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmppClient.d.ts +1 -33
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts +1 -18
- package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
- package/lib/typescript/types/models/room.model.d.ts +0 -15
- package/lib/typescript/types/models/room.model.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +30 -20
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/package.json +6 -1
- package/src/assets/icons.tsx +48 -9
- package/src/components/Header/HeaderRoomList.tsx +24 -6
- package/src/components/MainComponents/ChatHeader.tsx +5 -2
- package/src/components/MainComponents/ChatRoom.tsx +38 -20
- package/src/components/MainComponents/MessageList.tsx +8 -24
- package/src/components/MainComponents/ProfileImagePlaceholder.tsx +21 -14
- package/src/components/MainComponents/RoomList.tsx +236 -39
- package/src/components/Menu/HeaderRoomListMenu.tsx +328 -75
- package/src/components/Modals/AttachSheet/AttachSheet.tsx +331 -97
- package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +598 -279
- package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +244 -0
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +4 -2
- package/src/components/Modals/Modal/Modal.tsx +7 -0
- package/src/components/Modals/NewChatModal/ModalContent.tsx +6 -3
- package/src/components/Modals/NewChatModal/NewChatModal.tsx +219 -117
- package/src/components/Modals/NewChatModal/UpdNewChatModal.tsx +12 -1
- package/src/components/Modals/ProfileHeader/ProfileHeader.tsx +615 -0
- package/src/components/Modals/ProfileHeader/ProfileMenu.tsx +217 -0
- package/src/components/Modals/SelectUsersModal/SelectUsersModal.tsx +14 -4
- package/src/components/Modals/UserProfileModal/EditUserModal.tsx +9 -25
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +617 -307
- package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +75 -58
- package/src/components/Modals/styledModalComponents.tsx +9 -2
- package/src/components/RoomComponents/ChatRoomItem.tsx +14 -7
- package/src/components/styled/SendInput.tsx +83 -12
- package/src/components/styled/StyledComponents.ts +9 -3
- package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +11 -4
- package/src/context/xmppProvider.tsx +27 -46
- package/src/helpers/getChatBackground.ts +18 -0
- package/src/helpers/mediaLibraryRuntime.ts +25 -0
- package/src/helpers/pickImageAsset.ts +68 -0
- package/src/helpers/sheetGestures.ts +25 -0
- package/src/helpers/updateMessagesTillLast.tsx +17 -42
- package/src/hooks/useChatRoomFocus.ts +3 -11
- package/src/hooks/useLogout.tsx +0 -7
- package/src/hooks/useSendMessage.tsx +24 -60
- package/src/i18n/strings.ts +121 -1
- package/src/main.ts +1 -1
- package/src/networking/api-requests/user.api.ts +71 -0
- package/src/networking/authRefresh.ts +25 -4
- package/src/networking/outboundQueue.ts +0 -29
- package/src/networking/stanzaHandlers.ts +1 -9
- package/src/networking/xmpp/presenceInRoom.xmpp.ts +6 -1
- package/src/networking/xmppClient.ts +7 -118
- package/src/roomStore/chatSettingsSlice.ts +3 -1
- package/src/roomStore/roomsSlice.ts +2 -20
- package/src/types/models/room.model.ts +0 -15
- package/src/types/types.ts +32 -20
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
|
-
var _reactRedux = require("react-redux");
|
|
10
9
|
var _roomsSlice = require("../../roomStore/roomsSlice");
|
|
11
10
|
var _Composing = _interopRequireDefault(require("../styled/StyledInputComponents/Composing"));
|
|
12
11
|
var _TreadLabel = _interopRequireDefault(require("../styled/TreadLabel"));
|
|
@@ -16,6 +15,7 @@ var _Loader = _interopRequireDefault(require("../styled/Loader"));
|
|
|
16
15
|
var _icons = require("../../assets/icons");
|
|
17
16
|
var _CustomTypingIndicator = _interopRequireDefault(require("../styled/StyledInputComponents/CustomTypingIndicator"));
|
|
18
17
|
var _getIconColor = require("../../helpers/getIconColor");
|
|
18
|
+
var _getChatBackground = require("../../helpers/getChatBackground");
|
|
19
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
21
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
@@ -34,7 +34,6 @@ const MessageList = ({
|
|
|
34
34
|
activeMessage,
|
|
35
35
|
onReadBoundaryChange
|
|
36
36
|
}) => {
|
|
37
|
-
const dispatch = (0, _reactRedux.useDispatch)();
|
|
38
37
|
const {
|
|
39
38
|
composing,
|
|
40
39
|
messages,
|
|
@@ -61,21 +60,6 @@ const MessageList = ({
|
|
|
61
60
|
const isUserAtBottomRef = (0, _react.useRef)(true);
|
|
62
61
|
const hasUserScrolledRef = (0, _react.useRef)(false);
|
|
63
62
|
const flatListRef = (0, _react.useRef)(null);
|
|
64
|
-
|
|
65
|
-
// Single writer for the read boundary. Publishes to the store (so the
|
|
66
|
-
// out-of-component paths that mark a room read — AppState background,
|
|
67
|
-
// the `isVisible` signal, the visible-room auto-advance, focus hooks,
|
|
68
|
-
// logout — can stamp what the user actually saw) AND to the optional
|
|
69
|
-
// host callback. Customer-reported #33.
|
|
70
|
-
const reportReadBoundary = (0, _react.useCallback)(boundaryTs => {
|
|
71
|
-
if (roomJID) {
|
|
72
|
-
dispatch((0, _roomsSlice.setReadBoundary)({
|
|
73
|
-
chatJID: roomJID,
|
|
74
|
-
boundaryTs
|
|
75
|
-
}));
|
|
76
|
-
}
|
|
77
|
-
onReadBoundaryChange?.(boundaryTs);
|
|
78
|
-
}, [dispatch, roomJID, onReadBoundaryChange]);
|
|
79
63
|
const addReplyMessages = (0, _react.useMemo)(() => {
|
|
80
64
|
return messages.map(message => {
|
|
81
65
|
const newMessage = {
|
|
@@ -242,7 +226,7 @@ const MessageList = ({
|
|
|
242
226
|
// counter so the badge disappears with the arrow.
|
|
243
227
|
setUnreadWhileScrolledUp(0);
|
|
244
228
|
newestSeenTsRef.current = null;
|
|
245
|
-
|
|
229
|
+
onReadBoundaryChange?.(null);
|
|
246
230
|
} else {
|
|
247
231
|
isUserAtBottomRef.current = false;
|
|
248
232
|
if (hasUserScrolledRef.current) {
|
|
@@ -257,11 +241,11 @@ const MessageList = ({
|
|
|
257
241
|
const t = (0, _roomsSlice.msgSortableMs)(m);
|
|
258
242
|
return t > mx ? t : mx;
|
|
259
243
|
}, 0);
|
|
260
|
-
|
|
244
|
+
onReadBoundaryChange?.(newestSeenTsRef.current);
|
|
261
245
|
}
|
|
262
246
|
setIsUserAtBottom(false);
|
|
263
247
|
}
|
|
264
|
-
}, [memoizedMessages,
|
|
248
|
+
}, [memoizedMessages, onReadBoundaryChange]);
|
|
265
249
|
|
|
266
250
|
// Keep the badge in sync with messages that arrive while the user is
|
|
267
251
|
// scrolled up. Count ONLY messages newer than the newest-seen snapshot
|
|
@@ -288,7 +272,7 @@ const MessageList = ({
|
|
|
288
272
|
setIsUserAtBottom(true);
|
|
289
273
|
setUnreadWhileScrolledUp(0);
|
|
290
274
|
newestSeenTsRef.current = null;
|
|
291
|
-
|
|
275
|
+
onReadBoundaryChange?.(null);
|
|
292
276
|
scrollToBottom();
|
|
293
277
|
};
|
|
294
278
|
(0, _react.useEffect)(() => {
|
|
@@ -298,7 +282,7 @@ const MessageList = ({
|
|
|
298
282
|
setIsUserAtBottom(true);
|
|
299
283
|
setUnreadWhileScrolledUp(0);
|
|
300
284
|
newestSeenTsRef.current = null;
|
|
301
|
-
|
|
285
|
+
onReadBoundaryChange?.(null);
|
|
302
286
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
303
287
|
}, [roomJID]);
|
|
304
288
|
const BackgroundImage = (0, _react.useMemo)(() => {
|
|
@@ -319,7 +303,7 @@ const MessageList = ({
|
|
|
319
303
|
}, [config?.backgroundChat?.image]);
|
|
320
304
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
321
305
|
style: [styles.container, {
|
|
322
|
-
backgroundColor: config
|
|
306
|
+
backgroundColor: (0, _getChatBackground.getChatBackgroundColor)(config)
|
|
323
307
|
}],
|
|
324
308
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
325
309
|
style: styles.backgroundImageContainer,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactRedux","_roomsSlice","_Composing","_interopRequireDefault","_TreadLabel","_MessageContainer","_useRoomState","_Loader","_icons","_CustomTypingIndicator","_getIconColor","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MessageList","CustomMessage","CustomDaySeparator","CustomNewMessageLabel","user","loadMoreMessages","roomJID","config","loading","isReply","activeMessage","onReadBoundaryChange","dispatch","useDispatch","composing","messages","composingList","useRoomState","room","isUserAtBottom","setIsUserAtBottom","useState","showNewMessageIndicator","setShowNewMessageIndicator","isLoadingMore","setIsLoadingMore","isScrollBlocked","setIsScrollBlocked","unreadWhileScrolledUp","setUnreadWhileScrolledUp","newestSeenTsRef","useRef","isUserAtBottomRef","hasUserScrolledRef","flatListRef","reportReadBoundary","useCallback","boundaryTs","setReadBoundary","chatJID","addReplyMessages","useMemo","map","message","newMessage","reply","filter","mess","mainMessage","JSON","parse","id","isDeleted","memoizedMessages","nonDeletedMessages","item","filtered","roomJid","showInChannel","sorted","slice","sort","a","b","aNum","Date","date","getTime","bNum","deduped","Array","from","Map","m","values","handleLoadMore","length","oldestMessage","Number","error","console","setTimeout","dataMessages","base","reverse","current","lastNewIndex","msgSortableMs","withDivider","splice","name","undefined","token","refreshToken","toISOString","body","renderMessage","index","String","startsWith","jsx","MessageContainer","walletAddress","xmppUsername","showDateLabel","messageDate","toDateString","nextMessage","candidate","nextMessageDate","scrollToBottom","scrollToOffset","offset","animated","handleContentSizeChange","handleScroll","event","contentOffset","nativeEvent","y","reduce","mx","useEffect","since","count","handleLayout","handleNewMessageIndicatorPress","BackgroundImage","image","backgroundChat","SvgComponent","width","Image","source","View","jsxs","style","styles","container","backgroundColor","color","children","backgroundImageContainer","isUser","colors","FlatList","ref","data","renderItem","keyExtractor","toString","onEndReached","onScroll","onContentSizeChange","onEndReachedThreshold","scrollEventThrottle","onLayout","inverted","keyboardShouldPersistTaps","keyboardDismissMode","keepKeyboardOpenOnScroll","contentContainerStyle","flatListContent","ListFooterComponent","primary","TouchableOpacity","newMessageIndicator","getIconColor","onPress","ArowDownIcon","height","newMessageBadge","Text","newMessageBadgeText","customTypingIndicator","enabled","usersTyping","text","position","customComponent","isVisible","disableHeader","_default","exports","StyleSheet","create","flex","paddingHorizontal","paddingBottom","messageList","flexGrow","top","left","right","bottom","zIndex","borderRadius","justifyContent","alignItems","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","newMessageText","fontWeight","minWidth","borderWidth","borderColor","fontSize"],"sourceRoot":"../../../../src","sources":["components/MainComponents/MessageList.tsx"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AAWA,IAAAE,WAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,WAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAJ,sBAAA,CAAAL,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,sBAAA,GAAAN,sBAAA,CAAAL,OAAA;AACA,IAAAY,aAAA,GAAAZ,OAAA;AAA0D,IAAAa,WAAA,GAAAb,OAAA;AAAA,SAAAK,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAf,wBAAAe,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAnB,uBAAA,YAAAA,CAAAe,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA;AA9B1D;;AAmEA,MAAMgB,WAAW,GAAGA,CAA4B;EAC9CC,aAAa;EACbC,kBAAkB;EAClBC,qBAAqB;EACrBC,IAAI;EACJC,gBAAgB;EAChBC,OAAO;EACPC,MAAM;EACNC,OAAO;EACPC,OAAO;EACPC,aAAa;EACbC;AAC0B,CAAC,KAAK;EAChC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B,MAAM;IAAEC,SAAS;IAAEC,QAAQ;IAAEC;EAAc,CAAC,GAAG,IAAAC,0BAAY,EAACX,OAAO,CAAC,CACjEY,IAAc;EACjB,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAC,eAAQ,EAAC,IAAI,CAAC;EAC1D,MAAM,CAACC,uBAAuB,EAAEC,0BAA0B,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EAC7E,MAAM,CAACG,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EACzD,MAAM,CAACK,eAAe,EAAEC,kBAAkB,CAAC,GAAG,IAAAN,eAAQ,EAAC,KAAK,CAAC;EAC7D;EACA;EACA;EACA,MAAM,CAACO,qBAAqB,EAAEC,wBAAwB,CAAC,GAAG,IAAAR,eAAQ,EAAC,CAAC,CAAC;EACrE;EACA;EACA;EACA;EACA;EACA,MAAMS,eAAe,GAAG,IAAAC,aAAM,EAAgB,IAAI,CAAC;EACnD;EACA;EACA;EACA;EACA,MAAMC,iBAAiB,GAAG,IAAAD,aAAM,EAAC,IAAI,CAAC;EACtC,MAAME,kBAAkB,GAAG,IAAAF,aAAM,EAAC,KAAK,CAAC;EAExC,MAAMG,WAAW,GAAG,IAAAH,aAAM,EAAqB,IAAI,CAAC;;EAEpD;EACA;EACA;EACA;EACA;EACA,MAAMI,kBAAkB,GAAG,IAAAC,kBAAW,EACnCC,UAAyB,IAAK;IAC7B,IAAI/B,OAAO,EAAE;MACXM,QAAQ,CAAC,IAAA0B,2BAAe,EAAC;QAAEC,OAAO,EAAEjC,OAAO;QAAE+B;MAAW,CAAC,CAAC,CAAC;IAC7D;IACA1B,oBAAoB,GAAG0B,UAAU,CAAC;EACpC,CAAC,EACD,CAACzB,QAAQ,EAAEN,OAAO,EAAEK,oBAAoB,CAC1C,CAAC;EAED,MAAM6B,gBAAgB,GAAG,IAAAC,cAAO,EAAC,MAAM;IACrC,OAAO1B,QAAQ,CAAC2B,GAAG,CAAEC,OAAiB,IAAK;MACzC,MAAMC,UAAU,GAAG;QACjB,GAAGD,OAAO;QACVE,KAAK,EAAE9B,QAAQ,CAAC+B,MAAM,CACnBC,IAAc,IACb,CAAC,CAACA,IAAI,CAACC,WAAW,IAClBC,IAAI,CAACC,KAAK,CAACH,IAAI,CAACC,WAAW,CAAC,CAACG,EAAE,KAAKR,OAAO,CAACQ,EAAE,IAC9C,CAACJ,IAAI,CAACK,SACV;MACF,CAAC;MACD,OAAOR,UAAU;IACnB,CAAC,CAAC;EACJ,CAAC,EAAE,CAAC7B,QAAQ,CAAC,CAAC;EAEd,MAAMsC,gBAAgB,GAAG,IAAAZ,cAAO,EAAC,MAAM;IACrC,MAAMa,kBAAkB,GAAGd,gBAAgB,CAACM,MAAM,CAC/CS,IAAc,IAAK,CAACA,IAAI,CAACH,SAC5B,CAAC;IAED,IAAII,QAAoB;IACxB,IAAI/C,OAAO,EAAE;MACX+C,QAAQ,GAAGF,kBAAkB,CAACR,MAAM,CACjCS,IAAc,IACbA,IAAI,CAACE,OAAO,KAAKnD,OAAO,IACxBiD,IAAI,CAAC9C,OAAO,IACZ8C,IAAI,CAAC9C,OAAO,KAAK,MAAM,IACvB8C,IAAI,CAACP,WAAW,IAChBC,IAAI,CAACC,KAAK,CAACK,IAAI,CAACP,WAAW,CAAC,CAACG,EAAE,KAAKzC,aAAa,EAAEyC,EACvD,CAAC;IACH,CAAC,MAAM;MACLK,QAAQ,GAAGF,kBAAkB,CAACR,MAAM,CACjCS,IAAc,IACbA,IAAI,CAACG,aAAa,KAAK,MAAM,IAC5B,CAAC,CAACH,IAAI,CAAC9C,OAAO,IAAI8C,IAAI,CAAC9C,OAAO,KAAK,OAAO,KAAK,CAAC8C,IAAI,CAACP,WAC1D,CAAC;IACH;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMW,MAAM,GAAGH,QAAQ,CAACI,KAAK,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK;MAC7C,MAAMC,IAAI,GAAG,IAAIC,IAAI,CAACH,CAAC,EAAEI,IAAW,CAAC,CAACC,OAAO,CAAC,CAAC,IAAI,CAAC;MACpD,MAAMC,IAAI,GAAG,IAAIH,IAAI,CAACF,CAAC,EAAEG,IAAW,CAAC,CAACC,OAAO,CAAC,CAAC,IAAI,CAAC;MACpD,OAAOH,IAAI,GAAGI,IAAI;IACpB,CAAC,CAAC;IACF,MAAMC,OAAO,GAAGC,KAAK,CAACC,IAAI,CACxB,IAAIC,GAAG,CAACb,MAAM,CAACjB,GAAG,CAAE+B,CAAC,IAAK,CAACA,CAAC,CAACtB,EAAE,EAAEsB,CAAC,CAAC,CAAC,CAAC,CAACC,MAAM,CAAC,CAC/C,CAAC;IACD,OAAOL,OAAO;EAChB,CAAC,EAAE,CAAC7B,gBAAgB,EAAE/B,OAAO,EAAEH,OAAO,EAAEI,aAAa,CAAC,CAAC;EAEvD,MAAMiE,cAAc,GAAG,IAAAvC,kBAAW,EAAC,YAAY;IAC7C,IACE5B,OAAO,IACPgB,aAAa,IACb,CAAC6B,gBAAgB,CAACuB,MAAM,IACxBlD,eAAe,EACf;MACA;IACF;IAEA,MAAMmD,aAAa,GAAGxB,gBAAgB,CAAC,CAAC,CAAC;IACzC,IAAI,CAACwB,aAAa,IAAI,CAACA,aAAa,CAAC1B,EAAE,EAAE;MACvC;IACF;IAEA1B,gBAAgB,CAAC,IAAI,CAAC;IACtBE,kBAAkB,CAAC,IAAI,CAAC;IAExB,IAAI;MACF,MAAMtB,gBAAgB,CACpBwE,aAAa,CAACpB,OAAO,IAAInD,OAAO,EAChC,EAAE,EACFwE,MAAM,CAACD,aAAa,CAAC1B,EAAE,CACzB,CAAC;IACH,CAAC,CAAC,OAAO4B,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;IACtB,CAAC,SAAS;MACRE,UAAU,CAAC,MAAM;QACfxD,gBAAgB,CAAC,KAAK,CAAC;QACvBE,kBAAkB,CAAC,KAAK,CAAC;MAC3B,CAAC,EAAE,GAAG,CAAC;IACT;EACF,CAAC,EAAE,CACD0B,gBAAgB,EAChBhD,gBAAgB,EAChBG,OAAO,EACPgB,aAAa,EACbE,eAAe,EACfpB,OAAO,CACR,CAAC;EAEF,MAAM4E,YAAY,GAAG,IAAAzC,cAAO,EAAC,MAAM;IACjC,MAAM0C,IAAI,GAAG9B,gBAAgB,CAACO,KAAK,CAAC,CAAC,CAACwB,OAAO,CAAC,CAAC;IAC/C,MAAM/C,UAAU,GAAGP,eAAe,CAACuD,OAAO;IAC1C,IACErD,iBAAiB,CAACqD,OAAO,IACzBhD,UAAU,KAAK,IAAI,IACnBT,qBAAqB,KAAK,CAAC,EAC3B;MACA,OAAOuD,IAAI;IACb;IAEA,IAAIG,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,IAAIjG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG8F,IAAI,CAACP,MAAM,EAAEvF,CAAC,EAAE,EAAE;MACpC,IAAI,IAAAkG,yBAAa,EAACJ,IAAI,CAAC9F,CAAC,CAAC,CAAC,GAAGgD,UAAU,EAAE;QACvCiD,YAAY,GAAGjG,CAAC;MAClB,CAAC,MAAM;QACL;MACF;IACF;IAEA,IAAIiG,YAAY,KAAK,CAAC,CAAC,EAAE;MAAC,OAAOH,IAAI;IAAC;IAEtC,MAAMK,WAAW,GAAGL,IAAI,CAACvB,KAAK,CAAC,CAAC;IAChC4B,WAAW,CAACC,MAAM,CAACH,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE;MACtCnC,EAAE,EAAE,qBAAqB;MACzB/C,IAAI,EAAE;QACJ+C,EAAE,EAAE,QAAQ;QACZuC,IAAI,EAAEC,SAAS;QACfC,KAAK,EAAE,EAAE;QACTC,YAAY,EAAE;MAChB,CAAQ;MACR3B,IAAI,EAAE,IAAID,IAAI,CAAC5B,UAAU,CAAC,CAACyD,WAAW,CAAC,CAAC;MACxCC,IAAI,EAAE,cAAc;MACpBtC,OAAO,EAAEnD;IACX,CAAa,CAAC;IACd,OAAOkF,WAAW;EACpB,CAAC,EAAE,CAACnC,gBAAgB,EAAElC,cAAc,EAAEb,OAAO,EAAEsB,qBAAqB,CAAC,CAAC;EAEtE,MAAMoE,aAAa,GAAG,IAAA5D,kBAAW,EAC/B,CAAC;IAAEmB,IAAI;IAAE0C;EAAyC,CAAC,KAAK;IACtD,IAAIC,MAAM,CAAC3C,IAAI,CAACJ,EAAE,CAAC,CAACgD,UAAU,CAAC,eAAe,CAAC,EAAE;MAC/C,oBACE,IAAAvH,WAAA,CAAAwH,GAAA,EAAC9H,iBAAA,CAAA+H,gBAAgB;QACfpG,aAAa,EAAEA,aAAc;QAC7BC,kBAAkB,EAAEA,kBAAmB;QACvCC,qBAAqB,EAAEA,qBAAsB;QAC7CwC,OAAO,EAAEY,IAAK;QACd7C,aAAa,EAAEA,aAAc;QAC7BH,MAAM,EAAEA,MAAO;QACf+F,aAAa,EAAElG,IAAI,CAACmG,YAAY,IAAInG,IAAI,CAACkG,aAAc;QACvD7F,OAAO,EAAEA,OAAQ;QACjB+F,aAAa,EAAE;MAAM,CACtB,CAAC;IAEN;IAEA,MAAMC,WAAW,GAAG,IAAIxC,IAAI,CAACV,IAAI,CAACW,IAAI,CAAC,CAACwC,YAAY,CAAC,CAAC;IACtD,IAAIF,aAAa,GAAG,KAAK;IAEzB,IAAIG,WAAW,GAAG,IAAI;IACtB,KAAK,IAAItH,CAAC,GAAG4G,KAAK,GAAG,CAAC,EAAE5G,CAAC,GAAG6F,YAAY,CAACN,MAAM,EAAEvF,CAAC,EAAE,EAAE;MACpD,MAAMuH,SAAS,GAAG1B,YAAY,CAAC7F,CAAC,CAAC;MACjC,IAAI,CAAC6G,MAAM,CAACU,SAAS,CAACzD,EAAE,CAAC,CAACgD,UAAU,CAAC,eAAe,CAAC,EAAE;QACrDQ,WAAW,GAAGC,SAAS;QACvB;MACF;IACF;IACA,MAAMC,eAAe,GAAGF,WAAW,GAC/B,IAAI1C,IAAI,CAAC0C,WAAW,CAACzC,IAAI,CAAC,CAACwC,YAAY,CAAC,CAAC,GACzC,IAAI;IAER,IAAI,CAACC,WAAW,IAAIF,WAAW,KAAKI,eAAe,EAAE;MACnDL,aAAa,GAAG,IAAI;IACtB;IAEA,oBACE,IAAA5H,WAAA,CAAAwH,GAAA,EAAC9H,iBAAA,CAAA+H,gBAAgB;MACfpG,aAAa,EAAEA,aAAc;MAC7BC,kBAAkB,EAAEA,kBAAmB;MACvCC,qBAAqB,EAAEA,qBAAsB;MAC7CwC,OAAO,EAAEY,IAAK;MACd7C,aAAa,EAAEA,aAAc;MAC7BH,MAAM,EAAEA,MAAO;MACf+F,aAAa,EAAElG,IAAI,CAACmG,YAAY,IAAInG,IAAI,CAACkG,aAAc;MACvD7F,OAAO,EAAEA,OAAQ;MACjB+F,aAAa,EAAEA;IAAc,CAC9B,CAAC;EAEN,CAAC,EACD,CACE9F,aAAa,EACbH,MAAM,EACNL,kBAAkB,EAClBD,aAAa,EACbE,qBAAqB,EACrB+E,YAAY,EACZzE,OAAO,EACPL,IAAI,CAACmG,YAAY,EACjBnG,IAAI,CAACkG,aAAa,CAEtB,CAAC;EAED,MAAMQ,cAAc,GAAG,IAAA1E,kBAAW,EAAC,MAAM;IACvC,IAAIF,WAAW,CAACmD,OAAO,EAAE;MACvBnD,WAAW,CAACmD,OAAO,CAAC0B,cAAc,CAAC;QACjCC,MAAM,EAAE,CAAC;QACTC,QAAQ,EAAE;MACZ,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAAC/E,WAAW,CAAC,CAAC;EAEjB,MAAMgF,uBAAuB,GAAG,IAAA9E,kBAAW,EAAC,MAAM;IAChD,IAAI,CAACZ,aAAa,IAAIU,WAAW,CAACmD,OAAO,IAAIrD,iBAAiB,CAACqD,OAAO,EAAE;MACtEyB,cAAc,CAAC,CAAC;IAClB,CAAC,MAAM,IAAI,CAACtF,aAAa,IAAIS,kBAAkB,CAACoD,OAAO,EAAE;MACvD9D,0BAA0B,CAAC,IAAI,CAAC;IAClC;EACF,CAAC,EAAE,CAACuF,cAAc,EAAEtF,aAAa,CAAC,CAAC;EAEnC,MAAM2F,YAAY,GAAG,IAAA/E,kBAAW,EAC7BgF,KAA8C,IAAK;IAClD,MAAMC,aAAa,GAAGD,KAAK,CAACE,WAAW,CAACD,aAAa,CAACE,CAAC;;IAEvD;IACA;IACA;IACA;;IAEA,IAAIF,aAAa,GAAG,GAAG,IAAI,CAACpF,kBAAkB,CAACoD,OAAO,EAAE;MACtDpD,kBAAkB,CAACoD,OAAO,GAAG,IAAI;IACnC;IAEA,IAAIgC,aAAa,GAAG,GAAG,EAAE;MACvBrF,iBAAiB,CAACqD,OAAO,GAAG,IAAI;MAChC9D,0BAA0B,CAAC,KAAK,CAAC;MACjCH,iBAAiB,CAAC,IAAI,CAAC;MACvB;MACA;MACAS,wBAAwB,CAAC,CAAC,CAAC;MAC3BC,eAAe,CAACuD,OAAO,GAAG,IAAI;MAC9BlD,kBAAkB,CAAC,IAAI,CAAC;IAC1B,CAAC,MAAM;MACLH,iBAAiB,CAACqD,OAAO,GAAG,KAAK;MACjC,IAAIpD,kBAAkB,CAACoD,OAAO,EAAE;QAC9B9D,0BAA0B,CAAC,IAAI,CAAC;MAClC;MACA,IAAIO,eAAe,CAACuD,OAAO,KAAK,IAAI,EAAE;QACpC;QACA;QACA;QACA;QACAvD,eAAe,CAACuD,OAAO,GAAGhC,gBAAgB,CAACmE,MAAM,CAC/C,CAACC,EAAU,EAAEhD,CAAW,KAAK;UAC3B,MAAMzF,CAAC,GAAG,IAAAuG,yBAAa,EAACd,CAAC,CAAC;UAC1B,OAAOzF,CAAC,GAAGyI,EAAE,GAAGzI,CAAC,GAAGyI,EAAE;QACxB,CAAC,EACD,CACF,CAAC;QACDtF,kBAAkB,CAACL,eAAe,CAACuD,OAAO,CAAC;MAC7C;MACAjE,iBAAiB,CAAC,KAAK,CAAC;IAC1B;EACF,CAAC,EACD,CAACiC,gBAAgB,EAAElB,kBAAkB,CACvC,CAAC;;EAED;EACA;EACA;EACA,IAAAuF,gBAAS,EAAC,MAAM;IACd,IAAI1F,iBAAiB,CAACqD,OAAO,EAAE;MAAC;IAAO;IACvC,IAAIvD,eAAe,CAACuD,OAAO,KAAK,IAAI,EAAE;MAAC;IAAO;IAC9C,MAAMsC,KAAK,GAAG7F,eAAe,CAACuD,OAAO;IACrC,MAAMuC,KAAK,GAAGvE,gBAAgB,CAACmE,MAAM,CACnC,CAACrI,CAAS,EAAEsF,CAAW,KAAM,IAAAc,yBAAa,EAACd,CAAC,CAAC,GAAGkD,KAAK,GAAGxI,CAAC,GAAG,CAAC,GAAGA,CAAE,EAClE,CACF,CAAC;IACD0C,wBAAwB,CAAC+F,KAAK,CAAC;EACjC,CAAC,EAAE,CAACvE,gBAAgB,EAAElC,cAAc,CAAC,CAAC;EAEtC,MAAM0G,YAAY,GAAGA,CAAA,KAAM;IACzB7F,iBAAiB,CAACqD,OAAO,GAAG,IAAI;IAChCpD,kBAAkB,CAACoD,OAAO,GAAG,KAAK;IAClCjE,iBAAiB,CAAC,IAAI,CAAC;EACzB,CAAC;EAED,MAAM0G,8BAA8B,GAAGA,CAAA,KAAM;IAC3C9F,iBAAiB,CAACqD,OAAO,GAAG,IAAI;IAChC9D,0BAA0B,CAAC,KAAK,CAAC;IACjCH,iBAAiB,CAAC,IAAI,CAAC;IACvBS,wBAAwB,CAAC,CAAC,CAAC;IAC3BC,eAAe,CAACuD,OAAO,GAAG,IAAI;IAC9BlD,kBAAkB,CAAC,IAAI,CAAC;IACxB2E,cAAc,CAAC,CAAC;EAClB,CAAC;EAED,IAAAY,gBAAS,EAAC,MAAM;IACdzF,kBAAkB,CAACoD,OAAO,GAAG,KAAK;IAClCrD,iBAAiB,CAACqD,OAAO,GAAG,IAAI;IAChC9D,0BAA0B,CAAC,KAAK,CAAC;IACjCH,iBAAiB,CAAC,IAAI,CAAC;IACvBS,wBAAwB,CAAC,CAAC,CAAC;IAC3BC,eAAe,CAACuD,OAAO,GAAG,IAAI;IAC9BlD,kBAAkB,CAAC,IAAI,CAAC;IACxB;EACF,CAAC,EAAE,CAAC7B,OAAO,CAAC,CAAC;EAEb,MAAMyH,eAAe,GAAG,IAAAtF,cAAO,EAAC,MAAM;IACpC,MAAMuF,KAAK,GAAGzH,MAAM,EAAE0H,cAAc,EAAED,KAAK;IAE3C,IAAIA,KAAK,EAAE;MACT,IAAI,OAAOA,KAAK,KAAK,UAAU,EAAE;QAC/B,MAAME,YAAY,GAAGF,KAAgD;QACrE,oBAAO,IAAApJ,WAAA,CAAAwH,GAAA,EAAC8B,YAAY;UAACC,KAAK,EAAC;QAAM,CAAE,CAAC;MACtC,CAAC,MAAM;QACL,oBAAO,IAAAvJ,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAAoK,KAAK;UAACC,MAAM,EAAEL;QAA6B,CAAE,CAAC;MACxD;IACF;IAEA,oBAAO,IAAApJ,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAAsK,IAAI,IAAE,CAAC;EACjB,CAAC,EAAE,CAAC/H,MAAM,EAAE0H,cAAc,EAAED,KAAK,CAAC,CAAC;EAEnC,oBACE,IAAApJ,WAAA,CAAA2J,IAAA,EAACvK,YAAA,CAAAsK,IAAI;IACHE,KAAK,EAAE,CACLC,MAAM,CAACC,SAAS,EAChB;MAAEC,eAAe,EAAEpI,MAAM,EAAE0H,cAAc,EAAEW,KAAK,IAAI;IAAU,CAAC,CAC/D;IAAAC,QAAA,gBAEF,IAAAjK,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAAsK,IAAI;MAACE,KAAK,EAAEC,MAAM,CAACK,wBAAyB;MAAAD,QAAA,EAAEd;IAAe,CAAO,CAAC,EACrErH,aAAa,iBACZ,IAAA9B,WAAA,CAAA2J,IAAA,EAACvK,YAAA,CAAAsK,IAAI;MAAAO,QAAA,GACF5I,aAAa,iBACZ,IAAArB,WAAA,CAAAwH,GAAA,EAACnG,aAAa;QACZ0C,OAAO,EAAEjC,aAAc;QACvBqI,MAAM,EAAErI,aAAa,CAACN,IAAI,CAAC+C,EAAE,KAAK/C,IAAI,CAACkG,aAAc;QACrD7F,OAAO,EAAEA;MAAQ,CAClB,CACF,eACD,IAAA7B,WAAA,CAAAwH,GAAA,EAAC/H,WAAA,CAAAU,OAAU;QAAC8D,KAAK,EAAEQ,gBAAgB,CAACuB,MAAO;QAACoE,MAAM,EAAEzI,MAAM,EAAEyI;MAAO,CAAE,CAAC;IAAA,CAClE,CACP,eACD,IAAApK,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAAiL,QAAQ;MACPC,GAAG,EAAEhH,WAAY;MACjBiH,IAAI,EAAEjE,YAAa;MACnBkE,UAAU,EAAEpD,aAAc;MAC1BqD,YAAY,EAAG9F,IAAI,IAAKA,IAAI,CAACJ,EAAE,CAACmG,QAAQ,CAAC,CAAE;MAC3CC,YAAY,EAAE5E,cAAe;MAC7B6E,QAAQ,EAAErC,YAAa;MACvBsC,mBAAmB,EAAEvC,uBAAwB;MAC7CwC,qBAAqB,EAAE,GAAI;MAC3BC,mBAAmB,EAAE,EAAG;MACxBC,QAAQ,EAAE/B,YAAa;MACvBgC,QAAQ,EAAE,IAAK;MACfC,yBAAyB,EAAC,SAAS;MACnCC,mBAAmB,EACjBxJ,MAAM,EAAEyJ,wBAAwB,GAAG,MAAM,GAAG,aAC7C;MACDC,qBAAqB,EAAExB,MAAM,CAACyB,eAAgB;MAC9CC,mBAAmB,EACjB3J,OAAO,IAAI6C,gBAAgB,CAACuB,MAAM,GAAG,EAAE,gBACrC,IAAAhG,WAAA,CAAAwH,GAAA,EAAC5H,OAAA,CAAAO,OAAM;QAAC6J,KAAK,EAAErI,MAAM,EAAEyI,MAAM,EAAEoB;MAAQ,CAAE,CAAC,GACxC;IACL,CACF,CAAC,EACD9I,uBAAuB,iBACtB,IAAA1C,WAAA,CAAA2J,IAAA,EAACvK,YAAA,CAAAqM,gBAAgB;MACf7B,KAAK,EAAE,CACLC,MAAM,CAAC6B,mBAAmB,EAC1B;QAAE3B,eAAe,EAAE,IAAA4B,0BAAY,EAAChK,MAAM;MAAE,CAAC,CACzC;MACFiK,OAAO,EAAE1C,8BAA+B;MAAAe,QAAA,gBAKxC,IAAAjK,WAAA,CAAAwH,GAAA,EAAC3H,MAAA,CAAAgM,YAAY;QAAC7B,KAAK,EAAC,SAAS;QAACT,KAAK,EAAE,EAAG;QAACuC,MAAM,EAAE;MAAG,CAAE,CAAC,EACtD9I,qBAAqB,GAAG,CAAC,iBACxB,IAAAhD,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAAsK,IAAI;QAACE,KAAK,EAAEC,MAAM,CAACkC,eAAgB;QAAA9B,QAAA,eAClC,IAAAjK,WAAA,CAAAwH,GAAA,EAACpI,YAAA,CAAA4M,IAAI;UAACpC,KAAK,EAAEC,MAAM,CAACoC,mBAAoB;UAAAhC,QAAA,EACrCjH,qBAAqB,GAAG,EAAE,GAAG,KAAK,GAAGA;QAAqB,CACvD;MAAC,CACH,CACP;IAAA,CACe,CACnB,EACArB,MAAM,EAAEuK,qBAAqB,EAAEC,OAAO,IAAIjK,SAAS,iBAClD,IAAAlC,WAAA,CAAAwH,GAAA,EAAC1H,sBAAA,CAAAK,OAAqB;MACpBiM,WAAW,EAAEhK,aAAa,IAAI,CAAC,MAAM,CAAE;MACvCiK,IAAI,EAAE1K,MAAM,CAACuK,qBAAqB,CAACG,IAAK;MACxCC,QAAQ,EAAE3K,MAAM,CAACuK,qBAAqB,CAACI,QAAQ,IAAI,QAAS;MAC5DzC,MAAM,EAAElI,MAAM,CAACuK,qBAAqB,CAACrC,MAAO;MAC5C0C,eAAe,EAAE5K,MAAM,CAACuK,qBAAqB,CAACK,eAAgB;MAC9DC,SAAS,EAAEtK;IAAU,CACtB,CACF,EAEA,CAACP,MAAM,EAAEuK,qBAAqB,EAAEC,OAAO,IACtCxK,MAAM,EAAE8K,aAAa,IACrBvK,SAAS,iBAAI,IAAAlC,WAAA,CAAAwH,GAAA,EAACjI,UAAA,CAAAY,OAAS;MAACiM,WAAW,EAAEhK,aAAa,IAAI,CAAC,MAAM;IAAE,CAAE,CAAC;EAAA,CAChE,CAAC;AAEX,CAAC;AAAC,IAAAsK,QAAA,GAAAC,OAAA,CAAAxM,OAAA,GAEaiB,WAAW;AAE1B,MAAMyI,MAAM,GAAG+C,uBAAU,CAACC,MAAM,CAAC;EAC/B/C,SAAS,EAAE;IACTgD,IAAI,EAAE,CAAC;IACPvD,KAAK,EAAE;EACT,CAAC;EACD+B,eAAe,EAAE;IACfyB,iBAAiB,EAAE,EAAE;IACrBC,aAAa,EAAE;EACjB,CAAC;EACDC,WAAW,EAAE;IACXF,iBAAiB,EAAE,EAAE;IACrBG,QAAQ,EAAE,CAAC;IACXnD,eAAe,EAAE;EACnB,CAAC;EACDG,wBAAwB,EAAE;IACxBX,KAAK,EAAE,MAAM;IACb+C,QAAQ,EAAE,UAAU;IACpBa,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,MAAM,EAAE,CAAC;EACX,CAAC;EACDnE,KAAK,EAAE;IACLkD,QAAQ,EAAE,UAAU;IACpBa,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACP7D,KAAK,EAAE,MAAM;IACbuC,MAAM,EAAE;EACV,CAAC;EACDJ,mBAAmB,EAAE;IACnBY,QAAQ,EAAE,UAAU;IACpB/C,KAAK,EAAE,EAAE;IACTuC,MAAM,EAAE,EAAE;IACVwB,MAAM,EAAE,EAAE;IACVD,KAAK,EAAE,EAAE;IACTtD,eAAe,EAAE,SAAS;IAC1ByD,YAAY,EAAE,EAAE;IAChBC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpB;IACAC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAErE,KAAK,EAAE,CAAC;MAAEuC,MAAM,EAAE;IAAE,CAAC;IACrC+B,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE;EACb,CAAC;EACDC,cAAc,EAAE;IACdhE,KAAK,EAAE,MAAM;IACbiE,UAAU,EAAE;EACd,CAAC;EACDlC,eAAe,EAAE;IACfO,QAAQ,EAAE,UAAU;IACpBa,GAAG,EAAE,CAAC,CAAC;IACPE,KAAK,EAAE,CAAC,CAAC;IACTa,QAAQ,EAAE,EAAE;IACZpC,MAAM,EAAE,EAAE;IACViB,iBAAiB,EAAE,CAAC;IACpBS,YAAY,EAAE,EAAE;IAChBC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpB;IACA;IACA3D,eAAe,EAAE,SAAS;IAC1BoE,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE;EACf,CAAC;EACDnC,mBAAmB,EAAE;IACnBjC,KAAK,EAAE,MAAM;IACbiE,UAAU,EAAE,MAAM;IAClBI,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_roomsSlice","_Composing","_interopRequireDefault","_TreadLabel","_MessageContainer","_useRoomState","_Loader","_icons","_CustomTypingIndicator","_getIconColor","_getChatBackground","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MessageList","CustomMessage","CustomDaySeparator","CustomNewMessageLabel","user","loadMoreMessages","roomJID","config","loading","isReply","activeMessage","onReadBoundaryChange","composing","messages","composingList","useRoomState","room","isUserAtBottom","setIsUserAtBottom","useState","showNewMessageIndicator","setShowNewMessageIndicator","isLoadingMore","setIsLoadingMore","isScrollBlocked","setIsScrollBlocked","unreadWhileScrolledUp","setUnreadWhileScrolledUp","newestSeenTsRef","useRef","isUserAtBottomRef","hasUserScrolledRef","flatListRef","addReplyMessages","useMemo","map","message","newMessage","reply","filter","mess","mainMessage","JSON","parse","id","isDeleted","memoizedMessages","nonDeletedMessages","item","filtered","roomJid","showInChannel","sorted","slice","sort","a","b","aNum","Date","date","getTime","bNum","deduped","Array","from","Map","m","values","handleLoadMore","useCallback","length","oldestMessage","Number","error","console","setTimeout","dataMessages","base","reverse","boundaryTs","current","lastNewIndex","msgSortableMs","withDivider","splice","name","undefined","token","refreshToken","toISOString","body","renderMessage","index","String","startsWith","jsx","MessageContainer","walletAddress","xmppUsername","showDateLabel","messageDate","toDateString","nextMessage","candidate","nextMessageDate","scrollToBottom","scrollToOffset","offset","animated","handleContentSizeChange","handleScroll","event","contentOffset","nativeEvent","y","reduce","mx","useEffect","since","count","handleLayout","handleNewMessageIndicatorPress","BackgroundImage","image","backgroundChat","SvgComponent","width","Image","source","View","jsxs","style","styles","container","backgroundColor","getChatBackgroundColor","children","backgroundImageContainer","isUser","colors","FlatList","ref","data","renderItem","keyExtractor","toString","onEndReached","onScroll","onContentSizeChange","onEndReachedThreshold","scrollEventThrottle","onLayout","inverted","keyboardShouldPersistTaps","keyboardDismissMode","keepKeyboardOpenOnScroll","contentContainerStyle","flatListContent","ListFooterComponent","color","primary","TouchableOpacity","newMessageIndicator","getIconColor","onPress","ArowDownIcon","height","newMessageBadge","Text","newMessageBadgeText","customTypingIndicator","enabled","usersTyping","text","position","customComponent","isVisible","disableHeader","_default","exports","StyleSheet","create","flex","paddingHorizontal","paddingBottom","messageList","flexGrow","top","left","right","bottom","zIndex","borderRadius","justifyContent","alignItems","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","newMessageText","fontWeight","minWidth","borderWidth","borderColor","fontSize"],"sourceRoot":"../../../../src","sources":["components/MainComponents/MessageList.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -45,34 +45,35 @@ const ProfileImagePlaceholder = ({
|
|
|
45
45
|
return '';
|
|
46
46
|
}
|
|
47
47
|
if (words.length >= 2) {
|
|
48
|
-
const firstLetter = /^[
|
|
49
|
-
const secondLetter = /^[
|
|
48
|
+
const firstLetter = /^[\p{L}\p{N}]$/u.test(words[0]?.[0] || '') ? words[0][0].toUpperCase() : '';
|
|
49
|
+
const secondLetter = /^[\p{L}\p{N}]$/u.test(words[1]?.[0] || '') ? words[1][0].toUpperCase() : '';
|
|
50
50
|
return firstLetter + secondLetter;
|
|
51
51
|
}
|
|
52
52
|
if (words.length === 1 && words[0].length >= 2) {
|
|
53
|
-
const firstLetter = /^[
|
|
54
|
-
const secondLetter = /^[
|
|
53
|
+
const firstLetter = /^[\p{L}\p{N}]$/u.test(words[0][0] || '') ? words[0][0].toUpperCase() : '';
|
|
54
|
+
const secondLetter = /^[\p{L}\p{N}]$/u.test(words[0][1] || '') ? words[0][1].toUpperCase() : '';
|
|
55
55
|
return firstLetter + secondLetter;
|
|
56
56
|
}
|
|
57
57
|
if (words.length === 1 && words[0].length === 1) {
|
|
58
|
-
return /^[
|
|
58
|
+
return /^[\p{L}\p{N}]$/u.test(words[0][0] || '') ? words[0][0].toUpperCase() : '';
|
|
59
59
|
}
|
|
60
60
|
return '';
|
|
61
61
|
};
|
|
62
|
-
const getInitials = () => !
|
|
62
|
+
const getInitials = () => !imageSource && name ? getTwoUppercaseLetters(name) : '';
|
|
63
|
+
const imageSource = typeof icon === 'string' && icon ? {
|
|
64
|
+
uri: icon
|
|
65
|
+
} : typeof icon === 'number' ? icon : icon && typeof icon.uri === 'string' && icon.uri ? icon : null;
|
|
63
66
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_StyledComponents.Wrapper, {
|
|
64
|
-
bgColor:
|
|
67
|
+
bgColor: imageSource ? 'transparent' : backgroundColor?.backgroundColor,
|
|
65
68
|
size: size,
|
|
66
69
|
isClickable: active || !!upload?.active,
|
|
67
70
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_StyledComponents.AvatarCircle, {
|
|
68
|
-
bgColor:
|
|
71
|
+
bgColor: imageSource ? 'transparent' : backgroundColor?.backgroundColor,
|
|
69
72
|
size: size,
|
|
70
73
|
isClickable: active || !!upload?.active,
|
|
71
74
|
onPress: upload?.active ? upload.onUpload : click?.isClick ? click.onPress : undefined,
|
|
72
|
-
children: [
|
|
73
|
-
source:
|
|
74
|
-
uri: icon
|
|
75
|
-
} : icon,
|
|
75
|
+
children: [imageSource ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_StyledComponents.AvatarImage, {
|
|
76
|
+
source: imageSource,
|
|
76
77
|
size: size
|
|
77
78
|
}) : placeholderIcon ? placeholderIcon :
|
|
78
79
|
/*#__PURE__*/
|
|
@@ -90,7 +91,7 @@ const ProfileImagePlaceholder = ({
|
|
|
90
91
|
color: "#141414"
|
|
91
92
|
})
|
|
92
93
|
})]
|
|
93
|
-
}), remove?.enabled &&
|
|
94
|
+
}), remove?.enabled && imageSource && role !== 'participant' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_StyledComponents.RemoveButton, {
|
|
94
95
|
onPress: remove.onRemoveClick,
|
|
95
96
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_StyledComponents.RemoveButtonText, {
|
|
96
97
|
children: "\xD7"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_icons","_StyledComponents","_useChatSettingState","_getAvatarColor","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ProfileImagePlaceholder","name","icon","click","size","upload","remove","role","active","placeholderIcon","disableOverlay","config","useChatSettingState","backgroundColor","useMemo","getAvatarColor","getTwoUppercaseLetters","fullName","words","trim","split","filter","word","length","firstLetter","test","toUpperCase","secondLetter","getInitials","jsxs","Wrapper","bgColor","isClickable","children","AvatarCircle","onPress","onUpload","isClick","undefined","jsx","AvatarImage","source","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_icons","_StyledComponents","_useChatSettingState","_getAvatarColor","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ProfileImagePlaceholder","name","icon","click","size","upload","remove","role","active","placeholderIcon","disableOverlay","config","useChatSettingState","backgroundColor","useMemo","getAvatarColor","getTwoUppercaseLetters","fullName","words","trim","split","filter","word","length","firstLetter","test","toUpperCase","secondLetter","getInitials","imageSource","uri","jsxs","Wrapper","bgColor","isClickable","children","AvatarCircle","onPress","onUpload","isClick","undefined","jsx","AvatarImage","source","InitialsText","color","getAvatarTextColor","Overlay","EditIcon","style","fontSize","enabled","RemoveButton","onRemoveClick","RemoveButtonText","exports"],"sourceRoot":"../../../../src","sources":["components/MainComponents/ProfileImagePlaceholder.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = void 0;
|
|
6
|
+
exports.searchRevealStyle = exports.default = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _Search = require("../InputComponents/Search");
|
|
@@ -21,6 +21,34 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
21
21
|
/** @format */
|
|
22
22
|
|
|
23
23
|
const LONG_PRESS_THRESHOLD = 200;
|
|
24
|
+
/** Page ground behind the room list, the search field and the header's
|
|
25
|
+
* rounded bottom corners. */
|
|
26
|
+
const LIST_BACKGROUND = '#E8EDF2';
|
|
27
|
+
|
|
28
|
+
/** A release that leaves the search strip in between is settled by
|
|
29
|
+
* scrolling to whichever end is nearer; this delay lets the platform tell
|
|
30
|
+
* us first whether the finger threw the list (momentum) or just let go. */
|
|
31
|
+
const SNAP_SETTLE_DELAY = 60;
|
|
32
|
+
const COLLAPSED_SCALE = 0.86;
|
|
33
|
+
const SEARCH_REST_GAP = 16;
|
|
34
|
+
const searchRevealStyle = (scrollY, hiddenOffset) => {
|
|
35
|
+
const travel = Math.max(hiddenOffset, 1);
|
|
36
|
+
return {
|
|
37
|
+
opacity: scrollY.interpolate({
|
|
38
|
+
inputRange: [0, travel * 0.85],
|
|
39
|
+
outputRange: [1, 0],
|
|
40
|
+
extrapolate: 'clamp'
|
|
41
|
+
}),
|
|
42
|
+
transform: [{
|
|
43
|
+
scale: scrollY.interpolate({
|
|
44
|
+
inputRange: [0, travel],
|
|
45
|
+
outputRange: [1, COLLAPSED_SCALE],
|
|
46
|
+
extrapolate: 'clamp'
|
|
47
|
+
})
|
|
48
|
+
}]
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
exports.searchRevealStyle = searchRevealStyle;
|
|
24
52
|
const RoomList = ({
|
|
25
53
|
chats,
|
|
26
54
|
burgerMenu = false,
|
|
@@ -34,8 +62,11 @@ const RoomList = ({
|
|
|
34
62
|
const [searchTerm, setSearchTerm] = (0, _react.useState)('');
|
|
35
63
|
const [isLongPress, setIsLongPress] = (0, _react.useState)(false);
|
|
36
64
|
const [isDrawerOpen, setDrawerOpen] = (0, _react.useState)(false);
|
|
65
|
+
const [isSearchFocused, setSearchFocused] = (0, _react.useState)(false);
|
|
37
66
|
const pressTimer = (0, _react.useRef)(null);
|
|
38
67
|
const containerRef = (0, _react.useRef)(null);
|
|
68
|
+
const listRef = (0, _react.useRef)(null);
|
|
69
|
+
const scrollY = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
39
70
|
const drawerAnimation = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
40
71
|
const overlayAnimation = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
41
72
|
const handlePressIn = (0, _react.useCallback)(() => {
|
|
@@ -86,6 +117,108 @@ const RoomList = ({
|
|
|
86
117
|
// A listener for "blur" event (on touch outside) or "TouchableWithoutFeedback" may be used for mobile
|
|
87
118
|
}
|
|
88
119
|
}, [burgerMenu]);
|
|
120
|
+
|
|
121
|
+
// The search field is the list's own header rather than a bar pinned
|
|
122
|
+
// above it: it lives in the scrollable content, so the list opens
|
|
123
|
+
// already scrolled past it (rooms first, no search in sight) and
|
|
124
|
+
// dragging the content down brings it back with the finger — the way
|
|
125
|
+
// Telegram's chat list behaves. A pinned bar could not do this on
|
|
126
|
+
// Android, where a list sitting at offset 0 has nothing left to drag.
|
|
127
|
+
const searchBarHeight = (0, _react.useRef)(0);
|
|
128
|
+
const [measuredBarHeight, setMeasuredBarHeight] = (0, _react.useState)(0);
|
|
129
|
+
const listHeight = (0, _react.useRef)(0);
|
|
130
|
+
const contentHeight = (0, _react.useRef)(0);
|
|
131
|
+
/** The list starts hidden-search only once, and only before the user
|
|
132
|
+
* has touched it — chats arriving later must not yank the view. */
|
|
133
|
+
const didInitialHide = (0, _react.useRef)(false);
|
|
134
|
+
const hasDragged = (0, _react.useRef)(false);
|
|
135
|
+
const inMomentum = (0, _react.useRef)(false);
|
|
136
|
+
const settleTimer = (0, _react.useRef)(null);
|
|
137
|
+
|
|
138
|
+
// A search being typed in (or just focused) is never tucked away
|
|
139
|
+
// under the header, whichever way the list is then dragged.
|
|
140
|
+
const searchIsActive = (0, _react.useRef)(false);
|
|
141
|
+
searchIsActive.current = isSearchFocused || searchTerm.length > 0;
|
|
142
|
+
|
|
143
|
+
/** How far the list can scroll — the strip can only be hidden fully
|
|
144
|
+
* when the rooms below it are tall enough to take its place. */
|
|
145
|
+
const maxOffset = () => contentHeight.current - listHeight.current;
|
|
146
|
+
const hiddenOffset = () => Math.max(searchBarHeight.current - SEARCH_REST_GAP, 0);
|
|
147
|
+
const hideSearchInitially = (0, _react.useCallback)(() => {
|
|
148
|
+
if (didInitialHide.current || hasDragged.current) return;
|
|
149
|
+
const hidden = hiddenOffset();
|
|
150
|
+
if (!hidden || !listHeight.current || !contentHeight.current) return;
|
|
151
|
+
if (maxOffset() < hidden) return;
|
|
152
|
+
didInitialHide.current = true;
|
|
153
|
+
listRef.current?.scrollToOffset({
|
|
154
|
+
offset: hidden,
|
|
155
|
+
animated: false
|
|
156
|
+
});
|
|
157
|
+
}, []);
|
|
158
|
+
|
|
159
|
+
/** The magnet: a strip left half-way in or out settles to whichever
|
|
160
|
+
* end it is closer to. */
|
|
161
|
+
const snapSearch = (0, _react.useCallback)(offset => {
|
|
162
|
+
const hidden = hiddenOffset();
|
|
163
|
+
if (!hidden || maxOffset() < hidden) return;
|
|
164
|
+
if (offset <= 0 || offset >= hidden) return;
|
|
165
|
+
const hide = !searchIsActive.current && offset > hidden / 2;
|
|
166
|
+
listRef.current?.scrollToOffset({
|
|
167
|
+
offset: hide ? hidden : 0,
|
|
168
|
+
animated: true
|
|
169
|
+
});
|
|
170
|
+
}, []);
|
|
171
|
+
const clearSettleTimer = () => {
|
|
172
|
+
if (settleTimer.current) {
|
|
173
|
+
clearTimeout(settleTimer.current);
|
|
174
|
+
settleTimer.current = null;
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
(0, _react.useEffect)(() => clearSettleTimer, []);
|
|
178
|
+
const handleScroll = (0, _react.useMemo)(() => _reactNative.Animated.event([{
|
|
179
|
+
nativeEvent: {
|
|
180
|
+
contentOffset: {
|
|
181
|
+
y: scrollY
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}], {
|
|
185
|
+
useNativeDriver: true
|
|
186
|
+
}), [scrollY]);
|
|
187
|
+
const revealStyle = (0, _react.useMemo)(() => searchRevealStyle(scrollY, Math.max(measuredBarHeight - SEARCH_REST_GAP, 0)), [scrollY, measuredBarHeight]);
|
|
188
|
+
const handleScrollBeginDrag = (0, _react.useCallback)(() => {
|
|
189
|
+
hasDragged.current = true;
|
|
190
|
+
clearSettleTimer();
|
|
191
|
+
}, []);
|
|
192
|
+
const handleScrollEndDrag = (0, _react.useCallback)(e => {
|
|
193
|
+
const offset = e.nativeEvent.contentOffset.y;
|
|
194
|
+
inMomentum.current = false;
|
|
195
|
+
clearSettleTimer();
|
|
196
|
+
// A flick keeps scrolling after the release; snapping now would
|
|
197
|
+
// fight it, so wait a beat and let momentum claim the gesture.
|
|
198
|
+
settleTimer.current = setTimeout(() => {
|
|
199
|
+
settleTimer.current = null;
|
|
200
|
+
if (!inMomentum.current) snapSearch(offset);
|
|
201
|
+
}, SNAP_SETTLE_DELAY);
|
|
202
|
+
}, [snapSearch]);
|
|
203
|
+
const handleMomentumBegin = (0, _react.useCallback)(() => {
|
|
204
|
+
inMomentum.current = true;
|
|
205
|
+
clearSettleTimer();
|
|
206
|
+
}, []);
|
|
207
|
+
const handleMomentumEnd = (0, _react.useCallback)(e => {
|
|
208
|
+
inMomentum.current = false;
|
|
209
|
+
snapSearch(e.nativeEvent.contentOffset.y);
|
|
210
|
+
}, [snapSearch]);
|
|
211
|
+
|
|
212
|
+
// Tapping the field pulls it fully into view even if it was caught
|
|
213
|
+
// half-way, so the caret never sits under the header.
|
|
214
|
+
(0, _react.useEffect)(() => {
|
|
215
|
+
if (isSearchFocused) {
|
|
216
|
+
listRef.current?.scrollToOffset({
|
|
217
|
+
offset: 0,
|
|
218
|
+
animated: true
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
}, [isSearchFocused]);
|
|
89
222
|
const toggleDrawer = () => {
|
|
90
223
|
if (isDrawerOpen) {
|
|
91
224
|
closeDrawer();
|
|
@@ -115,6 +248,30 @@ const RoomList = ({
|
|
|
115
248
|
setDrawerOpen(false);
|
|
116
249
|
});
|
|
117
250
|
};
|
|
251
|
+
const searchHeader = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
252
|
+
testID: "room-list-search",
|
|
253
|
+
style: styles.searchBar,
|
|
254
|
+
onLayout: e => {
|
|
255
|
+
const height = e.nativeEvent.layout.height;
|
|
256
|
+
searchBarHeight.current = height;
|
|
257
|
+
setMeasuredBarHeight(prev => prev === height ? prev : height);
|
|
258
|
+
hideSearchInitially();
|
|
259
|
+
},
|
|
260
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
|
|
261
|
+
testID: "room-list-search-field",
|
|
262
|
+
style: [styles.searchField, revealStyle],
|
|
263
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Search.SearchInput, {
|
|
264
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SearchIcon, {
|
|
265
|
+
height: 20
|
|
266
|
+
}),
|
|
267
|
+
value: searchTerm,
|
|
268
|
+
onChangeText: handleSearchChange,
|
|
269
|
+
onFocus: () => setSearchFocused(true),
|
|
270
|
+
onBlur: () => setSearchFocused(false),
|
|
271
|
+
placeholder: t('search.placeholder')
|
|
272
|
+
})
|
|
273
|
+
})
|
|
274
|
+
});
|
|
118
275
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
119
276
|
children: [burgerMenu && !open && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
120
277
|
style: {
|
|
@@ -137,36 +294,46 @@ const RoomList = ({
|
|
|
137
294
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_HeaderRoomList.HeaderRoomList, {
|
|
138
295
|
setDrawerOpen: toggleDrawer
|
|
139
296
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
140
|
-
style: styles.
|
|
141
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
142
|
-
|
|
143
|
-
|
|
297
|
+
style: styles.listArea,
|
|
298
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.FlatList, {
|
|
299
|
+
ref: listRef,
|
|
300
|
+
data: filteredChats,
|
|
301
|
+
keyExtractor: item => item.jid,
|
|
302
|
+
ListHeaderComponent: searchHeader,
|
|
303
|
+
onLayout: e => {
|
|
304
|
+
listHeight.current = e.nativeEvent.layout.height;
|
|
305
|
+
hideSearchInitially();
|
|
306
|
+
},
|
|
307
|
+
onContentSizeChange: (_w, h) => {
|
|
308
|
+
contentHeight.current = h;
|
|
309
|
+
hideSearchInitially();
|
|
310
|
+
},
|
|
311
|
+
onScroll: handleScroll,
|
|
312
|
+
scrollEventThrottle: 16,
|
|
313
|
+
onScrollBeginDrag: handleScrollBeginDrag,
|
|
314
|
+
onScrollEndDrag: handleScrollEndDrag,
|
|
315
|
+
onMomentumScrollBegin: handleMomentumBegin,
|
|
316
|
+
onMomentumScrollEnd: handleMomentumEnd,
|
|
317
|
+
keyboardShouldPersistTaps: "handled",
|
|
318
|
+
renderItem: ({
|
|
319
|
+
item
|
|
320
|
+
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable
|
|
321
|
+
// Stable testID so e2e drivers can target a room
|
|
322
|
+
// row by its jid local-part (e.g. Main chat under
|
|
323
|
+
// app id `..._...759` → testID `room-...759`).
|
|
324
|
+
, {
|
|
325
|
+
testID: `room-${(item.jid || '').split('@')[0]}`,
|
|
326
|
+
accessibilityLabel: `room-${item.title || item.name}`,
|
|
327
|
+
onPress: () => performClick(item),
|
|
328
|
+
onPressIn: handlePressIn,
|
|
329
|
+
onPressOut: handlePressOut,
|
|
330
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatRoomItem.default, {
|
|
331
|
+
chat: item,
|
|
332
|
+
config: config
|
|
333
|
+
})
|
|
144
334
|
}),
|
|
145
|
-
|
|
146
|
-
onChangeText: handleSearchChange,
|
|
147
|
-
placeholder: t('search.placeholder')
|
|
335
|
+
style: styles.chatList
|
|
148
336
|
})
|
|
149
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.FlatList, {
|
|
150
|
-
data: filteredChats,
|
|
151
|
-
keyExtractor: item => item.jid,
|
|
152
|
-
renderItem: ({
|
|
153
|
-
item
|
|
154
|
-
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable
|
|
155
|
-
// Stable testID so e2e drivers can target a room
|
|
156
|
-
// row by its jid local-part (e.g. Main chat under
|
|
157
|
-
// app id `..._...759` → testID `room-...759`).
|
|
158
|
-
, {
|
|
159
|
-
testID: `room-${(item.jid || '').split('@')[0]}`,
|
|
160
|
-
accessibilityLabel: `room-${item.title || item.name}`,
|
|
161
|
-
onPress: () => performClick(item),
|
|
162
|
-
onPressIn: handlePressIn,
|
|
163
|
-
onPressOut: handlePressOut,
|
|
164
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatRoomItem.default, {
|
|
165
|
-
chat: item,
|
|
166
|
-
config: config
|
|
167
|
-
})
|
|
168
|
-
}),
|
|
169
|
-
style: styles.chatList
|
|
170
337
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_HeaderRoomListMenu.HeaderRoomListMenu, {
|
|
171
338
|
closeDrawer: closeDrawer,
|
|
172
339
|
drawerAnimation: drawerAnimation,
|
|
@@ -188,7 +355,7 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
188
355
|
width: '100%',
|
|
189
356
|
height: '100%',
|
|
190
357
|
flex: 1,
|
|
191
|
-
backgroundColor:
|
|
358
|
+
backgroundColor: LIST_BACKGROUND
|
|
192
359
|
},
|
|
193
360
|
scrollContainer: {
|
|
194
361
|
flexGrow: 1
|
|
@@ -199,21 +366,27 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
199
366
|
padding: 16,
|
|
200
367
|
justifyContent: 'space-between'
|
|
201
368
|
},
|
|
369
|
+
listArea: {
|
|
370
|
+
flex: 1
|
|
371
|
+
},
|
|
202
372
|
searchBar: {
|
|
373
|
+
paddingBottom: 4,
|
|
203
374
|
// `row` matters: SearchInputWrapper is `flex: 1` plus a fixed 44px
|
|
204
375
|
// height. In a column parent that flex resolves VERTICALLY against a
|
|
205
376
|
// parent with no height of its own and collapses the field to nothing
|
|
206
|
-
// but its magnifier. As a row it resolves to width
|
|
207
|
-
// meant back when the field was a list-header child.
|
|
377
|
+
// but its magnifier. As a row it resolves to width.
|
|
208
378
|
flexDirection: 'row',
|
|
209
379
|
paddingTop: 8,
|
|
210
|
-
|
|
211
|
-
|
|
380
|
+
backgroundColor: 'transparent'
|
|
381
|
+
},
|
|
382
|
+
searchField: {
|
|
383
|
+
flexDirection: 'row',
|
|
384
|
+
flex: 1
|
|
212
385
|
},
|
|
213
386
|
chatList: {
|
|
214
387
|
flex: 1,
|
|
215
388
|
paddingHorizontal: 16,
|
|
216
|
-
backgroundColor:
|
|
389
|
+
backgroundColor: LIST_BACKGROUND
|
|
217
390
|
}
|
|
218
391
|
});
|
|
219
392
|
var _default = exports.default = RoomList;
|