@replyke/core 7.0.0-beta.100 → 7.0.0-beta.103
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/dist/cjs/config/axios.d.ts +1 -0
- package/dist/cjs/config/axios.js +4 -4
- package/dist/cjs/config/axios.js.map +1 -1
- package/dist/cjs/context/chat-context.d.ts +17 -0
- package/dist/cjs/context/chat-context.js +299 -0
- package/dist/cjs/context/chat-context.js.map +1 -0
- package/dist/cjs/context/conversation-context.d.ts +14 -0
- package/dist/cjs/context/conversation-context.js +231 -0
- package/dist/cjs/context/conversation-context.js.map +1 -0
- package/dist/cjs/context/index.d.ts +3 -0
- package/dist/cjs/context/index.js +13 -1
- package/dist/cjs/context/index.js.map +1 -1
- package/dist/cjs/context/message-thread-context.d.ts +13 -0
- package/dist/cjs/context/message-thread-context.js +32 -0
- package/dist/cjs/context/message-thread-context.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/index.d.ts +10 -0
- package/dist/cjs/hooks/chat/conversations/index.js +17 -0
- package/dist/cjs/hooks/chat/conversations/index.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/useConversation.d.ts +18 -0
- package/dist/cjs/hooks/chat/conversations/useConversation.js +134 -0
- package/dist/cjs/hooks/chat/conversations/useConversation.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/useConversationMembers.d.ts +18 -0
- package/dist/cjs/hooks/chat/conversations/useConversationMembers.js +219 -0
- package/dist/cjs/hooks/chat/conversations/useConversationMembers.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/useConversations.d.ts +17 -0
- package/dist/cjs/hooks/chat/conversations/useConversations.js +193 -0
- package/dist/cjs/hooks/chat/conversations/useConversations.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/useCreateDirectConversation.d.ts +6 -0
- package/dist/cjs/hooks/chat/conversations/useCreateDirectConversation.js +83 -0
- package/dist/cjs/hooks/chat/conversations/useCreateDirectConversation.js.map +1 -0
- package/dist/cjs/hooks/chat/conversations/useSpaceConversation.d.ts +10 -0
- package/dist/cjs/hooks/chat/conversations/useSpaceConversation.js +91 -0
- package/dist/cjs/hooks/chat/conversations/useSpaceConversation.js.map +1 -0
- package/dist/cjs/hooks/chat/index.d.ts +15 -0
- package/dist/cjs/hooks/chat/index.js +36 -0
- package/dist/cjs/hooks/chat/index.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/index.d.ts +12 -0
- package/dist/cjs/hooks/chat/messages/index.js +19 -0
- package/dist/cjs/hooks/chat/messages/index.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useChatMessages.d.ts +15 -0
- package/dist/cjs/hooks/chat/messages/useChatMessages.js +228 -0
- package/dist/cjs/hooks/chat/messages/useChatMessages.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useDeleteMessage.d.ts +6 -0
- package/dist/cjs/hooks/chat/messages/useDeleteMessage.js +81 -0
- package/dist/cjs/hooks/chat/messages/useDeleteMessage.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useEditMessage.d.ts +13 -0
- package/dist/cjs/hooks/chat/messages/useEditMessage.js +81 -0
- package/dist/cjs/hooks/chat/messages/useEditMessage.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useMessageThread.d.ts +15 -0
- package/dist/cjs/hooks/chat/messages/useMessageThread.js +38 -0
- package/dist/cjs/hooks/chat/messages/useMessageThread.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useSendMessage.d.ts +17 -0
- package/dist/cjs/hooks/chat/messages/useSendMessage.js +156 -0
- package/dist/cjs/hooks/chat/messages/useSendMessage.js.map +1 -0
- package/dist/cjs/hooks/chat/messages/useToggleReaction.d.ts +11 -0
- package/dist/cjs/hooks/chat/messages/useToggleReaction.js +95 -0
- package/dist/cjs/hooks/chat/messages/useToggleReaction.js.map +1 -0
- package/dist/cjs/hooks/chat/useChatSocket.d.ts +11 -0
- package/dist/cjs/hooks/chat/useChatSocket.js +13 -0
- package/dist/cjs/hooks/chat/useChatSocket.js.map +1 -0
- package/dist/cjs/hooks/chat/useConversationData.d.ts +31 -0
- package/dist/cjs/hooks/chat/useConversationData.js +47 -0
- package/dist/cjs/hooks/chat/useConversationData.js.map +1 -0
- package/dist/cjs/hooks/chat/useMarkConversationAsRead.d.ts +10 -0
- package/dist/cjs/hooks/chat/useMarkConversationAsRead.js +87 -0
- package/dist/cjs/hooks/chat/useMarkConversationAsRead.js.map +1 -0
- package/dist/cjs/hooks/chat/useReportMessage.d.ts +8 -0
- package/dist/cjs/hooks/chat/useReportMessage.js +76 -0
- package/dist/cjs/hooks/chat/useReportMessage.js.map +1 -0
- package/dist/cjs/hooks/chat/useTotalUnreadCount.d.ts +6 -0
- package/dist/cjs/hooks/chat/useTotalUnreadCount.js +14 -0
- package/dist/cjs/hooks/chat/useTotalUnreadCount.js.map +1 -0
- package/dist/cjs/hooks/chat/useTypingIndicator.d.ts +21 -0
- package/dist/cjs/hooks/chat/useTypingIndicator.js +68 -0
- package/dist/cjs/hooks/chat/useTypingIndicator.js.map +1 -0
- package/dist/cjs/hooks/comments/index.d.ts +1 -1
- package/dist/cjs/hooks/comments/index.js.map +1 -1
- package/dist/cjs/hooks/comments/useCommentSectionData.d.ts +7 -0
- package/dist/cjs/hooks/comments/useCommentSectionData.js +62 -38
- package/dist/cjs/hooks/comments/useCommentSectionData.js.map +1 -1
- package/dist/cjs/hooks/spaces/index.d.ts +4 -0
- package/dist/cjs/hooks/spaces/index.js +6 -1
- package/dist/cjs/hooks/spaces/index.js.map +1 -1
- package/dist/cjs/hooks/spaces/useSpaceMentions.d.ts +24 -0
- package/dist/cjs/hooks/spaces/useSpaceMentions.js +191 -0
- package/dist/cjs/hooks/spaces/useSpaceMentions.js.map +1 -0
- package/dist/cjs/hooks/spaces/useUnbanMember.d.ts +11 -0
- package/dist/cjs/hooks/spaces/useUnbanMember.js +71 -0
- package/dist/cjs/hooks/spaces/useUnbanMember.js.map +1 -0
- package/dist/cjs/hooks/users/index.d.ts +1 -1
- package/dist/cjs/hooks/users/index.js +3 -3
- package/dist/cjs/hooks/users/index.js.map +1 -1
- package/dist/cjs/hooks/users/{useMentions.d.ts → useUserMentions.d.ts} +8 -4
- package/dist/cjs/hooks/users/{useMentions.js → useUserMentions.js} +22 -17
- package/dist/cjs/hooks/users/useUserMentions.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -5
- package/dist/cjs/index.js +70 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces/models/File.d.ts +1 -0
- package/dist/cjs/interfaces/models/IChatMessage.d.ts +34 -0
- package/dist/cjs/interfaces/models/IChatMessage.js +3 -0
- package/dist/cjs/interfaces/models/IChatMessage.js.map +1 -0
- package/dist/cjs/interfaces/models/IConversation.d.ts +25 -0
- package/dist/cjs/interfaces/models/IConversation.js +3 -0
- package/dist/cjs/interfaces/models/IConversation.js.map +1 -0
- package/dist/cjs/interfaces/models/IConversationMember.d.ts +16 -0
- package/dist/cjs/interfaces/models/IConversationMember.js +3 -0
- package/dist/cjs/interfaces/models/IConversationMember.js.map +1 -0
- package/dist/cjs/interfaces/models/Mention.d.ts +8 -1
- package/dist/cjs/store/api/spacesApi.d.ts +364 -0
- package/dist/cjs/store/api/spacesApi.js +20 -3
- package/dist/cjs/store/api/spacesApi.js.map +1 -1
- package/dist/cjs/store/hooks.d.ts +1 -0
- package/dist/cjs/store/index.d.ts +2 -0
- package/dist/cjs/store/replykeReducers.d.ts +2 -0
- package/dist/cjs/store/replykeReducers.js +2 -0
- package/dist/cjs/store/replykeReducers.js.map +1 -1
- package/dist/cjs/store/rootReducer.d.ts +3 -0
- package/dist/cjs/store/slices/chatSlice.d.ts +120 -0
- package/dist/cjs/store/slices/chatSlice.js +369 -0
- package/dist/cjs/store/slices/chatSlice.js.map +1 -0
- package/dist/cjs/store/slices/entityListsSlice.d.ts +168 -24
- package/dist/cjs/store/slices/spaceListsSlice.d.ts +24 -0
- package/dist/cjs/store/slices/userSlice.d.ts +16 -0
- package/dist/cjs/types/socket.d.ts +73 -0
- package/dist/cjs/types/socket.js +3 -0
- package/dist/cjs/types/socket.js.map +1 -0
- package/dist/esm/config/axios.d.ts +1 -0
- package/dist/esm/config/axios.js +1 -1
- package/dist/esm/config/axios.js.map +1 -1
- package/dist/esm/context/chat-context.d.ts +17 -0
- package/dist/esm/context/chat-context.js +291 -0
- package/dist/esm/context/chat-context.js.map +1 -0
- package/dist/esm/context/conversation-context.d.ts +14 -0
- package/dist/esm/context/conversation-context.js +223 -0
- package/dist/esm/context/conversation-context.js.map +1 -0
- package/dist/esm/context/index.d.ts +3 -0
- package/dist/esm/context/index.js +3 -0
- package/dist/esm/context/index.js.map +1 -1
- package/dist/esm/context/message-thread-context.d.ts +13 -0
- package/dist/esm/context/message-thread-context.js +24 -0
- package/dist/esm/context/message-thread-context.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/index.d.ts +10 -0
- package/dist/esm/hooks/chat/conversations/index.js +6 -0
- package/dist/esm/hooks/chat/conversations/index.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/useConversation.d.ts +18 -0
- package/dist/esm/hooks/chat/conversations/useConversation.js +129 -0
- package/dist/esm/hooks/chat/conversations/useConversation.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/useConversationMembers.d.ts +18 -0
- package/dist/esm/hooks/chat/conversations/useConversationMembers.js +214 -0
- package/dist/esm/hooks/chat/conversations/useConversationMembers.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/useConversations.d.ts +17 -0
- package/dist/esm/hooks/chat/conversations/useConversations.js +188 -0
- package/dist/esm/hooks/chat/conversations/useConversations.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/useCreateDirectConversation.d.ts +6 -0
- package/dist/esm/hooks/chat/conversations/useCreateDirectConversation.js +78 -0
- package/dist/esm/hooks/chat/conversations/useCreateDirectConversation.js.map +1 -0
- package/dist/esm/hooks/chat/conversations/useSpaceConversation.d.ts +10 -0
- package/dist/esm/hooks/chat/conversations/useSpaceConversation.js +86 -0
- package/dist/esm/hooks/chat/conversations/useSpaceConversation.js.map +1 -0
- package/dist/esm/hooks/chat/index.d.ts +15 -0
- package/dist/esm/hooks/chat/index.js +13 -0
- package/dist/esm/hooks/chat/index.js.map +1 -0
- package/dist/esm/hooks/chat/messages/index.d.ts +12 -0
- package/dist/esm/hooks/chat/messages/index.js +7 -0
- package/dist/esm/hooks/chat/messages/index.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useChatMessages.d.ts +15 -0
- package/dist/esm/hooks/chat/messages/useChatMessages.js +223 -0
- package/dist/esm/hooks/chat/messages/useChatMessages.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useDeleteMessage.d.ts +6 -0
- package/dist/esm/hooks/chat/messages/useDeleteMessage.js +76 -0
- package/dist/esm/hooks/chat/messages/useDeleteMessage.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useEditMessage.d.ts +13 -0
- package/dist/esm/hooks/chat/messages/useEditMessage.js +76 -0
- package/dist/esm/hooks/chat/messages/useEditMessage.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useMessageThread.d.ts +15 -0
- package/dist/esm/hooks/chat/messages/useMessageThread.js +33 -0
- package/dist/esm/hooks/chat/messages/useMessageThread.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useSendMessage.d.ts +17 -0
- package/dist/esm/hooks/chat/messages/useSendMessage.js +151 -0
- package/dist/esm/hooks/chat/messages/useSendMessage.js.map +1 -0
- package/dist/esm/hooks/chat/messages/useToggleReaction.d.ts +11 -0
- package/dist/esm/hooks/chat/messages/useToggleReaction.js +90 -0
- package/dist/esm/hooks/chat/messages/useToggleReaction.js.map +1 -0
- package/dist/esm/hooks/chat/useChatSocket.d.ts +11 -0
- package/dist/esm/hooks/chat/useChatSocket.js +11 -0
- package/dist/esm/hooks/chat/useChatSocket.js.map +1 -0
- package/dist/esm/hooks/chat/useConversationData.d.ts +31 -0
- package/dist/esm/hooks/chat/useConversationData.js +42 -0
- package/dist/esm/hooks/chat/useConversationData.js.map +1 -0
- package/dist/esm/hooks/chat/useMarkConversationAsRead.d.ts +10 -0
- package/dist/esm/hooks/chat/useMarkConversationAsRead.js +82 -0
- package/dist/esm/hooks/chat/useMarkConversationAsRead.js.map +1 -0
- package/dist/esm/hooks/chat/useReportMessage.d.ts +8 -0
- package/dist/esm/hooks/chat/useReportMessage.js +71 -0
- package/dist/esm/hooks/chat/useReportMessage.js.map +1 -0
- package/dist/esm/hooks/chat/useTotalUnreadCount.d.ts +6 -0
- package/dist/esm/hooks/chat/useTotalUnreadCount.js +12 -0
- package/dist/esm/hooks/chat/useTotalUnreadCount.js.map +1 -0
- package/dist/esm/hooks/chat/useTypingIndicator.d.ts +21 -0
- package/dist/esm/hooks/chat/useTypingIndicator.js +66 -0
- package/dist/esm/hooks/chat/useTypingIndicator.js.map +1 -0
- package/dist/esm/hooks/comments/index.d.ts +1 -1
- package/dist/esm/hooks/comments/index.js.map +1 -1
- package/dist/esm/hooks/comments/useCommentSectionData.d.ts +7 -0
- package/dist/esm/hooks/comments/useCommentSectionData.js +62 -38
- package/dist/esm/hooks/comments/useCommentSectionData.js.map +1 -1
- package/dist/esm/hooks/spaces/index.d.ts +4 -0
- package/dist/esm/hooks/spaces/index.js +3 -0
- package/dist/esm/hooks/spaces/index.js.map +1 -1
- package/dist/esm/hooks/spaces/useSpaceMentions.d.ts +24 -0
- package/dist/esm/hooks/spaces/useSpaceMentions.js +186 -0
- package/dist/esm/hooks/spaces/useSpaceMentions.js.map +1 -0
- package/dist/esm/hooks/spaces/useUnbanMember.d.ts +11 -0
- package/dist/esm/hooks/spaces/useUnbanMember.js +66 -0
- package/dist/esm/hooks/spaces/useUnbanMember.js.map +1 -0
- package/dist/esm/hooks/users/index.d.ts +1 -1
- package/dist/esm/hooks/users/index.js +1 -1
- package/dist/esm/hooks/users/index.js.map +1 -1
- package/dist/esm/hooks/users/{useMentions.d.ts → useUserMentions.d.ts} +8 -4
- package/dist/esm/hooks/users/{useMentions.js → useUserMentions.js} +22 -17
- package/dist/esm/hooks/users/useUserMentions.js.map +1 -0
- package/dist/esm/index.d.ts +11 -5
- package/dist/esm/index.js +7 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces/models/File.d.ts +1 -0
- package/dist/esm/interfaces/models/IChatMessage.d.ts +34 -0
- package/dist/esm/interfaces/models/IChatMessage.js +2 -0
- package/dist/esm/interfaces/models/IChatMessage.js.map +1 -0
- package/dist/esm/interfaces/models/IConversation.d.ts +25 -0
- package/dist/esm/interfaces/models/IConversation.js +2 -0
- package/dist/esm/interfaces/models/IConversation.js.map +1 -0
- package/dist/esm/interfaces/models/IConversationMember.d.ts +16 -0
- package/dist/esm/interfaces/models/IConversationMember.js +2 -0
- package/dist/esm/interfaces/models/IConversationMember.js.map +1 -0
- package/dist/esm/interfaces/models/Mention.d.ts +8 -1
- package/dist/esm/store/api/spacesApi.d.ts +364 -0
- package/dist/esm/store/api/spacesApi.js +19 -2
- package/dist/esm/store/api/spacesApi.js.map +1 -1
- package/dist/esm/store/hooks.d.ts +1 -0
- package/dist/esm/store/index.d.ts +2 -0
- package/dist/esm/store/replykeReducers.d.ts +2 -0
- package/dist/esm/store/replykeReducers.js +2 -0
- package/dist/esm/store/replykeReducers.js.map +1 -1
- package/dist/esm/store/rootReducer.d.ts +3 -0
- package/dist/esm/store/slices/chatSlice.d.ts +120 -0
- package/dist/esm/store/slices/chatSlice.js +350 -0
- package/dist/esm/store/slices/chatSlice.js.map +1 -0
- package/dist/esm/store/slices/entityListsSlice.d.ts +168 -24
- package/dist/esm/store/slices/spaceListsSlice.d.ts +24 -0
- package/dist/esm/store/slices/userSlice.d.ts +16 -0
- package/dist/esm/types/socket.d.ts +73 -0
- package/dist/esm/types/socket.js +2 -0
- package/dist/esm/types/socket.js.map +1 -0
- package/package.json +3 -2
- package/dist/cjs/hooks/users/useMentions.js.map +0 -1
- package/dist/esm/hooks/users/useMentions.js.map +0 -1
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
38
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
39
|
+
if (ar || !(i in from)) {
|
|
40
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
41
|
+
ar[i] = from[i];
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
45
|
+
};
|
|
46
|
+
import { useState, useEffect, useCallback, useRef } from "react";
|
|
47
|
+
import useFetchManySpaces from "./useFetchManySpaces";
|
|
48
|
+
import { handleError } from "../../utils/handleError";
|
|
49
|
+
function escapeRegex(str) {
|
|
50
|
+
return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
51
|
+
}
|
|
52
|
+
var useSpaceMentions = function (_a) {
|
|
53
|
+
var content = _a.content, setContent = _a.setContent, focus = _a.focus, cursorPosition = _a.cursorPosition, isSelectionActive = _a.isSelectionActive, _b = _a.trigger, trigger = _b === void 0 ? "#" : _b, _c = _a.minChars, minChars = _c === void 0 ? 3 : _c, _d = _a.debounceDelay, debounceDelay = _d === void 0 ? 1000 : _d, _e = _a.validPattern, validPattern = _e === void 0 ? "[\\w.\\-]+" : _e;
|
|
54
|
+
var fetchManySpaces = useFetchManySpaces();
|
|
55
|
+
var _f = useState(false), loadingState = _f[0], setLoadingState = _f[1];
|
|
56
|
+
var _g = useState([]), mentions = _g[0], setMentions = _g[1];
|
|
57
|
+
var _h = useState(false), isSpaceMentionActive = _h[0], setIsSpaceMentionActive = _h[1];
|
|
58
|
+
var _j = useState(""), mentionTrigger = _j[0], setMentionTrigger = _j[1];
|
|
59
|
+
var _k = useState([]), spaceMentionSuggestions = _k[0], setSpaceMentionSuggestions = _k[1];
|
|
60
|
+
var debounceTimerRef = useRef(null);
|
|
61
|
+
var resetSpaceMentions = function () {
|
|
62
|
+
setMentions([]);
|
|
63
|
+
setIsSpaceMentionActive(false);
|
|
64
|
+
setMentionTrigger("");
|
|
65
|
+
setSpaceMentionSuggestions([]);
|
|
66
|
+
setLoadingState(false);
|
|
67
|
+
};
|
|
68
|
+
var addSpaceMention = function (space) {
|
|
69
|
+
if (!space.slug)
|
|
70
|
+
throw new Error("Space has no slug set");
|
|
71
|
+
setMentions(function (prevMentions) {
|
|
72
|
+
if (prevMentions.some(function (mention) { return mention.id === space.id; })) {
|
|
73
|
+
return prevMentions;
|
|
74
|
+
}
|
|
75
|
+
return __spreadArray(__spreadArray([], prevMentions, true), [
|
|
76
|
+
{
|
|
77
|
+
id: space.id,
|
|
78
|
+
slug: space.slug,
|
|
79
|
+
type: "space",
|
|
80
|
+
},
|
|
81
|
+
], false);
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
var handleSpaceMentionClick = function (space) {
|
|
85
|
+
var mentionRegex = new RegExp("".concat(escapeRegex(trigger)).concat(escapeRegex(mentionTrigger), "(\\s|$)"));
|
|
86
|
+
setContent(content.replace(mentionRegex, "".concat(trigger).concat(space.slug, " ")));
|
|
87
|
+
addSpaceMention(space);
|
|
88
|
+
setIsSpaceMentionActive(false);
|
|
89
|
+
setMentionTrigger("");
|
|
90
|
+
setSpaceMentionSuggestions([]);
|
|
91
|
+
setLoadingState(false);
|
|
92
|
+
focus();
|
|
93
|
+
};
|
|
94
|
+
var handleFetchSpaceSuggestions = useCallback(function (query) { return __awaiter(void 0, void 0, void 0, function () {
|
|
95
|
+
var result, err_1;
|
|
96
|
+
return __generator(this, function (_a) {
|
|
97
|
+
switch (_a.label) {
|
|
98
|
+
case 0:
|
|
99
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
100
|
+
return [4 /*yield*/, fetchManySpaces({
|
|
101
|
+
searchAny: query,
|
|
102
|
+
limit: 5,
|
|
103
|
+
})];
|
|
104
|
+
case 1:
|
|
105
|
+
result = _a.sent();
|
|
106
|
+
if (result.data && result.data.length > 0) {
|
|
107
|
+
setSpaceMentionSuggestions(result.data);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
setSpaceMentionSuggestions([]);
|
|
111
|
+
setIsSpaceMentionActive(false);
|
|
112
|
+
}
|
|
113
|
+
return [3 /*break*/, 4];
|
|
114
|
+
case 2:
|
|
115
|
+
err_1 = _a.sent();
|
|
116
|
+
handleError(err_1, "Error fetching space suggestions");
|
|
117
|
+
return [3 /*break*/, 4];
|
|
118
|
+
case 3:
|
|
119
|
+
setLoadingState(false);
|
|
120
|
+
return [7 /*endfinally*/];
|
|
121
|
+
case 4: return [2 /*return*/];
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
}); }, [fetchManySpaces]);
|
|
125
|
+
useEffect(function () {
|
|
126
|
+
var start = cursorPosition - 1;
|
|
127
|
+
// Move backward from cursor to find the word directly before the cursor
|
|
128
|
+
while (start >= 0 && content[start] !== " ") {
|
|
129
|
+
start--;
|
|
130
|
+
}
|
|
131
|
+
// Extract potential trigger word (start + 1 because `start` is on the space)
|
|
132
|
+
var potentialTrigger = content.slice(start + 1, cursorPosition);
|
|
133
|
+
var validMentionPattern = new RegExp("^" + escapeRegex(trigger) + validPattern + "$");
|
|
134
|
+
if (!isSelectionActive &&
|
|
135
|
+
validMentionPattern.test(potentialTrigger) &&
|
|
136
|
+
potentialTrigger.length >= trigger.length + minChars) {
|
|
137
|
+
var triggerText_1 = potentialTrigger.slice(trigger.length);
|
|
138
|
+
setMentionTrigger(triggerText_1);
|
|
139
|
+
setIsSpaceMentionActive(true);
|
|
140
|
+
setLoadingState(true);
|
|
141
|
+
// Clear the previous debounce timer
|
|
142
|
+
if (debounceTimerRef.current) {
|
|
143
|
+
clearTimeout(debounceTimerRef.current);
|
|
144
|
+
}
|
|
145
|
+
// Set a new debounce timer
|
|
146
|
+
debounceTimerRef.current = setTimeout(function () {
|
|
147
|
+
handleFetchSpaceSuggestions(triggerText_1);
|
|
148
|
+
}, debounceDelay);
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
if (debounceTimerRef.current) {
|
|
152
|
+
clearTimeout(debounceTimerRef.current);
|
|
153
|
+
}
|
|
154
|
+
setMentionTrigger("");
|
|
155
|
+
setIsSpaceMentionActive(false);
|
|
156
|
+
setSpaceMentionSuggestions([]);
|
|
157
|
+
setLoadingState(false);
|
|
158
|
+
}
|
|
159
|
+
// Cleanup on component unmount to clear any remaining timer
|
|
160
|
+
return function () {
|
|
161
|
+
if (debounceTimerRef.current) {
|
|
162
|
+
clearTimeout(debounceTimerRef.current);
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
}, [
|
|
166
|
+
cursorPosition,
|
|
167
|
+
isSelectionActive,
|
|
168
|
+
handleFetchSpaceSuggestions,
|
|
169
|
+
content,
|
|
170
|
+
trigger,
|
|
171
|
+
minChars,
|
|
172
|
+
debounceDelay,
|
|
173
|
+
validPattern,
|
|
174
|
+
]);
|
|
175
|
+
return {
|
|
176
|
+
isSpaceMentionActive: isSpaceMentionActive,
|
|
177
|
+
loading: loadingState,
|
|
178
|
+
spaceMentionSuggestions: spaceMentionSuggestions,
|
|
179
|
+
handleSpaceMentionClick: handleSpaceMentionClick,
|
|
180
|
+
mentions: mentions,
|
|
181
|
+
addSpaceMention: addSpaceMention,
|
|
182
|
+
resetSpaceMentions: resetSpaceMentions,
|
|
183
|
+
};
|
|
184
|
+
};
|
|
185
|
+
export default useSpaceMentions;
|
|
186
|
+
//# sourceMappingURL=useSpaceMentions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSpaceMentions.js","sourceRoot":"","sources":["../../../../src/hooks/spaces/useSpaceMentions.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SpaceMember } from "../../interfaces/models/SpaceMember";
|
|
2
|
+
export interface UnbanMemberProps {
|
|
3
|
+
spaceId: string;
|
|
4
|
+
memberId: string;
|
|
5
|
+
}
|
|
6
|
+
interface UnbanMemberResponse {
|
|
7
|
+
message: string;
|
|
8
|
+
membership: SpaceMember;
|
|
9
|
+
}
|
|
10
|
+
declare function useUnbanMember(): (props: UnbanMemberProps) => Promise<UnbanMemberResponse>;
|
|
11
|
+
export default useUnbanMember;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
import { useCallback } from "react";
|
|
38
|
+
import useProject from "../projects/useProject";
|
|
39
|
+
import useAxiosPrivate from "../../config/useAxiosPrivate";
|
|
40
|
+
function useUnbanMember() {
|
|
41
|
+
var _this = this;
|
|
42
|
+
var projectId = useProject().projectId;
|
|
43
|
+
var axios = useAxiosPrivate();
|
|
44
|
+
var unbanMember = useCallback(function (_a) { return __awaiter(_this, [_a], void 0, function (_b) {
|
|
45
|
+
var response;
|
|
46
|
+
var spaceId = _b.spaceId, memberId = _b.memberId;
|
|
47
|
+
return __generator(this, function (_c) {
|
|
48
|
+
switch (_c.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
if (!projectId) {
|
|
51
|
+
throw new Error("No projectId available.");
|
|
52
|
+
}
|
|
53
|
+
if (!spaceId || !memberId) {
|
|
54
|
+
throw new Error("spaceId and memberId are required");
|
|
55
|
+
}
|
|
56
|
+
return [4 /*yield*/, axios.patch("/".concat(projectId, "/spaces/").concat(spaceId, "/members/").concat(memberId, "/unban"))];
|
|
57
|
+
case 1:
|
|
58
|
+
response = _c.sent();
|
|
59
|
+
return [2 /*return*/, response.data];
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}); }, [projectId]);
|
|
63
|
+
return unbanMember;
|
|
64
|
+
}
|
|
65
|
+
export default useUnbanMember;
|
|
66
|
+
//# sourceMappingURL=useUnbanMember.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUnbanMember.js","sourceRoot":"","sources":["../../../../src/hooks/spaces/useUnbanMember.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAa3D,SAAS,cAAc;IAAvB,iBAwBC;IAvBS,IAAA,SAAS,GAAK,UAAU,EAAE,UAAjB,CAAkB;IACnC,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAEhC,IAAM,WAAW,GAAG,WAAW,CAC7B,gEAAO,EAAuC;;YAArC,OAAO,aAAA,EAAE,QAAQ,cAAA;;;;oBACxB,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;oBAC7C,CAAC;oBAED,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;oBACvD,CAAC;oBAEgB,qBAAM,KAAK,CAAC,KAAK,CAChC,WAAI,SAAS,qBAAW,OAAO,sBAAY,QAAQ,WAAQ,CAC5D,EAAA;;oBAFK,QAAQ,GAAG,SAEhB;oBAED,sBAAO,QAAQ,CAAC,IAA2B,EAAC;;;SAC7C,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,eAAe,cAAc,CAAC"}
|
|
@@ -3,4 +3,4 @@ export { default as useFetchUserByForeignId, type FetchUserByForeignIdProps, } f
|
|
|
3
3
|
export { default as useFetchUserByUsername, type FetchUserByUsernameProps, } from "./useFetchUserByUsername";
|
|
4
4
|
export { default as useCheckUsernameAvailability, type CheckUsernameAvailabilityProps, } from "./useCheckUsernameAvailability";
|
|
5
5
|
export { default as useFetchUserSuggestions, type FetchUserSuggestionsProps, } from "./useFetchUserSuggestions";
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as useUserMentions, type UseUserMentionsProps, type UseUserMentionsValues, } from "./useUserMentions";
|
|
@@ -3,5 +3,5 @@ export { default as useFetchUserByForeignId, } from "./useFetchUserByForeignId";
|
|
|
3
3
|
export { default as useFetchUserByUsername, } from "./useFetchUserByUsername";
|
|
4
4
|
export { default as useCheckUsernameAvailability, } from "./useCheckUsernameAvailability";
|
|
5
5
|
export { default as useFetchUserSuggestions, } from "./useFetchUserSuggestions";
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as useUserMentions, } from "./useUserMentions";
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/users/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,YAAY,GAExB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,OAAO,IAAI,sBAAsB,GAElC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,OAAO,IAAI,4BAA4B,GAExC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/users/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,YAAY,GAExB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,OAAO,IAAI,sBAAsB,GAElC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,OAAO,IAAI,4BAA4B,GAExC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,OAAO,IAAI,eAAe,GAG3B,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { User } from "../../interfaces/models/User";
|
|
2
2
|
import { Mention } from "../../interfaces/models/Mention";
|
|
3
|
-
export interface
|
|
3
|
+
export interface UseUserMentionsProps {
|
|
4
4
|
content: string;
|
|
5
5
|
setContent: (value: string) => void;
|
|
6
6
|
focus: () => void;
|
|
7
7
|
cursorPosition: number;
|
|
8
8
|
isSelectionActive: boolean;
|
|
9
|
+
trigger?: string;
|
|
10
|
+
minChars?: number;
|
|
11
|
+
debounceDelay?: number;
|
|
12
|
+
validPattern?: string;
|
|
9
13
|
}
|
|
10
|
-
export interface
|
|
14
|
+
export interface UseUserMentionsValues {
|
|
11
15
|
isMentionActive: boolean;
|
|
12
16
|
loading: boolean;
|
|
13
17
|
mentionSuggestions: User[];
|
|
@@ -16,5 +20,5 @@ export interface UseMentionsValues {
|
|
|
16
20
|
addMention: (user: User) => void;
|
|
17
21
|
resetMentions: () => void;
|
|
18
22
|
}
|
|
19
|
-
declare const
|
|
20
|
-
export default
|
|
23
|
+
declare const useUserMentions: ({ content, setContent, focus, cursorPosition, isSelectionActive, trigger, minChars, debounceDelay, validPattern, }: UseUserMentionsProps) => UseUserMentionsValues;
|
|
24
|
+
export default useUserMentions;
|
|
@@ -46,17 +46,18 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
46
46
|
import { useState, useEffect, useCallback, useRef } from "react";
|
|
47
47
|
import useFetchUserSuggestions from "./useFetchUserSuggestions";
|
|
48
48
|
import { handleError } from "../../utils/handleError";
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
function escapeRegex(str) {
|
|
50
|
+
return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
51
|
+
}
|
|
52
|
+
var useUserMentions = function (_a) {
|
|
53
|
+
var content = _a.content, setContent = _a.setContent, focus = _a.focus, cursorPosition = _a.cursorPosition, isSelectionActive = _a.isSelectionActive, _b = _a.trigger, trigger = _b === void 0 ? "@" : _b, _c = _a.minChars, minChars = _c === void 0 ? 3 : _c, _d = _a.debounceDelay, debounceDelay = _d === void 0 ? 1000 : _d, _e = _a.validPattern, validPattern = _e === void 0 ? "[\\w.]+" : _e;
|
|
51
54
|
var fetchMentionSuggestions = useFetchUserSuggestions();
|
|
52
|
-
|
|
53
|
-
var
|
|
54
|
-
var
|
|
55
|
-
var
|
|
56
|
-
var
|
|
57
|
-
var _f = useState([]), mentionSuggestions = _f[0], setMentionSuggestions = _f[1];
|
|
55
|
+
var _f = useState(false), loadingState = _f[0], setLoadingState = _f[1];
|
|
56
|
+
var _g = useState([]), mentions = _g[0], setMentions = _g[1];
|
|
57
|
+
var _h = useState(false), isMentionActive = _h[0], setIsMentionActive = _h[1];
|
|
58
|
+
var _j = useState(""), mentionTrigger = _j[0], setMentionTrigger = _j[1];
|
|
59
|
+
var _k = useState([]), mentionSuggestions = _k[0], setMentionSuggestions = _k[1];
|
|
58
60
|
var debounceTimerRef = useRef(null);
|
|
59
|
-
var debounceDelay = 1000;
|
|
60
61
|
var resetMentions = function () {
|
|
61
62
|
setMentions([]);
|
|
62
63
|
setIsMentionActive(false);
|
|
@@ -78,13 +79,14 @@ var useMentions = function (_a) {
|
|
|
78
79
|
id: user.id,
|
|
79
80
|
foreignId: user.foreignId,
|
|
80
81
|
username: user.username,
|
|
82
|
+
type: "user",
|
|
81
83
|
},
|
|
82
84
|
], false);
|
|
83
85
|
});
|
|
84
86
|
};
|
|
85
87
|
var handleMentionClick = function (user) {
|
|
86
|
-
var mentionRegex = new RegExp("
|
|
87
|
-
setContent(content.replace(mentionRegex, "
|
|
88
|
+
var mentionRegex = new RegExp("".concat(escapeRegex(trigger)).concat(escapeRegex(mentionTrigger), "(\\s|$)"));
|
|
89
|
+
setContent(content.replace(mentionRegex, "".concat(trigger).concat(user.username, " ")));
|
|
88
90
|
addMention(user);
|
|
89
91
|
setIsMentionActive(false);
|
|
90
92
|
setMentionTrigger("");
|
|
@@ -128,12 +130,11 @@ var useMentions = function (_a) {
|
|
|
128
130
|
}
|
|
129
131
|
// Extract potential trigger word (start + 1 because `start` is on the space)
|
|
130
132
|
var potentialTrigger = content.slice(start + 1, cursorPosition);
|
|
131
|
-
|
|
132
|
-
var validMentionPattern = /^@[\w.]+$/; // \w matches a-z, A-Z, 0-9, and "_"
|
|
133
|
+
var validMentionPattern = new RegExp("^" + escapeRegex(trigger) + validPattern + "$");
|
|
133
134
|
if (!isSelectionActive &&
|
|
134
135
|
validMentionPattern.test(potentialTrigger) &&
|
|
135
|
-
potentialTrigger.length
|
|
136
|
-
var triggerText_1 = potentialTrigger.slice(
|
|
136
|
+
potentialTrigger.length >= trigger.length + minChars) {
|
|
137
|
+
var triggerText_1 = potentialTrigger.slice(trigger.length);
|
|
137
138
|
setMentionTrigger(triggerText_1);
|
|
138
139
|
setIsMentionActive(true);
|
|
139
140
|
setLoadingState(true);
|
|
@@ -166,6 +167,10 @@ var useMentions = function (_a) {
|
|
|
166
167
|
isSelectionActive,
|
|
167
168
|
handleFetchMentionSuggestions,
|
|
168
169
|
content,
|
|
170
|
+
trigger,
|
|
171
|
+
minChars,
|
|
172
|
+
debounceDelay,
|
|
173
|
+
validPattern,
|
|
169
174
|
]);
|
|
170
175
|
return {
|
|
171
176
|
isMentionActive: isMentionActive,
|
|
@@ -177,5 +182,5 @@ var useMentions = function (_a) {
|
|
|
177
182
|
resetMentions: resetMentions,
|
|
178
183
|
};
|
|
179
184
|
};
|
|
180
|
-
export default
|
|
181
|
-
//# sourceMappingURL=
|
|
185
|
+
export default useUserMentions;
|
|
186
|
+
//# sourceMappingURL=useUserMentions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUserMentions.js","sourceRoot":"","sources":["../../../../src/hooks/users/useUserMentions.tsx"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export { default as getPublicFileUrl } from "./helpers/getPublicFileUrl";
|
|
|
6
6
|
export { isDevelopment, isProduction, getApiBaseUrl, getEnvVar, } from "./utils/env";
|
|
7
7
|
export { reportReasons } from "./constants/reportReasons";
|
|
8
8
|
export type { ReportReasonKey } from "./constants/reportReasons";
|
|
9
|
-
export { ReplykeProvider, ReplykeIntegrationProvider, EntityProvider, CommentSectionProvider, SpaceProvider, } from "./context";
|
|
9
|
+
export { ReplykeProvider, ReplykeIntegrationProvider, EntityProvider, CommentSectionProvider, SpaceProvider, ChatProvider, ConversationProvider, MessageThreadProvider, useChatContext, useConversationContext, useMessageThreadContext, type ChatContextValue, type ChatProviderProps, type ConversationContextValue, type ConversationProviderProps, type MessageThreadContextValue, type MessageThreadProviderProps, } from "./context";
|
|
10
10
|
export { replykeReducers, replykeApiReducer, replykeMiddleware, replykeApi, type ReplykeState, } from "./store/integration";
|
|
11
11
|
export { useProject, useProjectData } from "./hooks/projects";
|
|
12
12
|
export { useSignTestingJwt, type SignTestingJwtProps } from "./hooks/crypto";
|
|
@@ -23,11 +23,11 @@ export { useAppNotifications, useAppNotificationsActions, type UseAppNotificatio
|
|
|
23
23
|
export { useCollections, useCollectionsActions, useIsEntityInCollection, useCollectionEntitiesWrapper, type UseCollectionsProps, type UseCollectionsValues, type CreateCollectionProps, type UpdateCollectionProps, type DeleteCollectionProps, type AddToCollectionProps, type RemoveFromCollectionProps, type UseCollectionEntitiesWrapperProps, type UseCollectionEntitiesWrapperValues, } from "./hooks/collections";
|
|
24
24
|
export { useEntity, useEntityData, useCreateEntity, useDeleteEntity, useFetchEntity, useFetchEntityByForeignId, useFetchEntityByShortId, useFetchManyEntities, useIncrementEntityViews, useFetchManyEntitiesWrapper, useUpdateEntity, useFetchDrafts, usePublishDraft, type CreateEntityProps, type DeleteEntityProps, type FetchEntityProps, type FetchEntityByForeignIdProps, type FetchEntityByShortIdProps, type PublishDraftProps, type UseFetchManyEntitiesWrapperProps, type UseFetchManyEntitiesWrapperValues, } from "./hooks/entities";
|
|
25
25
|
export { useEntityList, useEntityListActions, type UseEntityListProps, type UseEntityListValues, type EntityListCreateEntityProps, type EntityListDeleteEntityProps, type EntityListFilters, type EntityListSort, type EntityListFetchOptions, } from "./hooks/entity-lists";
|
|
26
|
-
export { useSpace, useSpaceData, useFetchSpace, useFetchSpaceByShortId, useFetchSpaceBySlug, useFetchSpaceBreadcrumb, useFetchSpaceChildren, useFetchManySpaces, useCheckSlugAvailability, useCreateSpace, useUpdateSpace, useDeleteSpace, useJoinSpace, useLeaveSpace, useFetchSpaceMembers, useFetchSpaceTeam, useFetchUserSpaces, useUpdateMemberRole, useApproveMember, useDeclineMember, useRemoveMember, useModerateSpaceEntity, useModerateSpaceComment, useSpacePermissions, useCheckMyMembership, useFetchDigestConfig, useUpdateDigestConfig, useCreateRule, useUpdateRule, useDeleteRule, useFetchRule, useFetchManyRules, useReorderRules, type UseSpaceDataProps, type UseSpaceDataValues, type FetchSpaceProps, type FetchSpaceByShortIdProps, type FetchSpaceBySlugProps, type FetchSpaceBreadcrumbProps, type FetchSpaceChildrenProps, type FetchManySpacesProps, type CheckSlugAvailabilityProps, type CreateSpaceProps, type UpdateSpaceProps, type DeleteSpaceProps, type JoinSpaceProps, type LeaveSpaceProps, type FetchSpaceMembersProps, type FetchSpaceTeamProps, type FetchUserSpacesProps, type CheckMyMembershipProps, type UpdateMemberRoleProps, type ApproveMemberProps, type DeclineMemberProps, type RemoveMemberProps, type ModerateSpaceEntityProps, type ModerateSpaceCommentProps, type UseSpacePermissionsProps, type UseSpacePermissionsValues, type FetchDigestConfigProps, type UpdateDigestConfigProps, type CreateRuleProps, type UpdateRuleProps, type DeleteRuleProps, type FetchRuleProps, type FetchManyRulesProps, type ReorderRulesProps, } from "./hooks/spaces";
|
|
26
|
+
export { useSpace, useSpaceData, useFetchSpace, useFetchSpaceByShortId, useFetchSpaceBySlug, useFetchSpaceBreadcrumb, useFetchSpaceChildren, useFetchManySpaces, useCheckSlugAvailability, useCreateSpace, useUpdateSpace, useDeleteSpace, useJoinSpace, useLeaveSpace, useFetchSpaceMembers, useFetchSpaceTeam, useFetchUserSpaces, useUpdateMemberRole, useApproveMember, useDeclineMember, useRemoveMember, useModerateSpaceEntity, useModerateSpaceComment, useSpacePermissions, useSpaceMentions, useCheckMyMembership, useFetchDigestConfig, useUpdateDigestConfig, useCreateRule, useUpdateRule, useDeleteRule, useFetchRule, useFetchManyRules, useReorderRules, type UseSpaceDataProps, type UseSpaceDataValues, type FetchSpaceProps, type FetchSpaceByShortIdProps, type FetchSpaceBySlugProps, type FetchSpaceBreadcrumbProps, type FetchSpaceChildrenProps, type FetchManySpacesProps, type CheckSlugAvailabilityProps, type CreateSpaceProps, type UpdateSpaceProps, type DeleteSpaceProps, type JoinSpaceProps, type LeaveSpaceProps, type FetchSpaceMembersProps, type FetchSpaceTeamProps, type FetchUserSpacesProps, type CheckMyMembershipProps, type UpdateMemberRoleProps, type ApproveMemberProps, type DeclineMemberProps, type RemoveMemberProps, type ModerateSpaceEntityProps, type ModerateSpaceCommentProps, type UseSpacePermissionsProps, type UseSpacePermissionsValues, type UseSpaceMentionsProps, type UseSpaceMentionsValues, type FetchDigestConfigProps, type UpdateDigestConfigProps, type CreateRuleProps, type UpdateRuleProps, type DeleteRuleProps, type FetchRuleProps, type FetchManyRulesProps, type ReorderRulesProps, } from "./hooks/spaces";
|
|
27
27
|
export { useSpaceList, useSpaceListActions, type UseSpaceListProps, type UseSpaceListValues, type SpaceListCreateSpaceProps, type SpaceListDeleteSpaceProps, type FetchSpacesOptions, type CreateSpaceOptions, type DeleteSpaceOptions, } from "./hooks/space-lists";
|
|
28
|
-
export { useCommentSection, useCommentSectionData, useCreateComment, useFetchManyComments, useFetchComment, useFetchCommentByForeignId, useReplies, useUpdateComment, useDeleteComment, useEntityComments, useFetchManyCommentsWrapper, type CommentSectionCreateCommentProps, type CommentSectionUpdateCommentProps, type CommentSectionDeleteCommentProps, type CreateCommentProps, type FetchManyCommentsProps, type FetchCommentProps, type FetchCommentByForeignIdProps, type UseRepliesProps, type UpdateCommentProps, type DeleteCommentProps, type UseFetchManyCommentsWrapperProps, type UseFetchManyCommentsWrapperValues, } from "./hooks/comments";
|
|
28
|
+
export { useCommentSection, useCommentSectionData, useCreateComment, useFetchManyComments, useFetchComment, useFetchCommentByForeignId, useReplies, useUpdateComment, useDeleteComment, useEntityComments, useFetchManyCommentsWrapper, type CommentSectionCreateCommentProps, type CommentSectionUpdateCommentProps, type CommentSectionDeleteCommentProps, type CreateCommentProps, type FetchManyCommentsProps, type FetchCommentProps, type FetchCommentByForeignIdProps, type UseRepliesProps, type UpdateCommentProps, type DeleteCommentProps, type UseFetchManyCommentsWrapperProps, type UseFetchManyCommentsWrapperValues, type MentionTriggers, } from "./hooks/comments";
|
|
29
29
|
export { useFetchEntityReactions, useFetchCommentReactions, useFetchEntityReactionsWrapper, useFetchCommentReactionsWrapper, useAddReaction, useRemoveReaction, useReactionToggle, type UseFetchEntityReactionsWrapperProps, type UseFetchEntityReactionsWrapperValues, type UseFetchCommentReactionsWrapperProps, type UseFetchCommentReactionsWrapperValues, type UseReactionToggleProps, type UseReactionToggleValues, type ToggleReactionProps, type AddReactionProps, type RemoveReactionProps, type FetchEntityReactionsProps, type FetchCommentReactionsProps, } from "./hooks/reactions";
|
|
30
|
-
export { useFetchUser, useFetchUserByForeignId, useFetchUserByUsername, useCheckUsernameAvailability, useFetchUserSuggestions,
|
|
30
|
+
export { useFetchUser, useFetchUserByForeignId, useFetchUserByUsername, useCheckUsernameAvailability, useFetchUserSuggestions, useUserMentions, type FetchUserProps, type FetchUserByForeignIdProps, type FetchUserByUsernameProps, type CheckUsernameAvailabilityProps, type FetchUserSuggestionsProps, type UseUserMentionsProps, type UseUserMentionsValues, } from "./hooks/users";
|
|
31
31
|
export { useFetchFollowStatus, useFetchFollowers, useFetchFollowersByUserId, useFetchFollowersCount, useFetchFollowersCountByUserId, useFetchFollowing, useFetchFollowingByUserId, useFetchFollowingCount, useFetchFollowingCountByUserId, useFollowManager, useFollowUser, useUnfollowByFollowId, useUnfollowUserByUserId, type FollowUserProps, type UnfollowByFollowIdProps, type UnfollowUserByUserIdProps, type FetchFollowStatusProps, type FollowStatusResponse, type FollowerWithFollowInfo, type FetchFollowersParams, type FetchFollowersByUserIdParams, type FetchFollowersCountByUserIdProps, type FollowingWithFollowInfo, type FetchFollowingParams, type FetchFollowingByUserIdParams, type FetchFollowingCountByUserIdProps, type UseFollowToggleProps, } from "./hooks/relationships/follows";
|
|
32
32
|
export { useRequestConnection, useAcceptConnection, useDeclineConnection, useRemoveConnection, useFetchConnections, useFetchConnectionStatus, useRemoveConnectionByUserId, useFetchConnectionsCount, useFetchSentPendingConnections, useFetchReceivedPendingConnections, useFetchConnectionsByUserId, useFetchConnectionsCountByUserId, useConnectionManager, type AcceptConnectionProps, type DeclineConnectionProps, type RemoveConnectionProps, type RemoveConnectionByUserIdProps, type FetchConnectionStatusProps, type FetchConnectionsParams, type FetchConnectionsByUserIdParams, type FetchConnectionsCountByUserIdParams, type FetchSentPendingConnectionsParams, type FetchReceivedPendingConnectionsParams, type UseConnectionManagerProps, type ConnectionData, } from "./hooks/relationships/connections";
|
|
33
33
|
export { useCreateReport, useFetchModeratedReports, useHandleSpaceEntityReport, useHandleSpaceCommentReport, type UseCreateReportProps, type CreateReportProps, type CreateCommentReportProps, type CreateEntityReportProps, type FetchModeratedReportsParams, type ReportUserReport, type Report, type HandleSpaceEntityReportParams, type HandleReportResponse, type HandleSpaceCommentReportParams, } from "./hooks/reports";
|
|
@@ -42,7 +42,7 @@ export type { Entity, EntityInclude, EntityIncludeArray, EntityIncludeParam, } f
|
|
|
42
42
|
export type { Collection } from "./interfaces/models/Collection";
|
|
43
43
|
export type { Comment, GifData, CommentInclude, CommentIncludeArray, CommentIncludeParam, } from "./interfaces/models/Comment";
|
|
44
44
|
export type { Reaction, ReactionType, ReactionCounts, } from "./interfaces/models/Reaction";
|
|
45
|
-
export type { Mention } from "./interfaces/models/Mention";
|
|
45
|
+
export type { Mention, UserMention, SpaceMention, } from "./interfaces/models/Mention";
|
|
46
46
|
export type { Space, SpaceDetailed, SpacePreview, SpaceMemberPermissions, ReadingPermission, PostingPermission, PaginationMeta, UserSpaceItem, UserSpacesResponse, JoinSpaceResponse, LeaveSpaceResponse, UpdateMemberRoleResponse, ApproveMemberResponse, DeclineMemberResponse, DeleteSpaceResponse, DigestConfig, UpdateDigestConfigProps as UpdateDigestConfigBody, SpaceInclude, SpaceIncludeArray, SpaceIncludeParam, } from "./interfaces/models/Space";
|
|
47
47
|
export type { SpaceMember, SpaceMemberRole, SpaceMemberStatus, SpaceMemberWithUser, SpaceMembersResponse, SpaceTeamResponse, } from "./interfaces/models/SpaceMember";
|
|
48
48
|
export type { SpaceListSortByOptions, SpaceListFilters, } from "./interfaces/SpaceListSortByOptions";
|
|
@@ -55,3 +55,9 @@ export type { TimeFrame } from "./interfaces/TimeFrame";
|
|
|
55
55
|
export type { Connection, EstablishedConnection, PendingConnection, ConnectionsResponse, PendingConnectionsResponse, PendingConnectionListResponse, ConnectionRequestParams, ConnectionActionResponse, ConnectionWithdrawResponse, ConnectionCountResponse, RemoveConnectionByUserIdResponse, ConnectionStatusResponse, ConnectionStatus, } from "./interfaces/models/Connection";
|
|
56
56
|
export type { Image, ImageVariant, UploadImageOptions, } from "./interfaces/models/Image";
|
|
57
57
|
export type { File } from "./interfaces/models/File";
|
|
58
|
+
export { useConversations, useConversation, useCreateDirectConversation, useSpaceConversation, useConversationMembers, useChatMessages, useSendMessage, useEditMessage, useDeleteMessage, useToggleReaction, useMessageThread, useTotalUnreadCount, useMarkConversationAsRead, useReportMessage, useConversationData, useTypingIndicator, useChatSocket, } from "./hooks/chat";
|
|
59
|
+
export type { UseConversationsProps, UseConversationsValues, UseConversationProps, UseConversationValues, UpdateConversationParams, CreateDirectConversationProps, UseSpaceConversationProps, UseSpaceConversationValues, UseConversationMembersProps, UseConversationMembersValues, UseChatMessagesProps, UseChatMessagesValues, SendMessageParams, UseSendMessageProps, EditMessageParams, DeleteMessageParams, ToggleReactionParams, ToggleReactionResult, UseMessageThreadProps, UseMessageThreadValues, UseMarkConversationAsReadProps, ReportMessageParams, UseConversationDataProps, UseConversationDataValues, UseTypingIndicatorProps, UseTypingIndicatorValues, UseChatSocketValues, } from "./hooks/chat";
|
|
60
|
+
export type { IConversation, IConversationPreview, } from "./interfaces/models/IConversation";
|
|
61
|
+
export type { IConversationMember, ConversationMemberRole, } from "./interfaces/models/IConversationMember";
|
|
62
|
+
export type { IChatMessage } from "./interfaces/models/IChatMessage";
|
|
63
|
+
export { setConversation, setConversationLoading, setConversationList, setConversationListLoading, setConversationListHasMore, setConversationListCursor, upsertConversationPreview, incrementUnread, clearUnread, setMessagesLoading, setMessagesHasMore, upsertMessage, addOptimisticMessage, failOptimisticMessage, removeMessage, updateReactions, setThreadReplies, setThreadLoading, setTypingUsers, setSocketConnected, selectConversation, selectConversationLoading, selectConversationList, selectConversationListLoading, selectConversationListHasMore, selectConversationListCursor, selectMessages, selectMessagesLoading, selectMessagesHasMore, selectOldestMessageId, selectNewestMessageId, selectThreadReplies, selectThreadLoading, selectThreadHasMore, selectTypingUsers, selectSocketConnected, type ChatState, } from "./store/slices/chatSlice";
|
package/dist/esm/index.js
CHANGED
|
@@ -8,7 +8,7 @@ export { isDevelopment, isProduction, getApiBaseUrl, getEnvVar, } from "./utils/
|
|
|
8
8
|
// Constants
|
|
9
9
|
export { reportReasons } from "./constants/reportReasons";
|
|
10
10
|
// Context providers (Redux-powered by default)
|
|
11
|
-
export { ReplykeProvider, ReplykeIntegrationProvider, EntityProvider, CommentSectionProvider, SpaceProvider, } from "./context";
|
|
11
|
+
export { ReplykeProvider, ReplykeIntegrationProvider, EntityProvider, CommentSectionProvider, SpaceProvider, ChatProvider, ConversationProvider, MessageThreadProvider, useChatContext, useConversationContext, useMessageThreadContext, } from "./context";
|
|
12
12
|
// Integration mode exports (for users with their own Redux store)
|
|
13
13
|
export { replykeReducers, replykeApiReducer, replykeMiddleware, replykeApi, } from "./store/integration";
|
|
14
14
|
// -- projects
|
|
@@ -37,7 +37,7 @@ export { useEntity, useEntityData, useCreateEntity, useDeleteEntity, useFetchEnt
|
|
|
37
37
|
// -- entity lists
|
|
38
38
|
export { useEntityList, useEntityListActions, } from "./hooks/entity-lists";
|
|
39
39
|
// -- spaces
|
|
40
|
-
export { useSpace, useSpaceData, useFetchSpace, useFetchSpaceByShortId, useFetchSpaceBySlug, useFetchSpaceBreadcrumb, useFetchSpaceChildren, useFetchManySpaces, useCheckSlugAvailability, useCreateSpace, useUpdateSpace, useDeleteSpace, useJoinSpace, useLeaveSpace, useFetchSpaceMembers, useFetchSpaceTeam, useFetchUserSpaces, useUpdateMemberRole, useApproveMember, useDeclineMember, useRemoveMember, useModerateSpaceEntity, useModerateSpaceComment, useSpacePermissions, useCheckMyMembership,
|
|
40
|
+
export { useSpace, useSpaceData, useFetchSpace, useFetchSpaceByShortId, useFetchSpaceBySlug, useFetchSpaceBreadcrumb, useFetchSpaceChildren, useFetchManySpaces, useCheckSlugAvailability, useCreateSpace, useUpdateSpace, useDeleteSpace, useJoinSpace, useLeaveSpace, useFetchSpaceMembers, useFetchSpaceTeam, useFetchUserSpaces, useUpdateMemberRole, useApproveMember, useDeclineMember, useRemoveMember, useModerateSpaceEntity, useModerateSpaceComment, useSpacePermissions, useSpaceMentions, useCheckMyMembership,
|
|
41
41
|
// Digest config hooks
|
|
42
42
|
useFetchDigestConfig, useUpdateDigestConfig,
|
|
43
43
|
// Rule hooks
|
|
@@ -49,7 +49,7 @@ export { useCommentSection, useCommentSectionData, useCreateComment, useFetchMan
|
|
|
49
49
|
// -- reactions
|
|
50
50
|
export { useFetchEntityReactions, useFetchCommentReactions, useFetchEntityReactionsWrapper, useFetchCommentReactionsWrapper, useAddReaction, useRemoveReaction, useReactionToggle, } from "./hooks/reactions";
|
|
51
51
|
// -- users
|
|
52
|
-
export { useFetchUser, useFetchUserByForeignId, useFetchUserByUsername, useCheckUsernameAvailability, useFetchUserSuggestions,
|
|
52
|
+
export { useFetchUser, useFetchUserByForeignId, useFetchUserByUsername, useCheckUsernameAvailability, useFetchUserSuggestions, useUserMentions, } from "./hooks/users";
|
|
53
53
|
// -- follows
|
|
54
54
|
export { useFetchFollowStatus, useFetchFollowers, useFetchFollowersByUserId, useFetchFollowersCount, useFetchFollowersCountByUserId, useFetchFollowing, useFetchFollowingByUserId, useFetchFollowingCount, useFetchFollowingCountByUserId, useFollowManager, useFollowUser, useUnfollowByFollowId, useUnfollowUserByUserId, } from "./hooks/relationships/follows";
|
|
55
55
|
// -- connections
|
|
@@ -62,4 +62,8 @@ export { useGetMetadata } from "./hooks/utils";
|
|
|
62
62
|
export { useUploadFile, useUploadImage, } from "./hooks/storage";
|
|
63
63
|
export * as AppNotification from "./interfaces/models/AppNotification";
|
|
64
64
|
export { validateSortBy, validateMetadataPropertyName, validateSortType, } from "./interfaces/EntityListSortByOptions";
|
|
65
|
+
// -- chat hooks
|
|
66
|
+
export { useConversations, useConversation, useCreateDirectConversation, useSpaceConversation, useConversationMembers, useChatMessages, useSendMessage, useEditMessage, useDeleteMessage, useToggleReaction, useMessageThread, useTotalUnreadCount, useMarkConversationAsRead, useReportMessage, useConversationData, useTypingIndicator, useChatSocket, } from "./hooks/chat";
|
|
67
|
+
// -- chat slice
|
|
68
|
+
export { setConversation, setConversationLoading, setConversationList, setConversationListLoading, setConversationListHasMore, setConversationListCursor, upsertConversationPreview, incrementUnread, clearUnread, setMessagesLoading, setMessagesHasMore, upsertMessage, addOptimisticMessage, failOptimisticMessage, removeMessage, updateReactions, setThreadReplies, setThreadLoading, setTypingUsers, setSocketConnected, selectConversation, selectConversationLoading, selectConversationList, selectConversationListLoading, selectConversationListHasMore, selectConversationListCursor, selectMessages, selectMessagesLoading, selectMessagesHasMore, selectOldestMessageId, selectNewestMessageId, selectThreadReplies, selectThreadLoading, selectThreadHasMore, selectTypingUsers, selectSocketConnected, } from "./store/slices/chatSlice";
|
|
65
69
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,GACV,MAAM,aAAa,CAAC;AAErB,YAAY;AACZ,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D,+CAA+C;AAC/C,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,sBAAsB,EACtB,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { GifData } from "./Comment";
|
|
2
|
+
import { File } from "./File";
|
|
3
|
+
import { Mention } from "./Mention";
|
|
4
|
+
import { User } from "./User";
|
|
5
|
+
export interface IChatMessage {
|
|
6
|
+
id: string;
|
|
7
|
+
clientId?: string;
|
|
8
|
+
projectId: string;
|
|
9
|
+
conversationId: string;
|
|
10
|
+
userId: string | null;
|
|
11
|
+
content: string | null;
|
|
12
|
+
gif: GifData | null;
|
|
13
|
+
mentions: Mention[];
|
|
14
|
+
files?: File[];
|
|
15
|
+
metadata: Record<string, any>;
|
|
16
|
+
parentMessageId: string | null;
|
|
17
|
+
quotedMessageId: string | null;
|
|
18
|
+
threadReplyCount: number;
|
|
19
|
+
reactionCounts: Record<string, number>;
|
|
20
|
+
userReactions: string[];
|
|
21
|
+
editedAt: Date | null;
|
|
22
|
+
userDeletedAt: Date | null;
|
|
23
|
+
moderationStatus: "approved" | "removed" | null;
|
|
24
|
+
moderatedAt: Date | null;
|
|
25
|
+
moderatedById: string | null;
|
|
26
|
+
moderatedByType: "client" | "user" | null;
|
|
27
|
+
moderationReason: string | null;
|
|
28
|
+
createdAt: Date;
|
|
29
|
+
updatedAt: Date;
|
|
30
|
+
user: User | null;
|
|
31
|
+
quotedMessage?: IChatMessage | null;
|
|
32
|
+
parentMessage?: IChatMessage | null;
|
|
33
|
+
sendFailed?: boolean;
|
|
34
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IChatMessage.js","sourceRoot":"","sources":["../../../../src/interfaces/models/IChatMessage.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { File } from "./File";
|
|
2
|
+
import { IChatMessage } from "./IChatMessage";
|
|
3
|
+
import { IConversationMember } from "./IConversationMember";
|
|
4
|
+
export interface IConversation {
|
|
5
|
+
id: string;
|
|
6
|
+
projectId: string;
|
|
7
|
+
type: "direct" | "group" | "space";
|
|
8
|
+
name: string | null;
|
|
9
|
+
description: string | null;
|
|
10
|
+
spaceId: string | null;
|
|
11
|
+
createdById: string | null;
|
|
12
|
+
avatarFileId: string | null;
|
|
13
|
+
lastMessageAt: Date | null;
|
|
14
|
+
postingPermission: "members" | "admins" | null;
|
|
15
|
+
metadata: Record<string, any>;
|
|
16
|
+
createdAt: Date;
|
|
17
|
+
updatedAt: Date;
|
|
18
|
+
memberCount?: number;
|
|
19
|
+
currentMember?: IConversationMember;
|
|
20
|
+
avatarFile?: File;
|
|
21
|
+
}
|
|
22
|
+
export interface IConversationPreview extends IConversation {
|
|
23
|
+
unreadCount: number;
|
|
24
|
+
lastMessage: IChatMessage | null;
|
|
25
|
+
}
|