chat 1.0.8 → 3.0.0
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/package.json +2 -96
- package/readme.md +1 -201
- package/lib/module/ChatContext/index.js +0 -2
- package/lib/module/ChatContext/index.js.map +0 -1
- package/lib/module/ChatContext/types.js +0 -2
- package/lib/module/ChatContext/types.js.map +0 -1
- package/lib/module/classes/Chat/index.js +0 -2
- package/lib/module/classes/Chat/index.js.map +0 -1
- package/lib/module/classes/Chat/types.js +0 -2
- package/lib/module/classes/Chat/types.js.map +0 -1
- package/lib/module/classes/Inbox/index.js +0 -2
- package/lib/module/classes/Inbox/index.js.map +0 -1
- package/lib/module/classes/Inbox/types.js +0 -2
- package/lib/module/classes/Inbox/types.js.map +0 -1
- package/lib/module/classes/Message/index.js +0 -2
- package/lib/module/classes/Message/index.js.map +0 -1
- package/lib/module/classes/Message/types.js +0 -2
- package/lib/module/classes/Message/types.js.map +0 -1
- package/lib/module/classes/Reaction/index.js +0 -2
- package/lib/module/classes/Reaction/index.js.map +0 -1
- package/lib/module/classes/Reaction/types.js +0 -2
- package/lib/module/classes/Reaction/types.js.map +0 -1
- package/lib/module/classes/Room/index.js +0 -2
- package/lib/module/classes/Room/index.js.map +0 -1
- package/lib/module/classes/Room/types.js +0 -2
- package/lib/module/classes/Room/types.js.map +0 -1
- package/lib/module/classes/index.js +0 -2
- package/lib/module/classes/index.js.map +0 -1
- package/lib/module/components/Avatar/index.js +0 -2
- package/lib/module/components/Avatar/index.js.map +0 -1
- package/lib/module/components/Chat/Bubble/index.js +0 -2
- package/lib/module/components/Chat/Bubble/index.js.map +0 -1
- package/lib/module/components/Chat/Composer/Input/index.js +0 -2
- package/lib/module/components/Chat/Composer/Input/index.js.map +0 -1
- package/lib/module/components/Chat/Composer/Send/index.js +0 -2
- package/lib/module/components/Chat/Composer/Send/index.js.map +0 -1
- package/lib/module/components/Chat/Composer/index.js +0 -2
- package/lib/module/components/Chat/Composer/index.js.map +0 -1
- package/lib/module/components/Chat/Media/Image/index.js +0 -2
- package/lib/module/components/Chat/Media/Image/index.js.map +0 -1
- package/lib/module/components/Chat/Media/index.js +0 -2
- package/lib/module/components/Chat/Media/index.js.map +0 -1
- package/lib/module/components/Chat/Message/Swiper/Action/index.js +0 -2
- package/lib/module/components/Chat/Message/Swiper/Action/index.js.map +0 -1
- package/lib/module/components/Chat/Message/Swiper/index.js +0 -2
- package/lib/module/components/Chat/Message/Swiper/index.js.map +0 -1
- package/lib/module/components/Chat/Message/Touchable/index.js +0 -2
- package/lib/module/components/Chat/Message/Touchable/index.js.map +0 -1
- package/lib/module/components/Chat/Message/index.js +0 -2
- package/lib/module/components/Chat/Message/index.js.map +0 -1
- package/lib/module/components/Chat/SystemMessage/index.js +0 -2
- package/lib/module/components/Chat/SystemMessage/index.js.map +0 -1
- package/lib/module/components/Chat/TypingFooter/index.js +0 -2
- package/lib/module/components/Chat/TypingFooter/index.js.map +0 -1
- package/lib/module/components/Chat/index.js +0 -2
- package/lib/module/components/Chat/index.js.map +0 -1
- package/lib/module/components/Chat/types.js +0 -2
- package/lib/module/components/Chat/types.js.map +0 -1
- package/lib/module/components/Chat-Old/Bubble/index.js +0 -2
- package/lib/module/components/Chat-Old/Bubble/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Composer/Input/index.js +0 -2
- package/lib/module/components/Chat-Old/Composer/Input/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Composer/Send/index.js +0 -2
- package/lib/module/components/Chat-Old/Composer/Send/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Composer/index.js +0 -2
- package/lib/module/components/Chat-Old/Composer/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Message/index.js +0 -2
- package/lib/module/components/Chat-Old/Message/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Swiper/Action/index.js +0 -2
- package/lib/module/components/Chat-Old/Swiper/Action/index.js.map +0 -1
- package/lib/module/components/Chat-Old/Swiper/index.js +0 -2
- package/lib/module/components/Chat-Old/Swiper/index.js.map +0 -1
- package/lib/module/components/Chat-Old/SystemMessage/index.js +0 -2
- package/lib/module/components/Chat-Old/SystemMessage/index.js.map +0 -1
- package/lib/module/components/Chat-Old/index.js +0 -2
- package/lib/module/components/Chat-Old/index.js.map +0 -1
- package/lib/module/components/Chat-Old/types.js +0 -2
- package/lib/module/components/Chat-Old/types.js.map +0 -1
- package/lib/module/components/ChatProvider/index.js +0 -2
- package/lib/module/components/ChatProvider/index.js.map +0 -1
- package/lib/module/components/ChatProvider/types.js +0 -2
- package/lib/module/components/ChatProvider/types.js.map +0 -1
- package/lib/module/components/Inbox/Item/Circle/index.js +0 -2
- package/lib/module/components/Inbox/Item/Circle/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/Circle/types.js +0 -2
- package/lib/module/components/Inbox/Item/Circle/types.js.map +0 -1
- package/lib/module/components/Inbox/Item/Initials/index.js +0 -2
- package/lib/module/components/Inbox/Item/Initials/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/ItemDate/index.js +0 -2
- package/lib/module/components/Inbox/Item/ItemDate/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/Separator/index.js +0 -2
- package/lib/module/components/Inbox/Item/Separator/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/Subtitle/index.js +0 -2
- package/lib/module/components/Inbox/Item/Subtitle/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/Swipeable/index.js +0 -2
- package/lib/module/components/Inbox/Item/Swipeable/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/Title/index.js +0 -2
- package/lib/module/components/Inbox/Item/Title/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/UnreadIndicator/index.js +0 -2
- package/lib/module/components/Inbox/Item/UnreadIndicator/index.js.map +0 -1
- package/lib/module/components/Inbox/Item/index.js +0 -2
- package/lib/module/components/Inbox/Item/index.js.map +0 -1
- package/lib/module/components/Inbox/index.js +0 -2
- package/lib/module/components/Inbox/index.js.map +0 -1
- package/lib/module/components/Inbox/question.md +0 -21
- package/lib/module/components/Inbox/readme.md +0 -21
- package/lib/module/components/Inbox/types.js +0 -2
- package/lib/module/components/Inbox/types.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/Footer/Button/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/Footer/Button/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/Footer/Input/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/Footer/Input/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/Footer/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/Footer/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/Item/Icon/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/Item/Icon/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/Item/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/Item/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Content/index.js +0 -2
- package/lib/module/components/RoomCreator/Content/index.js.map +0 -1
- package/lib/module/components/RoomCreator/Header/index.js +0 -2
- package/lib/module/components/RoomCreator/Header/index.js.map +0 -1
- package/lib/module/components/RoomCreator/index.js +0 -2
- package/lib/module/components/RoomCreator/index.js.map +0 -1
- package/lib/module/components/RoomCreator/types.js +0 -2
- package/lib/module/components/RoomCreator/types.js.map +0 -1
- package/lib/module/components/TypingIndicator/index.js +0 -2
- package/lib/module/components/TypingIndicator/index.js.map +0 -1
- package/lib/module/components/index.js +0 -2
- package/lib/module/components/index.js.map +0 -1
- package/lib/module/helpers/getInitials.js +0 -2
- package/lib/module/helpers/getInitials.js.map +0 -1
- package/lib/module/helpers/sortByAvatar.js +0 -2
- package/lib/module/helpers/sortByAvatar.js.map +0 -1
- package/lib/module/hooks/index.js +0 -2
- package/lib/module/hooks/index.js.map +0 -1
- package/lib/module/hooks/useCreateRoom/index.js +0 -2
- package/lib/module/hooks/useCreateRoom/index.js.map +0 -1
- package/lib/module/hooks/useCreator/index.js +0 -2
- package/lib/module/hooks/useCreator/index.js.map +0 -1
- package/lib/module/hooks/useInbox/index.js +0 -2
- package/lib/module/hooks/useInbox/index.js.map +0 -1
- package/lib/module/hooks/useInbox/types.js +0 -2
- package/lib/module/hooks/useInbox/types.js.map +0 -1
- package/lib/module/hooks/useMessages/index.js +0 -2
- package/lib/module/hooks/useMessages/index.js.map +0 -1
- package/lib/module/hooks/useMessages/types.js +0 -2
- package/lib/module/hooks/useMessages/types.js.map +0 -1
- package/lib/module/hooks/useRoom/index.js +0 -2
- package/lib/module/hooks/useRoom/index.js.map +0 -1
- package/lib/module/hooks/useRoom/types.js +0 -2
- package/lib/module/hooks/useRoom/types.js.map +0 -1
- package/lib/module/hooks/useSend/useSendToGroup/index.js +0 -2
- package/lib/module/hooks/useSend/useSendToGroup/index.js.map +0 -1
- package/lib/module/hooks/useSend/useSendToPeople/index.js +0 -2
- package/lib/module/hooks/useSend/useSendToPeople/index.js.map +0 -1
- package/lib/module/hooks/useTyping/index.js +0 -2
- package/lib/module/hooks/useTyping/index.js.map +0 -1
- package/lib/module/hooks/useTypingOLD/index.js +0 -2
- package/lib/module/hooks/useTypingOLD/index.js.map +0 -1
- package/lib/module/hooks/useTypingOLD/types.js +0 -2
- package/lib/module/hooks/useTypingOLD/types.js.map +0 -1
- package/lib/module/hooks/useViewMessages/index.js +0 -2
- package/lib/module/hooks/useViewMessages/index.js.map +0 -1
- package/lib/module/hooks/useViewMessages/types.js +0 -2
- package/lib/module/hooks/useViewMessages/types.js.map +0 -1
- package/lib/module/hooks/useViewMessagesOld/index.js +0 -2
- package/lib/module/hooks/useViewMessagesOld/index.js.map +0 -1
- package/lib/module/index.js +0 -2
- package/lib/module/index.js.map +0 -1
- package/lib/typescript/ChatContext/index.d.ts +0 -2
- package/lib/typescript/ChatContext/types.d.ts +0 -4
- package/lib/typescript/classes/Chat/index.d.ts +0 -14
- package/lib/typescript/classes/Chat/types.d.ts +0 -21
- package/lib/typescript/classes/Inbox/types.d.ts +0 -2
- package/lib/typescript/classes/Message/index.d.ts +0 -47
- package/lib/typescript/classes/Message/types.d.ts +0 -66
- package/lib/typescript/classes/Reaction/index.d.ts +0 -17
- package/lib/typescript/classes/Reaction/types.d.ts +0 -33
- package/lib/typescript/classes/Room/index.d.ts +0 -42
- package/lib/typescript/classes/Room/types.d.ts +0 -112
- package/lib/typescript/classes/index.d.ts +0 -4
- package/lib/typescript/components/Avatar/index.d.ts +0 -4
- package/lib/typescript/components/Chat/Bubble/index.d.ts +0 -4
- package/lib/typescript/components/Chat/Composer/Input/index.d.ts +0 -7
- package/lib/typescript/components/Chat/Composer/Send/index.d.ts +0 -4
- package/lib/typescript/components/Chat/Composer/index.d.ts +0 -8
- package/lib/typescript/components/Chat/Media/Image/index.d.ts +0 -7
- package/lib/typescript/components/Chat/Media/index.d.ts +0 -4
- package/lib/typescript/components/Chat/Message/Touchable/index.d.ts +0 -4
- package/lib/typescript/components/Chat/Message/index.d.ts +0 -8
- package/lib/typescript/components/Chat/SystemMessage/index.d.ts +0 -4
- package/lib/typescript/components/Chat/TypingFooter/index.d.ts +0 -4
- package/lib/typescript/components/Chat/index.d.ts +0 -8
- package/lib/typescript/components/Chat/types.d.ts +0 -843
- package/lib/typescript/components/ChatProvider/index.d.ts +0 -10
- package/lib/typescript/components/ChatProvider/types.d.ts +0 -7
- package/lib/typescript/components/Inbox/Item/Initials/index.d.ts +0 -4
- package/lib/typescript/components/Inbox/Item/ItemDate/index.d.ts +0 -4
- package/lib/typescript/components/Inbox/Item/Separator/index.d.ts +0 -6
- package/lib/typescript/components/Inbox/Item/Subtitle/index.d.ts +0 -3
- package/lib/typescript/components/Inbox/Item/Swipeable/index.d.ts +0 -4
- package/lib/typescript/components/Inbox/Item/Title/index.d.ts +0 -3
- package/lib/typescript/components/Inbox/Item/UnreadIndicator/index.d.ts +0 -4
- package/lib/typescript/components/Inbox/Item/index.d.ts +0 -6
- package/lib/typescript/components/Inbox/index.d.ts +0 -4
- package/lib/typescript/components/Inbox/types.d.ts +0 -304
- package/lib/typescript/components/RoomCreator/Content/Footer/Button/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/Content/Footer/Input/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/Content/Footer/index.d.ts +0 -3
- package/lib/typescript/components/RoomCreator/Content/Item/Icon/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/Content/Item/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/Content/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/Header/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/index.d.ts +0 -4
- package/lib/typescript/components/RoomCreator/types.d.ts +0 -208
- package/lib/typescript/components/TypingIndicator/index.d.ts +0 -9
- package/lib/typescript/components/index.d.ts +0 -12
- package/lib/typescript/helpers/getInitials.d.ts +0 -1
- package/lib/typescript/hooks/index.d.ts +0 -8
- package/lib/typescript/hooks/useCreator/index.d.ts +0 -27
- package/lib/typescript/hooks/useInbox/index.d.ts +0 -29
- package/lib/typescript/hooks/useInbox/types.d.ts +0 -5
- package/lib/typescript/hooks/useMessages/index.d.ts +0 -24
- package/lib/typescript/hooks/useMessages/types.d.ts +0 -5
- package/lib/typescript/hooks/useRoom/index.d.ts +0 -26
- package/lib/typescript/hooks/useRoom/types.d.ts +0 -5
- package/lib/typescript/hooks/useSend/useSendToGroup/index.d.ts +0 -6
- package/lib/typescript/hooks/useSend/useSendToPeople/index.d.ts +0 -6
- package/lib/typescript/hooks/useTyping/index.d.ts +0 -36
- package/lib/typescript/hooks/useViewMessages/index.d.ts +0 -18
- package/lib/typescript/hooks/useViewMessages/types.d.ts +0 -20
- package/lib/typescript/index.d.ts +0 -11
- package/src/ChatContext/index.tsx +0 -9
- package/src/ChatContext/types.ts +0 -4
- package/src/classes/Chat/index.ts +0 -46
- package/src/classes/Chat/types.ts +0 -23
- package/src/classes/Inbox/index.ts +0 -12
- package/src/classes/Inbox/types.ts +0 -3
- package/src/classes/Message/index.ts +0 -310
- package/src/classes/Message/types.ts +0 -118
- package/src/classes/Reaction/index.ts +0 -108
- package/src/classes/Reaction/types.ts +0 -37
- package/src/classes/Room/index.ts +0 -323
- package/src/classes/Room/types.ts +0 -161
- package/src/classes/index.ts +0 -4
- package/src/components/Avatar/index.tsx +0 -25
- package/src/components/Chat/Bubble/index.tsx +0 -139
- package/src/components/Chat/Composer/Input/index.tsx +0 -45
- package/src/components/Chat/Composer/Send/index.tsx +0 -51
- package/src/components/Chat/Composer/index.tsx +0 -187
- package/src/components/Chat/Media/Image/index.tsx +0 -26
- package/src/components/Chat/Media/index.tsx +0 -11
- package/src/components/Chat/Message/Swiper/Action/index.tsx +0 -7
- package/src/components/Chat/Message/Swiper/index.tsx +0 -32
- package/src/components/Chat/Message/Touchable/index.tsx +0 -60
- package/src/components/Chat/Message/index.tsx +0 -328
- package/src/components/Chat/SystemMessage/index.tsx +0 -44
- package/src/components/Chat/TypingFooter/index.tsx +0 -48
- package/src/components/Chat/index.tsx +0 -596
- package/src/components/Chat/types.ts +0 -913
- package/src/components/Chat-Old/Bubble/index.tsx +0 -58
- package/src/components/Chat-Old/Composer/Input/index.tsx +0 -34
- package/src/components/Chat-Old/Composer/Send/index.tsx +0 -37
- package/src/components/Chat-Old/Composer/index.tsx +0 -131
- package/src/components/Chat-Old/Message/index.tsx +0 -160
- package/src/components/Chat-Old/Swiper/Action/index.tsx +0 -7
- package/src/components/Chat-Old/Swiper/index.tsx +0 -30
- package/src/components/Chat-Old/SystemMessage/index.tsx +0 -44
- package/src/components/Chat-Old/index.tsx +0 -356
- package/src/components/Chat-Old/types.ts +0 -752
- package/src/components/ChatProvider/index.tsx +0 -31
- package/src/components/ChatProvider/types.ts +0 -8
- package/src/components/Inbox/Item/Circle/index.tsx +0 -47
- package/src/components/Inbox/Item/Circle/types.ts +0 -8
- package/src/components/Inbox/Item/Initials/index.tsx +0 -41
- package/src/components/Inbox/Item/ItemDate/index.tsx +0 -26
- package/src/components/Inbox/Item/Separator/index.tsx +0 -13
- package/src/components/Inbox/Item/Subtitle/index.tsx +0 -23
- package/src/components/Inbox/Item/Swipeable/index.tsx +0 -143
- package/src/components/Inbox/Item/Title/index.tsx +0 -23
- package/src/components/Inbox/Item/UnreadIndicator/index.tsx +0 -84
- package/src/components/Inbox/Item/index.tsx +0 -307
- package/src/components/Inbox/index.tsx +0 -315
- package/src/components/Inbox/question.md +0 -21
- package/src/components/Inbox/readme.md +0 -21
- package/src/components/Inbox/types.ts +0 -371
- package/src/components/RoomCreator/Content/Footer/Button/index.tsx +0 -55
- package/src/components/RoomCreator/Content/Footer/Input/index.tsx +0 -27
- package/src/components/RoomCreator/Content/Footer/index.tsx +0 -72
- package/src/components/RoomCreator/Content/Item/Icon/index.tsx +0 -16
- package/src/components/RoomCreator/Content/Item/index.tsx +0 -87
- package/src/components/RoomCreator/Content/index.tsx +0 -75
- package/src/components/RoomCreator/Header/index.tsx +0 -74
- package/src/components/RoomCreator/index.tsx +0 -177
- package/src/components/RoomCreator/types.ts +0 -233
- package/src/components/TypingIndicator/index.tsx +0 -169
- package/src/components/index.ts +0 -18
- package/src/helpers/getInitials.ts +0 -11
- package/src/helpers/sortByAvatar.ts +0 -1
- package/src/hooks/index.ts +0 -8
- package/src/hooks/useCreateRoom/index.ts +0 -34
- package/src/hooks/useCreator/index.ts +0 -33
- package/src/hooks/useInbox/index.ts +0 -76
- package/src/hooks/useInbox/types.ts +0 -6
- package/src/hooks/useMessages/index.ts +0 -109
- package/src/hooks/useMessages/types.ts +0 -6
- package/src/hooks/useRoom/index.ts +0 -82
- package/src/hooks/useRoom/types.ts +0 -6
- package/src/hooks/useSend/useSendToGroup/index.ts +0 -38
- package/src/hooks/useSend/useSendToPeople/index.ts +0 -38
- package/src/hooks/useTyping/index.ts +0 -154
- package/src/hooks/useTypingOLD/index.ts +0 -67
- package/src/hooks/useTypingOLD/types.ts +0 -7
- package/src/hooks/useViewMessages/index.ts +0 -61
- package/src/hooks/useViewMessages/types.ts +0 -22
- package/src/hooks/useViewMessagesOld/index.ts +0 -39
- package/src/index.ts +0 -13
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { MessageModel, RoomId, NewMessageModel, SendFromFeedRecipients } from './types';
|
|
2
|
-
import { RoomMembers, RoomMember } from '../Room/types';
|
|
3
|
-
import { ReactionOption } from '../Reaction/types';
|
|
4
|
-
export default class {
|
|
5
|
-
private message;
|
|
6
|
-
constructor(message: MessageModel);
|
|
7
|
-
/**
|
|
8
|
-
* A function to send one message to many different existing rooms/group chats separately.
|
|
9
|
-
*
|
|
10
|
-
* @param recipients An array of rooms ids where this message will be sent to separately
|
|
11
|
-
* @returns Promise that returns a room ID if there is only one (or promise that resolves as null if the message object isn't valid)
|
|
12
|
-
*/
|
|
13
|
-
sendToRooms(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
|
|
14
|
-
/**
|
|
15
|
-
* A function to send one message to many different people individually.
|
|
16
|
-
* For each recipient, if a room for them doesn't exist, it will get created and the message will be added to it.
|
|
17
|
-
* If the room does exist, the message will be added to it.
|
|
18
|
-
*
|
|
19
|
-
* @param recipients An array of user ids whom this message will be sent to separately
|
|
20
|
-
* @returns Promise that returns a room ID (or promise that resolves as null if the message object isn't valid)
|
|
21
|
-
*/
|
|
22
|
-
sendToPeople(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
|
|
23
|
-
/**
|
|
24
|
-
* Sends message to a group. This is useful when you don't have a room id but do have a list of people you want to send a message to. If you want to send the message to them separately, try sendToPeople instead.
|
|
25
|
-
* This function will create a group chat with the specified users if one doesn't exist yet. If it does exist already, then it will add to that existing room.
|
|
26
|
-
* @param recipients Array of uids for people in the group this message should send to.
|
|
27
|
-
* @returns Promise that returns a room ID (or promise that resolves as null if the message object isn't valid)
|
|
28
|
-
*/
|
|
29
|
-
sendToGroup(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
|
|
30
|
-
/**
|
|
31
|
-
* deprecated: fuck this function
|
|
32
|
-
*/
|
|
33
|
-
sendFromFeed(to: SendFromFeedRecipients): Promise<any[]>;
|
|
34
|
-
/**
|
|
35
|
-
* Send message by adding it directly to the backend
|
|
36
|
-
* @param roomId The id of the room you want to send this to. Could also be an array of ids, if the same message should go to multiple rooms.
|
|
37
|
-
*/
|
|
38
|
-
send(roomId: RoomId): void;
|
|
39
|
-
edit(roomId: string): Promise<void>;
|
|
40
|
-
formatForRender(): NewMessageModel[] | NewMessageModel | null;
|
|
41
|
-
formatForSend(): this;
|
|
42
|
-
addToFirebase(roomId: RoomId): Promise<void>;
|
|
43
|
-
updateOnFirebase(roomId: string): Promise<void>;
|
|
44
|
-
getUsersWhoReacted(reaction: ReactionOption, { roomMembers }: {
|
|
45
|
-
roomMembers: RoomMembers;
|
|
46
|
-
}): RoomMember[];
|
|
47
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { FieldValue } from '@firebase/firestore-types';
|
|
2
|
-
import { ReactionOption } from '../Reaction/types';
|
|
3
|
-
export interface Message {
|
|
4
|
-
id: string;
|
|
5
|
-
}
|
|
6
|
-
export interface NewMessageModel extends Omit<Message, 'roomId'> {
|
|
7
|
-
text: string;
|
|
8
|
-
createdAt: Date;
|
|
9
|
-
user: {
|
|
10
|
-
id: string;
|
|
11
|
-
name: string;
|
|
12
|
-
avatar: string;
|
|
13
|
-
};
|
|
14
|
-
system?: boolean;
|
|
15
|
-
media?: MessageMedia;
|
|
16
|
-
reactions?: {
|
|
17
|
-
[option in ReactionOption]: string[];
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
export interface MessageMediaWithUrl {
|
|
21
|
-
url: string;
|
|
22
|
-
uri?: string;
|
|
23
|
-
height: number;
|
|
24
|
-
width: number;
|
|
25
|
-
contentType: 'video' | 'image';
|
|
26
|
-
}
|
|
27
|
-
export interface MessageMediaWithUri {
|
|
28
|
-
url: string;
|
|
29
|
-
uri?: string;
|
|
30
|
-
height: number;
|
|
31
|
-
width: number;
|
|
32
|
-
contentType: 'video' | 'image';
|
|
33
|
-
}
|
|
34
|
-
export declare type MessageMedia = MessageMediaWithUrl | MessageMediaWithUri;
|
|
35
|
-
export interface NewMessageFormattedForServer extends Omit<NewMessageModel, 'createdAt'> {
|
|
36
|
-
createdAt: FieldValue;
|
|
37
|
-
}
|
|
38
|
-
export declare function isNewMessageModel(message: MessageModel): message is NewMessageModel;
|
|
39
|
-
export declare function isNewMessageFormattedForServer(message: MessageModel): message is NewMessageFormattedForServer;
|
|
40
|
-
export interface EditMessageModel extends Message {
|
|
41
|
-
text?: string;
|
|
42
|
-
}
|
|
43
|
-
export declare type SendToRecipients = string[];
|
|
44
|
-
export declare type RoomId = string | string[];
|
|
45
|
-
export declare type MessageModel = Message | NewMessageModel[] | EditMessageModel | MessageModelDocument[] | NewMessageFormattedForServer[] | NewMessageFormattedForServer;
|
|
46
|
-
export interface MessageModelDocument extends Omit<NewMessageModel, 'createdAt'> {
|
|
47
|
-
id: string;
|
|
48
|
-
createdAt: firebase.firestore.Timestamp;
|
|
49
|
-
}
|
|
50
|
-
export declare type SendFromFeedRecipient = {
|
|
51
|
-
id: string;
|
|
52
|
-
} | SendFromFeedRecipientArray;
|
|
53
|
-
export interface SendFromFeedRecipientArray {
|
|
54
|
-
recipients: {
|
|
55
|
-
id: string;
|
|
56
|
-
name: string;
|
|
57
|
-
}[];
|
|
58
|
-
}
|
|
59
|
-
export declare const recipientHasId: (recipient: SendFromFeedRecipient) => recipient is {
|
|
60
|
-
id: string;
|
|
61
|
-
};
|
|
62
|
-
export declare const recipientHasMembers: (recipient: SendFromFeedRecipient) => recipient is SendFromFeedRecipientArray;
|
|
63
|
-
export declare type SendFromFeedRecipients = SendFromFeedRecipient[];
|
|
64
|
-
export interface SendFromFeedModel extends Omit<NewMessageModel, 'id'> {
|
|
65
|
-
recipients: SendFromFeedRecipientArray['recipients'];
|
|
66
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ReactionConfig } from './types';
|
|
2
|
-
import { LastMessageServer } from '../Room/types';
|
|
3
|
-
export default class {
|
|
4
|
-
private config;
|
|
5
|
-
constructor(config: ReactionConfig);
|
|
6
|
-
get path(): string;
|
|
7
|
-
verb(): {
|
|
8
|
-
add: string;
|
|
9
|
-
remove: string;
|
|
10
|
-
};
|
|
11
|
-
add(): Promise<void>;
|
|
12
|
-
remove(): Promise<void>;
|
|
13
|
-
makeReactionDescriptionText(remove?: boolean): string;
|
|
14
|
-
makeLastMessage(options: {
|
|
15
|
-
remove?: boolean;
|
|
16
|
-
}): LastMessageServer;
|
|
17
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
export interface ReactionConfig {
|
|
2
|
-
myName?: string;
|
|
3
|
-
messageId: string;
|
|
4
|
-
roomId: string;
|
|
5
|
-
text: string;
|
|
6
|
-
reaction: ReactionOption;
|
|
7
|
-
/**
|
|
8
|
-
* An **optional** string or pure function to override the default description text.
|
|
9
|
-
* The description text is used to create the last message that shows up in the inbox.
|
|
10
|
-
*
|
|
11
|
-
* By default, this will look something like: <name> <reaction>d "<message text>". For instance: Fernando liked "I want a pair of PATOS Shoes."
|
|
12
|
-
*
|
|
13
|
-
* If `null`, text will be an empty string.
|
|
14
|
-
*
|
|
15
|
-
* A verb for like will be 'liked', and if it's a removal, then it's 'unlike'. This pattern follows for other reactions too.
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```js
|
|
19
|
-
* const reaction = new Reaction({
|
|
20
|
-
* descriptionText: ({ reaction, name, text, verb, remove }) => remove ? \`${name} happily ${verb} ${text}\` : \`${name} sadly ${verb} ${text}\`,
|
|
21
|
-
* text: message.text, roomId: room.id, messageId: message.id, text: message.text
|
|
22
|
-
* })
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
descriptionText?: null | string | ((info: {
|
|
26
|
-
reaction: ReactionOption;
|
|
27
|
-
name: string;
|
|
28
|
-
text: string;
|
|
29
|
-
verb: string;
|
|
30
|
-
remove: boolean;
|
|
31
|
-
}) => string);
|
|
32
|
-
}
|
|
33
|
-
export declare type ReactionOption = 'like' | 'love';
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { RoomModel, RoomMembers } from './types';
|
|
2
|
-
export default class {
|
|
3
|
-
private room;
|
|
4
|
-
constructor(room: RoomModel);
|
|
5
|
-
get path(): string;
|
|
6
|
-
get messagesPath(): string;
|
|
7
|
-
getUnreadCount(): number;
|
|
8
|
-
/**
|
|
9
|
-
* Views message function for a room.
|
|
10
|
-
*
|
|
11
|
-
* To use this in a react component out-of-the-box, I recommend using the [[useViewMessage]] hook. It will handle all this for you.
|
|
12
|
-
*
|
|
13
|
-
* @param messageId ID of the message you're viewing
|
|
14
|
-
* @param messageCreatedAt Timestamp of the message which you're viewing, found in message.createdAt
|
|
15
|
-
*
|
|
16
|
-
* @remarks
|
|
17
|
-
* If you aren't using the useViewMessage hook:
|
|
18
|
-
* This function should be used with care. You don't want to send 500 writes if someone views 500 messages.
|
|
19
|
-
* You only want to send a read for the most recent message being viewed, assuming it's someone else's message.
|
|
20
|
-
* Also, you should be memoizing the last message you sent that you viewed to avoid repeats. Again, this is all handled by useViewMessages.
|
|
21
|
-
*
|
|
22
|
-
* @returns Promise that only resolves while you're online.
|
|
23
|
-
*/
|
|
24
|
-
viewMessage(messageId: string, messageCreatedAt: Date): Promise<void>;
|
|
25
|
-
getArrayOfMembersOtherThanMe(): import("./types").RoomMember[];
|
|
26
|
-
getName(): string;
|
|
27
|
-
getInitials(maxNumberOfInitials?: number): string;
|
|
28
|
-
/**
|
|
29
|
-
* @returns
|
|
30
|
-
* A promise.all array of responses. The first array is for adding a system message; the second is for updating the room object.
|
|
31
|
-
*/
|
|
32
|
-
leave(): Promise<void | null>;
|
|
33
|
-
join(): Promise<void> | null;
|
|
34
|
-
addMembers(members: RoomMembers): Promise<void>;
|
|
35
|
-
removeMembers(members: RoomMembers): Promise<void>;
|
|
36
|
-
create(): Promise<void | null>;
|
|
37
|
-
createViaCallable(): Promise<firebase.functions.HttpsCallableResult>;
|
|
38
|
-
edit(): Promise<void> | null;
|
|
39
|
-
getUsersTyping(): import("./types").RoomMember[];
|
|
40
|
-
updateOnFirebase(): Promise<void>;
|
|
41
|
-
addToFirebase(): Promise<void>;
|
|
42
|
-
}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { FieldValue, Timestamp } from '@firebase/firestore-types';
|
|
2
|
-
import * as firebase from 'firebase';
|
|
3
|
-
export interface LastMessage {
|
|
4
|
-
createdAt: Date;
|
|
5
|
-
text: string;
|
|
6
|
-
name: string;
|
|
7
|
-
system: boolean;
|
|
8
|
-
id: string;
|
|
9
|
-
}
|
|
10
|
-
export interface LastMessageServer extends Omit<LastMessage, 'createdAt'> {
|
|
11
|
-
createdAt: FieldValue;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Unread count schema in the members dictionary for each room
|
|
15
|
-
*/
|
|
16
|
-
export interface UnreadCount {
|
|
17
|
-
count: number;
|
|
18
|
-
/**
|
|
19
|
-
* The timestamp of the last time you cleared messages.
|
|
20
|
-
*/
|
|
21
|
-
lastCleared: Date;
|
|
22
|
-
/**
|
|
23
|
-
* Details of the last message you saw.
|
|
24
|
-
*/
|
|
25
|
-
lastSeen: {
|
|
26
|
-
id: string;
|
|
27
|
-
createdAt: Date;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
export interface UnreadCountDocument extends Omit<UnreadCount, 'lastCleared'> {
|
|
31
|
-
lastCleared: firebase.firestore.Timestamp;
|
|
32
|
-
}
|
|
33
|
-
export interface UnreadCountServer extends Omit<UnreadCount, 'lastCleared'> {
|
|
34
|
-
lastCleared: firebase.firestore.FieldValue;
|
|
35
|
-
}
|
|
36
|
-
export interface RoomPropertiesModel {
|
|
37
|
-
id: string;
|
|
38
|
-
avatar?: string;
|
|
39
|
-
members?: RoomMembers;
|
|
40
|
-
name?: string;
|
|
41
|
-
}
|
|
42
|
-
export interface Typing {
|
|
43
|
-
state: 'typing' | 'nothing';
|
|
44
|
-
lastChanged: typeof firebase.database.ServerValue.TIMESTAMP;
|
|
45
|
-
}
|
|
46
|
-
export interface RoomMember {
|
|
47
|
-
typing?: Typing;
|
|
48
|
-
exists: boolean;
|
|
49
|
-
name: string;
|
|
50
|
-
nickname?: string;
|
|
51
|
-
avatar?: string;
|
|
52
|
-
joinedAt: FieldValue;
|
|
53
|
-
unreadCount?: UnreadCount;
|
|
54
|
-
}
|
|
55
|
-
export interface ExistingRoomMember {
|
|
56
|
-
nickname?: string;
|
|
57
|
-
avatar?: string;
|
|
58
|
-
}
|
|
59
|
-
export interface NewRoomMember extends RoomMember {
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Dictionary of members in the room.
|
|
63
|
-
*/
|
|
64
|
-
export interface RoomMembers {
|
|
65
|
-
[id: string]: RoomMember;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Configuration for the room class. Members doesn't need to include me.
|
|
69
|
-
*
|
|
70
|
-
* @example
|
|
71
|
-
* ```
|
|
72
|
-
* const room = new Room(config: NewRoomModel)
|
|
73
|
-
* await room.create()
|
|
74
|
-
* ```
|
|
75
|
-
*/
|
|
76
|
-
export interface NewRoomModel extends Omit<RoomPropertiesModel, 'id'> {
|
|
77
|
-
members: RoomMembers;
|
|
78
|
-
}
|
|
79
|
-
export interface CreateCallableRoomModel extends Partial<RoomPropertiesModel> {
|
|
80
|
-
recipients: string[];
|
|
81
|
-
}
|
|
82
|
-
export interface EditRoomModel extends Omit<RoomPropertiesModel, 'members'> {
|
|
83
|
-
members?: RoomMembers;
|
|
84
|
-
name?: string;
|
|
85
|
-
lastMessage?: LastMessage;
|
|
86
|
-
}
|
|
87
|
-
export interface ExistingRoomModel extends RoomPropertiesModel {
|
|
88
|
-
lastMessage: LastMessage;
|
|
89
|
-
members: RoomMembers;
|
|
90
|
-
unreadCount?: number;
|
|
91
|
-
createdAt: FieldValue;
|
|
92
|
-
lastEdited: FieldValue;
|
|
93
|
-
currentMembers: string[];
|
|
94
|
-
}
|
|
95
|
-
export interface CreateRoomModel extends Omit<Omit<ExistingRoomModel, 'id'>, 'lastMessage'> {
|
|
96
|
-
lastMessage: LastMessageServer;
|
|
97
|
-
}
|
|
98
|
-
export interface CreateRoomCallableModel extends Omit<RoomPropertiesModel, 'id'> {
|
|
99
|
-
members: RoomMembers;
|
|
100
|
-
}
|
|
101
|
-
interface LastMessageDocument extends Omit<LastMessage, 'createdAt'> {
|
|
102
|
-
createdAt: Timestamp;
|
|
103
|
-
}
|
|
104
|
-
export interface ExistingRoomDocument extends Omit<ExistingRoomModel, 'lastMessage'> {
|
|
105
|
-
lastMessage: LastMessageDocument;
|
|
106
|
-
}
|
|
107
|
-
export declare type RoomModel = RoomPropertiesModel | NewRoomModel | ExistingRoomModel | CreateCallableRoomModel;
|
|
108
|
-
export declare function currentUserExists(user: firebase.User | null): user is firebase.User;
|
|
109
|
-
export declare function roomIsEditModel(room: RoomModel): room is EditRoomModel;
|
|
110
|
-
export declare function roomIsNewModel(room: RoomModel): room is NewRoomModel;
|
|
111
|
-
export declare function roomIsCreateCallable(room: RoomModel): room is CreateCallableRoomModel;
|
|
112
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { InputProps } from '../../types';
|
|
3
|
-
declare const _default: React.MemoExoticComponent<{
|
|
4
|
-
(props: InputProps<import("../../../../classes/Message/types").NewMessageModel>): JSX.Element;
|
|
5
|
-
displayName: string;
|
|
6
|
-
}>;
|
|
7
|
-
export default _default;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { ComposerProps } from '../types';
|
|
3
|
-
import { NewMessageModel } from '../../../classes/Message/types';
|
|
4
|
-
declare const _default: React.MemoExoticComponent<{
|
|
5
|
-
(props: ComposerProps<NewMessageModel>): JSX.Element;
|
|
6
|
-
displayName: string;
|
|
7
|
-
}>;
|
|
8
|
-
export default _default;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { MessageMedia } from '../../../../classes/Message/types';
|
|
3
|
-
declare const _default: React.MemoExoticComponent<{
|
|
4
|
-
(props: Pick<MessageMedia, "width" | "height" | "url" | "uri">): JSX.Element;
|
|
5
|
-
displayName: string;
|
|
6
|
-
}>;
|
|
7
|
-
export default _default;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { MessageProps } from '../types';
|
|
3
|
-
import { NewMessageModel } from '../../../classes/Message/types';
|
|
4
|
-
declare const _default: React.MemoExoticComponent<{
|
|
5
|
-
<Model extends NewMessageModel = NewMessageModel>(props: MessageProps<Model>): JSX.Element;
|
|
6
|
-
displayName: string;
|
|
7
|
-
}>;
|
|
8
|
-
export default _default;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { NewMessageModel } from '../../classes/Message/types';
|
|
3
|
-
import { ChatProps } from './types';
|
|
4
|
-
declare function Chat<MessageModel extends NewMessageModel = NewMessageModel>(props: ChatProps<MessageModel>): JSX.Element;
|
|
5
|
-
declare namespace Chat {
|
|
6
|
-
var append: <M>(state: M[], messages: M[]) => M[];
|
|
7
|
-
}
|
|
8
|
-
export default Chat;
|