@droppii-org/chat-sdk 0.1.86 → 0.1.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/components/message/MessageList.d.ts.map +1 -1
  2. package/dist/components/message/MessageList.js +3 -8
  3. package/dist/components/message/item/index.d.ts.map +1 -1
  4. package/dist/components/message/item/index.js +7 -3
  5. package/dist/components/message/item/textStyle.d.ts +1 -1
  6. package/dist/components/message/item/textStyle.d.ts.map +1 -1
  7. package/dist/components/message/item/textStyle.js +1 -1
  8. package/dist/hooks/conversation/useConversationList.d.ts.map +1 -1
  9. package/dist/hooks/conversation/useConversationList.js +2 -10
  10. package/dist/hooks/global/useGlobalEvent.d.ts.map +1 -1
  11. package/dist/hooks/global/useGlobalEvent.js +4 -2
  12. package/dist/hooks/session/useSessionLatestPreview.d.ts.map +1 -1
  13. package/dist/hooks/session/useSessionLatestPreview.js +27 -32
  14. package/dist/services/query.d.ts +1 -1
  15. package/dist/services/query.js +1 -1
  16. package/dist/services/routes.d.ts +0 -1
  17. package/dist/services/routes.d.ts.map +1 -1
  18. package/dist/services/routes.js +0 -1
  19. package/dist/styles/global.css +1 -1
  20. package/dist/types/dto.d.ts +0 -46
  21. package/dist/types/dto.d.ts.map +1 -1
  22. package/dist/utils/common.d.ts +3 -1
  23. package/dist/utils/common.d.ts.map +1 -1
  24. package/dist/utils/common.js +17 -1
  25. package/package.json +1 -1
  26. package/dist/hooks/message/useConversationMessages.d.ts +0 -27
  27. package/dist/hooks/message/useConversationMessages.d.ts.map +0 -1
  28. package/dist/hooks/message/useConversationMessages.js +0 -30
  29. package/dist/hooks/message/usePullSessionMessages.d.ts +0 -11
  30. package/dist/hooks/message/usePullSessionMessages.d.ts.map +0 -1
  31. package/dist/hooks/message/usePullSessionMessages.js +0 -30
  32. package/dist/utils/messageTransform.d.ts +0 -5
  33. package/dist/utils/messageTransform.d.ts.map +0 -1
  34. package/dist/utils/messageTransform.js +0 -114
@@ -1 +1 @@
1
- {"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/components/message/MessageList.tsx"],"names":[],"mappings":"AAyBA,UAAU,gBAAgB;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;CACpC;AAED,QAAA,MAAM,WAAW,GAAI,OAAO,gBAAgB,4CAgO3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/components/message/MessageList.tsx"],"names":[],"mappings":"AAyBA,UAAU,gBAAgB;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;CACpC;AAED,QAAA,MAAM,WAAW,GAAI,OAAO,gBAAgB,4CA0N3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { useConversationMessages } from "../../hooks/message/useConversationMessages";
3
+ import { useMessage } from "../../hooks/message/useMessage";
4
4
  import { Button, Empty, Modal, Spin } from "antd";
5
5
  import { useCallback, useEffect, useState } from "react";
6
6
  import dayjs from "dayjs";
@@ -32,7 +32,7 @@ const MessageList = (props) => {
32
32
  const [selectedItem, setSelectedItem] = useState(null);
33
33
  const [showConfirmRevoke, { setTrue: openConfirmRevoke, setFalse: closeConfirmRevoke },] = useBoolean(false);
34
34
  const { revokeMessage, loading: isRevoking } = useRevokeMessage();
35
- const { groupId, latestConversationSession, customerUserID, refetchConversationSessions, } = useConversationSessionState({
35
+ const { groupId, latestConversationSession, refetchConversationSessions, } = useConversationSessionState({
36
36
  conversationId,
37
37
  conversationType: conversationData === null || conversationData === void 0 ? void 0 : conversationData.conversationType,
38
38
  groupId: conversationData === null || conversationData === void 0 ? void 0 : conversationData.groupID,
@@ -41,12 +41,7 @@ const MessageList = (props) => {
41
41
  groupId,
42
42
  sessionId: latestConversationSession === null || latestConversationSession === void 0 ? void 0 : latestConversationSession.id,
43
43
  });
44
- const messageController = useConversationMessages({
45
- conversationId,
46
- searchClientMsgID,
47
- restrictToLastSession: shouldRestrictToLastSession,
48
- customerUserID,
49
- });
44
+ const messageController = useMessage(conversationId, searchClientMsgID);
50
45
  const { loadState, moreOldLoading, moreNewLoading } = messageController;
51
46
  const { scrollRef, loadMoreOldMessage, handleInfiniteScroll, scrollToBottom, scrollToMessage, } = useMessageListScroll(Object.assign({ conversationId, userId: user === null || user === void 0 ? void 0 : user.userID }, messageController));
52
47
  const handleOpenRevoke = useCallback((clientMsgID) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,IAAI,eAAe,EAG/B,MAAM,yBAAyB,CAAC;AAiCjC,UAAU,gBAAgB;IACxB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IAClD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAeD,QAAA,MAAM,WAAW,GAAI,qMAalB,gBAAgB,mDAgRlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,IAAI,eAAe,EAG/B,MAAM,yBAAyB,CAAC;AAiCjC,UAAU,gBAAgB;IACxB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IAClD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAoBD,QAAA,MAAM,WAAW,GAAI,qMAalB,gBAAgB,mDAmRlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -2,7 +2,7 @@ import { createElement as _createElement } from "react";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import dayjs from "dayjs";
4
4
  import clsx from "clsx";
5
- import { Dropdown, message as toastMessage } from "antd";
5
+ import { Avatar, Dropdown, message as toastMessage } from "antd";
6
6
  import { MessageStatus, MessageType, } from "@openim/wasm-client-sdk";
7
7
  import MessageBubble from "./MessageBubble";
8
8
  import { renderBubbleContent } from "./renderMessageContent";
@@ -20,7 +20,11 @@ import { Icon } from "../../../components/icon";
20
20
  import SystemLogMessageItem from "./SystemLogMessage";
21
21
  import { isSystemLogMessageType } from "../../../utils/messageLog";
22
22
  import { buildMessageToolboxMenuItems, getCopyableMessageText, isCopyableMessageType, isPinnableMessageType, MessageToolboxActionKey, MESSAGE_TOOLBOX_OVERLAY_CLASSNAME, useMessageToolboxVisibility, } from "../../../components/message/toolbox";
23
- const MessageAvatar = ({ avatarUrl }) => avatarUrl ? (_jsx("img", { src: avatarUrl, alt: "", className: "h-6 w-6 shrink-0 self-end rounded-full object-cover" })) : (_jsx("div", { className: "flex h-6 w-6 shrink-0 items-center justify-center self-end rounded-full bg-chat-avatar", children: _jsx(Icon, { icon: "droppii-b", size: 14, className: "text-white" }) }));
23
+ const MESSAGE_AVATAR_SIZE = 24;
24
+ const MessageAvatar = ({ avatarUrl, senderNickname, }) => {
25
+ var _a;
26
+ return (_jsx(Avatar, { size: MESSAGE_AVATAR_SIZE, src: avatarUrl, className: "shrink-0 self-end", children: ((_a = senderNickname === null || senderNickname === void 0 ? void 0 : senderNickname.charAt) === null || _a === void 0 ? void 0 : _a.call(senderNickname, 0)) || "A" }));
27
+ };
24
28
  const MessageItem = ({ message, allMessages, isGroupChat = false, forceHideTip = false, contextMenuOpen, onContextMenuOpenChange, onRevokeMessage, onQuoteMessage, onPressQuoteMessage, onPinMessage, onUnpinMessage, enableLongPress = false, }) => {
25
29
  var _a;
26
30
  const { t } = useTranslation();
@@ -149,7 +153,7 @@ const MessageItem = ({ message, allMessages, isGroupChat = false, forceHideTip =
149
153
  timeBreakNode,
150
154
  _jsxs("div", { className: clsx("flex min-w-0 items-end gap-1", isMine ? "justify-end pl-12 pr-3" : "justify-start pl-3 pr-12"), children: [!isMine &&
151
155
  showPeerInfo &&
152
- (showAvatar ? (_jsx(MessageAvatar, { avatarUrl: message === null || message === void 0 ? void 0 : message.senderFaceUrl })) : (_jsx("div", { className: "h-6 w-6 shrink-0 self-end" }))), _jsxs("div", { className: clsx("flex min-w-0 max-w-[75%] flex-col gap-1", isMine ? "items-end" : "items-start"), children: [_jsxs("div", { className: clsx("flex items-end gap-1.5", showPinnedBadge && "mt-1.5"), children: [isMine && (_jsx(MessageStatusIndicator, { message: message, isLatest: isLatestMine })), wrappedBubble] }), isMine && message.status === MessageStatus.Failed && (_jsx("span", { className: "mt-1 text-xs text-red-500", children: isMediaResendable(message) ? (_jsx(Trans, { i18nKey: "message_send_failed", components: {
156
+ (showAvatar ? (_jsx(MessageAvatar, { avatarUrl: message === null || message === void 0 ? void 0 : message.senderFaceUrl, senderNickname: message === null || message === void 0 ? void 0 : message.senderNickname })) : (_jsx("div", { className: "h-6 w-6 shrink-0 self-end" }))), _jsxs("div", { className: clsx("flex min-w-0 max-w-[75%] flex-col gap-1", isMine ? "items-end" : "items-start"), children: [_jsxs("div", { className: clsx("flex items-end gap-1.5", showPinnedBadge && "mt-1.5"), children: [isMine && (_jsx(MessageStatusIndicator, { message: message, isLatest: isLatestMine })), wrappedBubble] }), isMine && message.status === MessageStatus.Failed && (_jsx("span", { className: "mt-1 text-xs text-red-500", children: isMediaResendable(message) ? (_jsx(Trans, { i18nKey: "message_send_failed", components: {
153
157
  bold: (_jsx("strong", { className: "cursor-pointer", onClick: () => resendMessage(message) })),
154
158
  } })) : (t("message_send_failed_no_retry")) }))] })] })));
155
159
  };
@@ -1,2 +1,2 @@
1
- export declare const MESSAGE_TEXT_CLASS = "text-[16px] leading-[160%] tracking-[0.16px] text-gray-900";
1
+ export declare const MESSAGE_TEXT_CLASS = "text-[16px] leading-[160%] tracking-[0.16px] text-gray-900 [&_code]:font-[inherit] [&_pre]:font-[inherit] [&_kbd]:font-[inherit] [&_samp]:font-[inherit]";
2
2
  //# sourceMappingURL=textStyle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"textStyle.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/textStyle.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,+DAC+B,CAAC"}
1
+ {"version":3,"file":"textStyle.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/textStyle.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,6JAC6H,CAAC"}
@@ -1 +1 @@
1
- export const MESSAGE_TEXT_CLASS = "text-[16px] leading-[160%] tracking-[0.16px] text-gray-900";
1
+ export const MESSAGE_TEXT_CLASS = "text-[16px] leading-[160%] tracking-[0.16px] text-gray-900 [&_code]:font-[inherit] [&_pre]:font-[inherit] [&_kbd]:font-[inherit] [&_samp]:font-[inherit]";
@@ -1 +1 @@
1
- {"version":3,"file":"useConversationList.d.ts","sourceRoot":"","sources":["../../../src/hooks/conversation/useConversationList.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI/E,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,UAAU,yBAAyB;IACjC,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AASD,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,yBAAyB,KAChC,yBAuFF,CAAC"}
1
+ {"version":3,"file":"useConversationList.d.ts","sourceRoot":"","sources":["../../../src/hooks/conversation/useConversationList.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI/E,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,UAAU,yBAAyB;IACjC,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AASD,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,yBAAyB,KAChC,yBA0EF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { useCallback, useEffect, useMemo, useState } from "react";
3
- import { CbEvents, } from "@openim/wasm-client-sdk";
3
+ import { CbEvents } from "@openim/wasm-client-sdk";
4
4
  import { DChatSDK } from "../../constants/sdk";
5
5
  import { useChatContext } from "../../context/ChatContext";
6
6
  import { ConnectStatus, DChatApplicationType } from "../../types/chat";
@@ -13,7 +13,6 @@ export const useConversationList = (params) => {
13
13
  const applicationType = useAuthStore((state) => state.applicationType);
14
14
  const conversationList = useConversationStore((state) => state.conversationList);
15
15
  const getConversationListByReq = useConversationStore((state) => state.getConversationListByReq);
16
- const updateConversationList = useConversationStore((state) => state.updateConversationList);
17
16
  const [isLoading, setIsLoading] = useState(false);
18
17
  const [isFetchingNextPage, setIsFetchingNextPage] = useState(false);
19
18
  const [hasNextPage, setHasNextPage] = useState(false);
@@ -47,18 +46,11 @@ export const useConversationList = (params) => {
47
46
  const onSyncFinish = () => {
48
47
  void loadInitial();
49
48
  };
50
- const conversationChangeHandler = ({ data, }) => {
51
- updateConversationList(data, "push");
52
- };
53
49
  DChatSDK.on(CbEvents.OnSyncServerFinish, onSyncFinish);
54
- DChatSDK.on(CbEvents.OnConversationChanged, conversationChangeHandler);
55
- DChatSDK.on(CbEvents.OnNewConversation, conversationChangeHandler);
56
50
  return () => {
57
51
  DChatSDK.off(CbEvents.OnSyncServerFinish, onSyncFinish);
58
- DChatSDK.off(CbEvents.OnConversationChanged, conversationChangeHandler);
59
- DChatSDK.off(CbEvents.OnNewConversation, conversationChangeHandler);
60
52
  };
61
- }, [queryEnabled, loadInitial, updateConversationList]);
53
+ }, [queryEnabled, loadInitial]);
62
54
  const items = useMemo(() => conversationList.map(toConversationListItem), [conversationList]);
63
55
  return {
64
56
  items,
@@ -1 +1 @@
1
- {"version":3,"file":"useGlobalEvent.d.ts","sourceRoot":"","sources":["../../../src/hooks/global/useGlobalEvent.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,cAAc,YA8U1B,CAAC"}
1
+ {"version":3,"file":"useGlobalEvent.d.ts","sourceRoot":"","sources":["../../../src/hooks/global/useGlobalEvent.ts"],"names":[],"mappings":"AAsCA,eAAO,MAAM,cAAc,YAoV1B,CAAC"}
@@ -14,6 +14,7 @@ import { updateSession } from "../../hooks/session/useUpdateSession";
14
14
  import { QUERY_KEYS } from "../../services/query";
15
15
  import { useQueryClient } from "@tanstack/react-query";
16
16
  import { isGroupSession } from "../../utils/imCommon";
17
+ import { ignoreInternalLatestMessage } from "../../utils/common";
17
18
  import { invalidateSessionQueries } from "../../utils/queryHelpers";
18
19
  import emitter from "../../utils/events";
19
20
  const notPushType = [MessageType.TypingMessage, MessageType.RevokeMessage];
@@ -251,12 +252,13 @@ export const useGlobalEvent = () => {
251
252
  DChatSDK.off(CbEvents.OnRecvCustomBusinessMessage, businessNotificationHandler);
252
253
  };
253
254
  // conversation
255
+ const withoutInternalLatestMessage = (conversations) => ignoreInternalLatestMessage(conversations, useAuthStore.getState().isCrm);
254
256
  const conversationChangeHandler = ({ data }) => {
255
- updateConversationList(data, "filter");
257
+ updateConversationList(withoutInternalLatestMessage(data), "filter");
256
258
  void refreshCurrentGroupState();
257
259
  };
258
260
  const newConversationHandler = ({ data }) => {
259
- updateConversationList(data, "push");
261
+ updateConversationList(withoutInternalLatestMessage(data), "push");
260
262
  void refreshCurrentGroupState();
261
263
  };
262
264
  /** LIFE CYCLE */
@@ -1 +1 @@
1
- {"version":3,"file":"useSessionLatestPreview.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useSessionLatestPreview.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAKrD,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAOD,eAAO,MAAM,uBAAuB,GAAI,UAAU,gBAAgB,EAAE,+BAsFnE,CAAC"}
1
+ {"version":3,"file":"useSessionLatestPreview.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useSessionLatestPreview.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAMrD,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAkBD,eAAO,MAAM,uBAAuB,GAAI,UAAU,gBAAgB,EAAE,+BAmEnE,CAAC"}
@@ -1,28 +1,29 @@
1
1
  "use client";
2
+ import { ViewType } from "@openim/wasm-client-sdk";
2
3
  import { useQueries, useQueryClient } from "@tanstack/react-query";
3
4
  import { useEffect, useMemo } from "react";
4
5
  import { QUERY_KEYS } from "../../services/query";
5
6
  import emitter from "../../utils/events";
6
- import useAuthStore from "../../store/auth";
7
- import { fetchPullSessionMessages } from "../../hooks/message/usePullSessionMessages";
8
- const shouldPullSessionMessages = (session) => Boolean(session.conversationId &&
9
- session.ownerId);
7
+ import { DChatSDK } from "../../constants/sdk";
8
+ const LATEST_MESSAGE_COUNT = 1;
9
+ const isMissingLatestMessage = (session) => { var _a; return Boolean(session.conversationId) && !((_a = session.conversation) === null || _a === void 0 ? void 0 : _a.latestMsg); };
10
+ const fetchSessionLatestMessage = async (conversationID) => {
11
+ var _a;
12
+ const { data } = await DChatSDK.getAdvancedHistoryMessageList({
13
+ count: LATEST_MESSAGE_COUNT,
14
+ startClientMsgID: "",
15
+ conversationID,
16
+ viewType: ViewType.History,
17
+ });
18
+ return (_a = data === null || data === void 0 ? void 0 : data.messageList) === null || _a === void 0 ? void 0 : _a[0];
19
+ };
10
20
  export const useSessionLatestPreview = (sessions) => {
11
- const applicationType = useAuthStore((state) => state.applicationType);
12
21
  const queryClient = useQueryClient();
13
22
  const results = useQueries({
14
23
  queries: sessions.map((session) => ({
15
- queryKey: [
16
- QUERY_KEYS.PULL_SESSION_MESSAGES,
17
- session.conversationId,
18
- session.ownerId,
19
- ],
20
- enabled: shouldPullSessionMessages(session),
21
- queryFn: () => fetchPullSessionMessages({
22
- conversationID: session.conversationId,
23
- userID: session.ownerId,
24
- applicationType,
25
- }),
24
+ queryKey: [QUERY_KEYS.SESSION_LATEST_MESSAGE, session.conversationId],
25
+ enabled: isMissingLatestMessage(session),
26
+ queryFn: () => fetchSessionLatestMessage(session.conversationId),
26
27
  })),
27
28
  });
28
29
  useEffect(() => {
@@ -38,16 +39,12 @@ export const useSessionLatestPreview = (sessions) => {
38
39
  if (!session)
39
40
  return;
40
41
  void queryClient.invalidateQueries({
41
- queryKey: [
42
- QUERY_KEYS.PULL_SESSION_MESSAGES,
43
- session.conversationId,
44
- session.ownerId,
45
- ],
42
+ queryKey: [QUERY_KEYS.SESSION_LATEST_MESSAGE, session.conversationId],
46
43
  });
47
44
  };
48
45
  const groupMembersChangedHandler = () => {
49
46
  void queryClient.invalidateQueries({
50
- queryKey: [QUERY_KEYS.PULL_SESSION_MESSAGES],
47
+ queryKey: [QUERY_KEYS.SESSION_LATEST_MESSAGE],
51
48
  });
52
49
  };
53
50
  emitter.on("PUSH_NEW_MSG", pushNewMessageHandler);
@@ -60,23 +57,21 @@ export const useSessionLatestPreview = (sessions) => {
60
57
  return useMemo(() => {
61
58
  const map = new Map();
62
59
  sessions.forEach((session, index) => {
63
- var _a, _b, _c, _d;
64
- const pullMessage = (_b = (_a = results[index]) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0];
65
- const latestMsgSendTime = ((_c = session.conversation) === null || _c === void 0 ? void 0 : _c.latestMsgSendTime) || 0;
66
- if (shouldPullSessionMessages(session) &&
67
- pullMessage &&
68
- pullMessage.sendTime > latestMsgSendTime) {
60
+ var _a, _b, _c;
61
+ const latestMessage = (_a = results[index]) === null || _a === void 0 ? void 0 : _a.data;
62
+ const latestMsgSendTime = ((_b = session.conversation) === null || _b === void 0 ? void 0 : _b.latestMsgSendTime) || 0;
63
+ if (latestMessage && latestMessage.sendTime > latestMsgSendTime) {
69
64
  map.set(session.conversationId, {
70
- latestMsg: JSON.stringify(pullMessage),
71
- latestMsgSendTime: pullMessage.sendTime,
65
+ latestMsg: JSON.stringify(latestMessage),
66
+ latestMsgSendTime: latestMessage.sendTime,
72
67
  });
73
68
  return;
74
69
  }
75
70
  map.set(session.conversationId, {
76
- latestMsg: ((_d = session.conversation) === null || _d === void 0 ? void 0 : _d.latestMsg) || "",
71
+ latestMsg: ((_c = session.conversation) === null || _c === void 0 ? void 0 : _c.latestMsg) || "",
77
72
  latestMsgSendTime,
78
73
  });
79
74
  });
80
75
  return map;
81
- }, [sessions, results, applicationType]);
76
+ }, [sessions, results]);
82
77
  };
@@ -22,8 +22,8 @@ export declare const QUERY_KEYS: {
22
22
  GET_CANNED_CATEGORIES: string;
23
23
  GET_CANNED_RESPONSES: string;
24
24
  JOIN_SESSION: string;
25
- PULL_SESSION_MESSAGES: string;
26
25
  GET_CONVERSATIONS_IM_DETAIL: string;
26
+ SESSION_LATEST_MESSAGE: string;
27
27
  CREATE_CONVERSATION: string;
28
28
  GET_CONVERSATION_DETAIL: string;
29
29
  RUN_BOT_FLOW: string;
@@ -22,8 +22,8 @@ export const QUERY_KEYS = {
22
22
  GET_CANNED_CATEGORIES: "GET_CANNED_CATEGORIES_PACKAGE",
23
23
  GET_CANNED_RESPONSES: "GET_CANNED_RESPONSES_PACKAGE",
24
24
  JOIN_SESSION: "JOIN_SESSION",
25
- PULL_SESSION_MESSAGES: "PULL_SESSION_MESSAGES",
26
25
  GET_CONVERSATIONS_IM_DETAIL: "GET_CONVERSATIONS_IM_DETAIL",
26
+ SESSION_LATEST_MESSAGE: "SESSION_LATEST_MESSAGE",
27
27
  CREATE_CONVERSATION: "CREATE_CONVERSATION",
28
28
  GET_CONVERSATION_DETAIL: "GET_CONVERSATION_DETAIL",
29
29
  RUN_BOT_FLOW: "RUN_BOT_FLOW",
@@ -25,7 +25,6 @@ export declare const ENDPOINTS: {
25
25
  reopenSession: string;
26
26
  joinSession: (sessionId: string) => string;
27
27
  leaveConversation: (conversationId: string) => string;
28
- pullSessionMessages: string;
29
28
  getConversationsImDetail: string;
30
29
  createConversation: string;
31
30
  getConversationDetail: (conversationId: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/services/routes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;;;mCAMS,MAAM;;0CAGC,MAAM,UAAU,MAAM;6BAEnC,MAAM;;oDAEiB,MAAM;uCAEnB,MAAM;kCAEX,MAAM;;oCAGJ,MAAM;mCAEP,MAAM;uCAEF,MAAM;;;;;;;;iCASZ,MAAM;4CAEK,MAAM;;;;gDAKF,MAAM;qCAEjB,MAAM;uCAEJ,MAAM;0CAEH,MAAM;yCAEP,MAAM;8BAEjB,MAAM;wCACI,MAAM;;;;;;;;;;CAWzC,CAAC"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/services/routes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;;;mCAMS,MAAM;;0CAGC,MAAM,UAAU,MAAM;6BAEnC,MAAM;;oDAEiB,MAAM;uCAEnB,MAAM;kCAEX,MAAM;;oCAGJ,MAAM;mCAEP,MAAM;uCAEF,MAAM;;;;;;;;iCASZ,MAAM;4CAEK,MAAM;;;gDAIF,MAAM;qCAEjB,MAAM;uCAEJ,MAAM;0CAEH,MAAM;yCAEP,MAAM;8BAEjB,MAAM;wCACI,MAAM;;;;;;;;;;CAWzC,CAAC"}
@@ -25,7 +25,6 @@ export const ENDPOINTS = {
25
25
  reopenSession: "chat-service/v1/crm/sessions/reopen",
26
26
  joinSession: (sessionId) => `chat-service/v1/crm/sessions/${sessionId}/join`,
27
27
  leaveConversation: (conversationId) => `chat-service/v1/crm/conversations/${conversationId}/leave`,
28
- pullSessionMessages: "/chat-service/v1/messages/session/pull",
29
28
  getConversationsImDetail: "/chat-service/v1/crm/conversations/im-detail",
30
29
  createConversation: "/chat-service/v1/app/conversations",
31
30
  getConversationDetail: (conversationId) => `/chat-service/v1/app/conversations/${conversationId}`,
@@ -1 +1 @@
1
- *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(40,138,230,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(40,138,230,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #a8adaf}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#747b7e}input::placeholder,textarea::placeholder{opacity:1;color:#747b7e}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-px{bottom:-1px}.-right-1{right:-.25rem}.-right-px{right:-1px}.-top-1{top:-.25rem}.-top-2\.5{top:-.625rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.\!z-\[9999\]{z-index:9999!important}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mr-1\.5{margin-right:-.375rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-2{margin-left:.5rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-\[2px\]{margin-top:2px}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.\!h-full{height:100%!important}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[100px\]{height:100px}.h-\[120px\]{height:120px}.h-\[17px\]{height:17px}.h-\[22px\]{height:22px}.h-\[36px\]{height:36px}.h-\[3px\]{height:3px}.h-\[400px\]{height:400px}.h-\[42px\]{height:42px}.h-\[51px\]{height:51px}.h-\[59px\]{height:59px}.h-\[600px\]{height:600px}.h-\[76px\]{height:76px}.h-full{height:100%}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-72{max-height:18rem}.max-h-\[140px\]{max-height:140px}.max-h-\[80vh\]{max-height:80vh}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.min-h-40{min-height:10rem}.min-h-6{min-height:1.5rem}.min-h-\[25\.6px\]{min-height:25.6px}.min-h-\[32px\]{min-height:32px}.min-h-\[64px\]{min-height:64px}.w-1{width:.25rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-24{width:6rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[100px\]{width:100px}.w-\[120px\]{width:120px}.w-\[168px\]{width:168px}.w-\[170px\]{width:170px}.w-\[26px\]{width:26px}.w-\[292px\]{width:292px}.w-\[320px\]{width:320px}.w-\[330px\]{width:330px}.w-\[36px\]{width:36px}.w-\[3px\]{width:3px}.w-\[400px\]{width:400px}.w-\[42px\]{width:42px}.w-\[51px\]{width:51px}.w-\[52px\]{width:52px}.w-\[600px\]{width:600px}.w-\[76px\]{width:76px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-6{min-width:1.5rem}.min-w-8{min-width:2rem}.min-w-\[100px\]{min-width:100px}.min-w-\[26px\]{min-width:26px}.max-w-\[200px\]{max-width:200px}.max-w-\[292px\]{max-width:292px}.max-w-\[75\%\]{max-width:75%}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-\[1_0_0\]{flex:1 0 0}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-\[repeat\(1\2c 100px\)\]{grid-template-columns:repeat(1,100px)}.grid-cols-\[repeat\(2\2c 100px\)\]{grid-template-columns:repeat(2,100px)}.grid-cols-\[repeat\(3\2c 100px\)\]{grid-template-columns:repeat(3,100px)}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[7px\]{gap:7px}.gap-px{gap:1px}.gap-y-5{row-gap:1.25rem}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-normal{overflow-wrap:normal;word-break:normal}.\!rounded-lg{border-radius:.5rem!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[12px\]{border-radius:12px}.rounded-\[20px\]{border-radius:20px}.rounded-\[32px\]{border-radius:32px}.rounded-\[4px\]{border-radius:4px}.rounded-\[8px\]{border-radius:8px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-r-xl{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-bl-none{border-bottom-left-radius:0}.rounded-br-none{border-bottom-right-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.\!border-danger-400{--tw-border-opacity:1!important;border-color:rgb(240 68 56/var(--tw-border-opacity,1))!important}.\!border-gray-25{--tw-border-opacity:1!important;border-color:rgb(239 239 239/var(--tw-border-opacity,1))!important}.\!border-primary-400{--tw-border-opacity:1!important;border-color:rgb(27 63 228/var(--tw-border-opacity,1))!important}.border-blue-500{--tw-border-opacity:1;border-color:rgb(40 138 230/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(194 197 199/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(168 173 175/var(--tw-border-opacity,1))}.border-gray-200\/20{border-color:hsla(197,4%,67%,.2)}.border-gray-25{--tw-border-opacity:1;border-color:rgb(239 239 239/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(142 148 150/var(--tw-border-opacity,1))}.border-gray-50{--tw-border-opacity:1;border-color:rgb(221 222 223/var(--tw-border-opacity,1))}.border-gray-900\/10{border-color:rgba(57,62,64,.1)}.border-indigo-500{--tw-border-opacity:1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-primary-200{--tw-border-opacity:1;border-color:rgb(96 124 251/var(--tw-border-opacity,1))}.border-primary-400{--tw-border-opacity:1;border-color:rgb(27 63 228/var(--tw-border-opacity,1))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.\!bg-amber-100{--tw-bg-opacity:1!important;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))!important}.\!bg-amber-500{--tw-bg-opacity:1!important;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))!important}.\!bg-blue-100{--tw-bg-opacity:1!important;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))!important}.\!bg-blue-500{--tw-bg-opacity:1!important;background-color:rgb(40 138 230/var(--tw-bg-opacity,1))!important}.\!bg-danger-400{--tw-bg-opacity:1!important;background-color:rgb(240 68 56/var(--tw-bg-opacity,1))!important}.\!bg-gray-100{--tw-bg-opacity:1!important;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))!important}.\!bg-gray-25{--tw-bg-opacity:1!important;background-color:rgb(239 239 239/var(--tw-bg-opacity,1))!important}.\!bg-gray-500{--tw-bg-opacity:1!important;background-color:rgb(104 111 114/var(--tw-bg-opacity,1))!important}.\!bg-green-100{--tw-bg-opacity:1!important;background-color:rgb(246 255 237/var(--tw-bg-opacity,1))!important}.\!bg-green-500{--tw-bg-opacity:1!important;background-color:rgb(38 191 135/var(--tw-bg-opacity,1))!important}.\!bg-orange-100{--tw-bg-opacity:1!important;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))!important}.\!bg-orange-500{--tw-bg-opacity:1!important;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))!important}.\!bg-primary-400{--tw-bg-opacity:1!important;background-color:rgb(27 63 228/var(--tw-bg-opacity,1))!important}.\!bg-purple-100{--tw-bg-opacity:1!important;background-color:rgb(249 240 255/var(--tw-bg-opacity,1))!important}.\!bg-purple-500{--tw-bg-opacity:1!important;background-color:rgb(146 84 222/var(--tw-bg-opacity,1))!important}.\!bg-red-100{--tw-bg-opacity:1!important;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))!important}.\!bg-red-500{--tw-bg-opacity:1!important;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))!important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/10{background-color:rgba(0,0,0,.1)}.bg-black\/30{background-color:rgba(0,0,0,.3)}.bg-black\/5{background-color:rgba(0,0,0,.05)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))}.bg-blue-25{--tw-bg-opacity:1;background-color:rgb(234 245 255/var(--tw-bg-opacity,1))}.bg-blue-300{--tw-bg-opacity:1;background-color:rgb(89 171 255/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(198 226 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(40 138 230/var(--tw-bg-opacity,1))}.bg-chat-avatar{--tw-bg-opacity:1;background-color:rgb(12 92 255/var(--tw-bg-opacity,1))}.bg-chat-bubble-mine\/10{background-color:rgba(0,81,255,.1)}.bg-chat-bubble-neutral\/10{background-color:rgba(131,137,157,.1)}.bg-chat-bubble-neutral\/\[0\.05\]{background-color:rgba(131,137,157,.05)}.bg-chat-internal\/10{background-color:rgba(255,149,0,.1)}.bg-chat-send{--tw-bg-opacity:1;background-color:rgb(0 43 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(168 173 175/var(--tw-bg-opacity,1))}.bg-gray-200\/10{background-color:hsla(197,4%,67%,.1)}.bg-gray-25{--tw-bg-opacity:1;background-color:rgb(239 239 239/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(221 222 223/var(--tw-bg-opacity,1))}.bg-gray-50\/20{background-color:hsla(210,3%,87%,.2)}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(57 62 64/var(--tw-bg-opacity,1))}.bg-gray-cool-200{--tw-bg-opacity:1;background-color:rgb(169 178 208/var(--tw-bg-opacity,1))}.bg-gray-cool-25{--tw-bg-opacity:1;background-color:rgb(241 243 248/var(--tw-bg-opacity,1))}.bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.bg-neutral-200{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-900{--tw-bg-opacity:1;background-color:rgb(242 133 4/var(--tw-bg-opacity,1))}.bg-primary-25{--tw-bg-opacity:1;background-color:rgb(230 233 255/var(--tw-bg-opacity,1))}.bg-primary-400{--tw-bg-opacity:1;background-color:rgb(27 63 228/var(--tw-bg-opacity,1))}.bg-primary-400\/60{background-color:rgba(27,63,228,.6)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/70{background-color:hsla(0,0%,100%,.7)}.bg-gradient-danger-light{background-image:linear-gradient(93deg,#ff7d74,#f04438)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-0{padding:0!important}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[3px\]{padding-left:3px;padding-right:3px}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[42px\]{padding-top:42px;padding-bottom:42px}.py-\[4px\]{padding-top:4px;padding-bottom:4px}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-60{padding-bottom:15rem}.pl-0{padding-left:0}.pl-12{padding-left:3rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.\!align-\[-4px\]{vertical-align:-4px!important}.\!text-\[16px\]{font-size:16px!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.\!font-medium{font-weight:500!important}.font-\[510\]{font-weight:510}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-3{line-height:.75rem}.leading-4{line-height:1rem}.leading-\[1\.4\]{line-height:1.4}.leading-\[1\.6\]{line-height:1.6}.leading-\[160\%\]{line-height:160%}.leading-none{line-height:1}.tracking-\[-0\.14px\]{letter-spacing:-.14px}.tracking-\[0\.12px\]{letter-spacing:.12px}.tracking-\[0\.14px\]{letter-spacing:.14px}.tracking-\[0\.16px\]{letter-spacing:.16px}.tracking-\[0\.1px\]{letter-spacing:.1px}.tracking-wider{letter-spacing:.05em}.\!text-amber-500{--tw-text-opacity:1!important;color:rgb(245 158 11/var(--tw-text-opacity,1))!important}.\!text-blue-500{--tw-text-opacity:1!important;color:rgb(40 138 230/var(--tw-text-opacity,1))!important}.\!text-gray-500{--tw-text-opacity:1!important;color:rgb(104 111 114/var(--tw-text-opacity,1))!important}.\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 64/var(--tw-text-opacity,1))!important}.\!text-green-500{--tw-text-opacity:1!important;color:rgb(38 191 135/var(--tw-text-opacity,1))!important}.\!text-orange-400{--tw-text-opacity:1!important;color:rgb(251 146 60/var(--tw-text-opacity,1))!important}.\!text-orange-500{--tw-text-opacity:1!important;color:rgb(249 115 22/var(--tw-text-opacity,1))!important}.\!text-purple-500{--tw-text-opacity:1!important;color:rgb(146 84 222/var(--tw-text-opacity,1))!important}.\!text-red-500{--tw-text-opacity:1!important;color:rgb(239 68 68/var(--tw-text-opacity,1))!important}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(40 138 230/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(27 122 204/var(--tw-text-opacity,1))}.text-chat-bubble-mine{--tw-text-opacity:1;color:rgb(0 81 255/var(--tw-text-opacity,1))}.text-chat-bubble-neutral{--tw-text-opacity:1;color:rgb(131 137 157/var(--tw-text-opacity,1))}.text-chat-internal{--tw-text-opacity:1;color:rgb(255 149 0/var(--tw-text-opacity,1))}.text-danger-400{--tw-text-opacity:1;color:rgb(240 68 56/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(142 148 150/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(104 111 114/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(92 99 102/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(80 87 89/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(68 74 77/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(57 62 64/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-primary-400{--tw-text-opacity:1;color:rgb(27 63 228/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.\!shadow-none{--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.shadow-badge-inset{--tw-shadow:inset 2px 6px 8px 0 rgba(0,0,0,.4);--tw-shadow-colored:inset 2px 6px 8px 0 var(--tw-shadow-color)}.shadow-badge-inset,.shadow-inset-gray-divider{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-inset-gray-divider{--tw-shadow:inset 0px -1px 0px 0px rgba(61,63,64,.1);--tw-shadow-colored:inset 0px -1px 0px 0px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-primary-focus{--tw-shadow:0px 0px 2px rgba(27,63,228,.5);--tw-shadow-colored:0px 0px 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.\[font-feature-settings\:\'liga\'_off\2c \'clig\'_off\]{font-feature-settings:"liga" off,"clig" off}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.ant-tabs-tab{margin:0!important;min-width:80px!important;justify-content:center!important;align-items:center!important}.ant-tabs-content,.ant-tabs-content-holder,.ant-tabs-tabpane{height:100%}.zoom-in-out-element{animation:zoom-in-zoom-out 1.5s ease none}@keyframes zoom-in-zoom-out{0%{scale:100%}25%{scale:125%}50%{scale:100%}75%{scale:125%}to{scale:100%}}.conversation-message-input-scrollbar{-moz-appearance:none!important;-webkit-appearance:none!important;appearance:none!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:none!important;scrollbar-width:thin;scrollbar-color:rgba(40,43,54,.3) transparent}.conversation-message-input-scrollbar:active,.conversation-message-input-scrollbar:focus,.conversation-message-input-scrollbar:focus-visible{background:transparent!important;border:0!important;border-color:transparent!important;box-shadow:none!important;outline:none!important;--tw-ring-color:transparent!important;--tw-ring-offset-shadow:0 0 #0000!important;--tw-ring-shadow:0 0 #0000!important}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.last\:border-b-0:last-child{border-bottom-width:0}.focus-within\:border-chat-focus:focus-within{--tw-border-opacity:1;border-color:rgb(50 120 247/var(--tw-border-opacity,1))}.focus-within\:shadow-chat-focus-ring:focus-within{--tw-shadow:0 0 0 2px rgba(50,120,247,.12);--tw-shadow-colored:0 0 0 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:rounded-sm:hover{border-radius:.125rem}.hover\:\!border-danger-300:hover{--tw-border-opacity:1!important;border-color:rgb(250 95 84/var(--tw-border-opacity,1))!important}.hover\:\!border-primary-300:hover{--tw-border-opacity:1!important;border-color:rgb(60 92 241/var(--tw-border-opacity,1))!important}.hover\:\!bg-danger-300:hover{--tw-bg-opacity:1!important;background-color:rgb(250 95 84/var(--tw-bg-opacity,1))!important}.hover\:\!bg-primary-300:hover{--tw-bg-opacity:1!important;background-color:rgb(60 92 241/var(--tw-bg-opacity,1))!important}.hover\:bg-black\/70:hover{background-color:rgba(0,0,0,.7)}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(168 173 175/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(221 222 223/var(--tw-bg-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(17 107 179/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(92 99 102/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(80 87 89/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.focus\:border-0:focus{border-width:0}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-chat-ring:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(22 119 255/var(--tw-ring-opacity,1))}.active\:bg-chat-bubble-neutral\/\[0\.08\]:active{background-color:rgba(131,137,157,.08)}.active\:bg-primary-400\/90:active{background-color:rgba(27,63,228,.9)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:640px){.sm\:px-4{padding-left:1rem;padding-right:1rem}}.\[\&\>svg\]\:h-6>svg{height:1.5rem}.\[\&\>svg\]\:h-8>svg{height:2rem}.\[\&\>svg\]\:h-full>svg{height:100%}.\[\&\>svg\]\:w-6>svg{width:1.5rem}.\[\&\>svg\]\:w-8>svg{width:2rem}.\[\&\>svg\]\:w-auto>svg{width:auto}.\[\&_\.ant-dropdown-menu-item\]\:rounded-none .ant-dropdown-menu-item{border-radius:0}.\[\&_\.ant-dropdown-menu-item\]\:\!px-4 .ant-dropdown-menu-item{padding-left:1rem!important;padding-right:1rem!important}.\[\&_\.ant-dropdown-menu-item\]\:\!py-1\.5 .ant-dropdown-menu-item{padding-top:.375rem!important;padding-bottom:.375rem!important}.\[\&_\.ant-dropdown-menu\]\:min-w-\[200px\] .ant-dropdown-menu{min-width:200px}.\[\&_\.ant-dropdown-menu\]\:rounded-2xl .ant-dropdown-menu{border-radius:1rem}.\[\&_\.ant-dropdown-menu\]\:p-0 .ant-dropdown-menu{padding:0}.\[\&_\.ant-dropdown-menu\]\:py-2 .ant-dropdown-menu{padding-top:.5rem;padding-bottom:.5rem}.\[\&_\.ant-dropdown-menu\]\:shadow-message-toolbox .ant-dropdown-menu{--tw-shadow:0px 0px 24px 0px rgba(14,28,52,.1);--tw-shadow-colored:0px 0px 24px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.\[\&_\.ant-tabs-content-holder\]\:hidden .ant-tabs-content-holder{display:none}.\[\&_\.ant-tabs-extra-content\]\:flex .ant-tabs-extra-content{display:flex}.\[\&_\.ant-tabs-extra-content\]\:items-center .ant-tabs-extra-content{align-items:center}.\[\&_\.ant-tabs-extra-content\]\:overflow-hidden .ant-tabs-extra-content{overflow:hidden}.\[\&_\.ant-tabs-extra-content\]\:text-ellipsis .ant-tabs-extra-content{text-overflow:ellipsis}.\[\&_\.ant-tabs-ink-bar\]\:hidden .ant-tabs-ink-bar{display:none}.\[\&_\.ant-tabs-nav-wrap\]\:justify-end .ant-tabs-nav-wrap{justify-content:flex-end}.\[\&_\.ant-tabs-nav\]\:mb-0 .ant-tabs-nav{margin-bottom:0}.\[\&_\.ant-tabs-nav\]\:px-4 .ant-tabs-nav{padding-left:1rem;padding-right:1rem}.\[\&_\.ant-tabs-nav\]\:pt-0 .ant-tabs-nav{padding-top:0}.\[\&_\.ant-tabs-nav\]\:before\:border-b-0 .ant-tabs-nav:before{content:var(--tw-content);border-bottom-width:0}.\[\&_\.ant-tabs-tab-active\]\:border-indigo-200 .ant-tabs-tab-active{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:border-orange-200 .ant-tabs-tab-active{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:bg-indigo-50 .ant-tabs-tab-active{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:bg-orange-50 .ant-tabs-tab-active{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.\[\&_\.ant-tabs-tab-btn\]\:leading-5 .ant-tabs-tab-btn{line-height:1.25rem}.\[\&_\.ant-tabs-tab\]\:mb-0 .ant-tabs-tab{margin-bottom:0}.\[\&_\.ant-tabs-tab\]\:rounded-t-\[16px\] .ant-tabs-tab{border-top-left-radius:16px;border-top-right-radius:16px}.\[\&_\.ant-tabs-tab\]\:border .ant-tabs-tab{border-width:1px}.\[\&_\.ant-tabs-tab\]\:border-b-0 .ant-tabs-tab{border-bottom-width:0}.\[\&_\.ant-tabs-tab\]\:border-transparent .ant-tabs-tab{border-color:transparent}.\[\&_\.ant-tabs-tab\]\:px-3 .ant-tabs-tab{padding-left:.75rem;padding-right:.75rem}.\[\&_\.ant-tabs-tab\]\:py-1\.5 .ant-tabs-tab{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\.ant-tabs-tab\]\:leading-5 .ant-tabs-tab{line-height:1.25rem}
1
+ *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(40,138,230,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(40,138,230,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #a8adaf}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#747b7e}input::placeholder,textarea::placeholder{opacity:1;color:#747b7e}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-px{bottom:-1px}.-right-1{right:-.25rem}.-right-px{right:-1px}.-top-1{top:-.25rem}.-top-2\.5{top:-.625rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.\!z-\[9999\]{z-index:9999!important}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mr-1\.5{margin-right:-.375rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-2{margin-left:.5rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-\[2px\]{margin-top:2px}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.\!h-full{height:100%!important}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[100px\]{height:100px}.h-\[120px\]{height:120px}.h-\[17px\]{height:17px}.h-\[22px\]{height:22px}.h-\[36px\]{height:36px}.h-\[3px\]{height:3px}.h-\[400px\]{height:400px}.h-\[42px\]{height:42px}.h-\[51px\]{height:51px}.h-\[59px\]{height:59px}.h-\[600px\]{height:600px}.h-\[76px\]{height:76px}.h-full{height:100%}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-72{max-height:18rem}.max-h-\[140px\]{max-height:140px}.max-h-\[80vh\]{max-height:80vh}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.min-h-40{min-height:10rem}.min-h-6{min-height:1.5rem}.min-h-\[25\.6px\]{min-height:25.6px}.min-h-\[32px\]{min-height:32px}.min-h-\[64px\]{min-height:64px}.w-1{width:.25rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-24{width:6rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[100px\]{width:100px}.w-\[120px\]{width:120px}.w-\[168px\]{width:168px}.w-\[170px\]{width:170px}.w-\[26px\]{width:26px}.w-\[292px\]{width:292px}.w-\[320px\]{width:320px}.w-\[330px\]{width:330px}.w-\[36px\]{width:36px}.w-\[3px\]{width:3px}.w-\[400px\]{width:400px}.w-\[42px\]{width:42px}.w-\[51px\]{width:51px}.w-\[52px\]{width:52px}.w-\[600px\]{width:600px}.w-\[76px\]{width:76px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-6{min-width:1.5rem}.min-w-8{min-width:2rem}.min-w-\[100px\]{min-width:100px}.min-w-\[26px\]{min-width:26px}.max-w-\[200px\]{max-width:200px}.max-w-\[292px\]{max-width:292px}.max-w-\[75\%\]{max-width:75%}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-\[1_0_0\]{flex:1 0 0}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-\[repeat\(1\2c 100px\)\]{grid-template-columns:repeat(1,100px)}.grid-cols-\[repeat\(2\2c 100px\)\]{grid-template-columns:repeat(2,100px)}.grid-cols-\[repeat\(3\2c 100px\)\]{grid-template-columns:repeat(3,100px)}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[7px\]{gap:7px}.gap-px{gap:1px}.gap-y-5{row-gap:1.25rem}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-normal{overflow-wrap:normal;word-break:normal}.\!rounded-lg{border-radius:.5rem!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[12px\]{border-radius:12px}.rounded-\[20px\]{border-radius:20px}.rounded-\[32px\]{border-radius:32px}.rounded-\[4px\]{border-radius:4px}.rounded-\[8px\]{border-radius:8px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-r-xl{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-bl-none{border-bottom-left-radius:0}.rounded-br-none{border-bottom-right-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.\!border-danger-400{--tw-border-opacity:1!important;border-color:rgb(240 68 56/var(--tw-border-opacity,1))!important}.\!border-gray-25{--tw-border-opacity:1!important;border-color:rgb(239 239 239/var(--tw-border-opacity,1))!important}.\!border-primary-400{--tw-border-opacity:1!important;border-color:rgb(27 63 228/var(--tw-border-opacity,1))!important}.border-blue-500{--tw-border-opacity:1;border-color:rgb(40 138 230/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(194 197 199/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(168 173 175/var(--tw-border-opacity,1))}.border-gray-200\/20{border-color:hsla(197,4%,67%,.2)}.border-gray-25{--tw-border-opacity:1;border-color:rgb(239 239 239/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(142 148 150/var(--tw-border-opacity,1))}.border-gray-50{--tw-border-opacity:1;border-color:rgb(221 222 223/var(--tw-border-opacity,1))}.border-gray-900\/10{border-color:rgba(57,62,64,.1)}.border-indigo-500{--tw-border-opacity:1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-primary-200{--tw-border-opacity:1;border-color:rgb(96 124 251/var(--tw-border-opacity,1))}.border-primary-400{--tw-border-opacity:1;border-color:rgb(27 63 228/var(--tw-border-opacity,1))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.\!bg-amber-100{--tw-bg-opacity:1!important;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))!important}.\!bg-amber-500{--tw-bg-opacity:1!important;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))!important}.\!bg-blue-100{--tw-bg-opacity:1!important;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))!important}.\!bg-blue-500{--tw-bg-opacity:1!important;background-color:rgb(40 138 230/var(--tw-bg-opacity,1))!important}.\!bg-danger-400{--tw-bg-opacity:1!important;background-color:rgb(240 68 56/var(--tw-bg-opacity,1))!important}.\!bg-gray-100{--tw-bg-opacity:1!important;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))!important}.\!bg-gray-25{--tw-bg-opacity:1!important;background-color:rgb(239 239 239/var(--tw-bg-opacity,1))!important}.\!bg-gray-500{--tw-bg-opacity:1!important;background-color:rgb(104 111 114/var(--tw-bg-opacity,1))!important}.\!bg-green-100{--tw-bg-opacity:1!important;background-color:rgb(246 255 237/var(--tw-bg-opacity,1))!important}.\!bg-green-500{--tw-bg-opacity:1!important;background-color:rgb(38 191 135/var(--tw-bg-opacity,1))!important}.\!bg-orange-100{--tw-bg-opacity:1!important;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))!important}.\!bg-orange-500{--tw-bg-opacity:1!important;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))!important}.\!bg-primary-400{--tw-bg-opacity:1!important;background-color:rgb(27 63 228/var(--tw-bg-opacity,1))!important}.\!bg-purple-100{--tw-bg-opacity:1!important;background-color:rgb(249 240 255/var(--tw-bg-opacity,1))!important}.\!bg-purple-500{--tw-bg-opacity:1!important;background-color:rgb(146 84 222/var(--tw-bg-opacity,1))!important}.\!bg-red-100{--tw-bg-opacity:1!important;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))!important}.\!bg-red-500{--tw-bg-opacity:1!important;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))!important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/10{background-color:rgba(0,0,0,.1)}.bg-black\/30{background-color:rgba(0,0,0,.3)}.bg-black\/5{background-color:rgba(0,0,0,.05)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))}.bg-blue-25{--tw-bg-opacity:1;background-color:rgb(234 245 255/var(--tw-bg-opacity,1))}.bg-blue-300{--tw-bg-opacity:1;background-color:rgb(89 171 255/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(198 226 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(40 138 230/var(--tw-bg-opacity,1))}.bg-chat-bubble-mine\/10{background-color:rgba(0,81,255,.1)}.bg-chat-bubble-neutral\/10{background-color:rgba(131,137,157,.1)}.bg-chat-bubble-neutral\/\[0\.05\]{background-color:rgba(131,137,157,.05)}.bg-chat-internal\/10{background-color:rgba(255,149,0,.1)}.bg-chat-send{--tw-bg-opacity:1;background-color:rgb(0 43 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(168 173 175/var(--tw-bg-opacity,1))}.bg-gray-200\/10{background-color:hsla(197,4%,67%,.1)}.bg-gray-25{--tw-bg-opacity:1;background-color:rgb(239 239 239/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(221 222 223/var(--tw-bg-opacity,1))}.bg-gray-50\/20{background-color:hsla(210,3%,87%,.2)}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(57 62 64/var(--tw-bg-opacity,1))}.bg-gray-cool-200{--tw-bg-opacity:1;background-color:rgb(169 178 208/var(--tw-bg-opacity,1))}.bg-gray-cool-25{--tw-bg-opacity:1;background-color:rgb(241 243 248/var(--tw-bg-opacity,1))}.bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.bg-neutral-200{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-900{--tw-bg-opacity:1;background-color:rgb(242 133 4/var(--tw-bg-opacity,1))}.bg-primary-25{--tw-bg-opacity:1;background-color:rgb(230 233 255/var(--tw-bg-opacity,1))}.bg-primary-400{--tw-bg-opacity:1;background-color:rgb(27 63 228/var(--tw-bg-opacity,1))}.bg-primary-400\/60{background-color:rgba(27,63,228,.6)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/70{background-color:hsla(0,0%,100%,.7)}.bg-gradient-danger-light{background-image:linear-gradient(93deg,#ff7d74,#f04438)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-0{padding:0!important}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[3px\]{padding-left:3px;padding-right:3px}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[42px\]{padding-top:42px;padding-bottom:42px}.py-\[4px\]{padding-top:4px;padding-bottom:4px}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-60{padding-bottom:15rem}.pl-0{padding-left:0}.pl-12{padding-left:3rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.\!align-\[-4px\]{vertical-align:-4px!important}.\!text-\[16px\]{font-size:16px!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.\!font-medium{font-weight:500!important}.font-\[510\]{font-weight:510}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-3{line-height:.75rem}.leading-4{line-height:1rem}.leading-\[1\.4\]{line-height:1.4}.leading-\[1\.6\]{line-height:1.6}.leading-\[160\%\]{line-height:160%}.leading-none{line-height:1}.tracking-\[-0\.14px\]{letter-spacing:-.14px}.tracking-\[0\.12px\]{letter-spacing:.12px}.tracking-\[0\.14px\]{letter-spacing:.14px}.tracking-\[0\.16px\]{letter-spacing:.16px}.tracking-\[0\.1px\]{letter-spacing:.1px}.tracking-wider{letter-spacing:.05em}.\!text-amber-500{--tw-text-opacity:1!important;color:rgb(245 158 11/var(--tw-text-opacity,1))!important}.\!text-blue-500{--tw-text-opacity:1!important;color:rgb(40 138 230/var(--tw-text-opacity,1))!important}.\!text-gray-500{--tw-text-opacity:1!important;color:rgb(104 111 114/var(--tw-text-opacity,1))!important}.\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 64/var(--tw-text-opacity,1))!important}.\!text-green-500{--tw-text-opacity:1!important;color:rgb(38 191 135/var(--tw-text-opacity,1))!important}.\!text-orange-400{--tw-text-opacity:1!important;color:rgb(251 146 60/var(--tw-text-opacity,1))!important}.\!text-orange-500{--tw-text-opacity:1!important;color:rgb(249 115 22/var(--tw-text-opacity,1))!important}.\!text-purple-500{--tw-text-opacity:1!important;color:rgb(146 84 222/var(--tw-text-opacity,1))!important}.\!text-red-500{--tw-text-opacity:1!important;color:rgb(239 68 68/var(--tw-text-opacity,1))!important}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(40 138 230/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(27 122 204/var(--tw-text-opacity,1))}.text-chat-bubble-mine{--tw-text-opacity:1;color:rgb(0 81 255/var(--tw-text-opacity,1))}.text-chat-bubble-neutral{--tw-text-opacity:1;color:rgb(131 137 157/var(--tw-text-opacity,1))}.text-chat-internal{--tw-text-opacity:1;color:rgb(255 149 0/var(--tw-text-opacity,1))}.text-danger-400{--tw-text-opacity:1;color:rgb(240 68 56/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(142 148 150/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(104 111 114/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(92 99 102/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(80 87 89/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(68 74 77/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(57 62 64/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-primary-400{--tw-text-opacity:1;color:rgb(27 63 228/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.\!shadow-none{--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.shadow-badge-inset{--tw-shadow:inset 2px 6px 8px 0 rgba(0,0,0,.4);--tw-shadow-colored:inset 2px 6px 8px 0 var(--tw-shadow-color)}.shadow-badge-inset,.shadow-inset-gray-divider{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-inset-gray-divider{--tw-shadow:inset 0px -1px 0px 0px rgba(61,63,64,.1);--tw-shadow-colored:inset 0px -1px 0px 0px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-primary-focus{--tw-shadow:0px 0px 2px rgba(27,63,228,.5);--tw-shadow-colored:0px 0px 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.\[font-feature-settings\:\'liga\'_off\2c \'clig\'_off\]{font-feature-settings:"liga" off,"clig" off}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.ant-tabs-tab{margin:0!important;min-width:80px!important;justify-content:center!important;align-items:center!important}.ant-tabs-content,.ant-tabs-content-holder,.ant-tabs-tabpane{height:100%}.zoom-in-out-element{animation:zoom-in-zoom-out 1.5s ease none}@keyframes zoom-in-zoom-out{0%{scale:100%}25%{scale:125%}50%{scale:100%}75%{scale:125%}to{scale:100%}}.conversation-message-input-scrollbar{-moz-appearance:none!important;-webkit-appearance:none!important;appearance:none!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:none!important;scrollbar-width:thin;scrollbar-color:rgba(40,43,54,.3) transparent}.conversation-message-input-scrollbar:active,.conversation-message-input-scrollbar:focus,.conversation-message-input-scrollbar:focus-visible{background:transparent!important;border:0!important;border-color:transparent!important;box-shadow:none!important;outline:none!important;--tw-ring-color:transparent!important;--tw-ring-offset-shadow:0 0 #0000!important;--tw-ring-shadow:0 0 #0000!important}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity:1;color:rgb(116 123 126/var(--tw-text-opacity,1))}.last\:border-b-0:last-child{border-bottom-width:0}.focus-within\:border-chat-focus:focus-within{--tw-border-opacity:1;border-color:rgb(50 120 247/var(--tw-border-opacity,1))}.focus-within\:shadow-chat-focus-ring:focus-within{--tw-shadow:0 0 0 2px rgba(50,120,247,.12);--tw-shadow-colored:0 0 0 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:rounded-sm:hover{border-radius:.125rem}.hover\:\!border-danger-300:hover{--tw-border-opacity:1!important;border-color:rgb(250 95 84/var(--tw-border-opacity,1))!important}.hover\:\!border-primary-300:hover{--tw-border-opacity:1!important;border-color:rgb(60 92 241/var(--tw-border-opacity,1))!important}.hover\:\!bg-danger-300:hover{--tw-bg-opacity:1!important;background-color:rgb(250 95 84/var(--tw-bg-opacity,1))!important}.hover\:\!bg-primary-300:hover{--tw-bg-opacity:1!important;background-color:rgb(60 92 241/var(--tw-bg-opacity,1))!important}.hover\:bg-black\/70:hover{background-color:rgba(0,0,0,.7)}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(161 208 255/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(194 197 199/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(168 173 175/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(221 222 223/var(--tw-bg-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(17 107 179/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(92 99 102/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(80 87 89/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.focus\:border-0:focus{border-width:0}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-chat-ring:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(22 119 255/var(--tw-ring-opacity,1))}.active\:bg-chat-bubble-neutral\/\[0\.08\]:active{background-color:rgba(131,137,157,.08)}.active\:bg-primary-400\/90:active{background-color:rgba(27,63,228,.9)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:640px){.sm\:px-4{padding-left:1rem;padding-right:1rem}}.\[\&\>svg\]\:h-6>svg{height:1.5rem}.\[\&\>svg\]\:h-8>svg{height:2rem}.\[\&\>svg\]\:h-full>svg{height:100%}.\[\&\>svg\]\:w-6>svg{width:1.5rem}.\[\&\>svg\]\:w-8>svg{width:2rem}.\[\&\>svg\]\:w-auto>svg{width:auto}.\[\&_\.ant-dropdown-menu-item\]\:rounded-none .ant-dropdown-menu-item{border-radius:0}.\[\&_\.ant-dropdown-menu-item\]\:\!px-4 .ant-dropdown-menu-item{padding-left:1rem!important;padding-right:1rem!important}.\[\&_\.ant-dropdown-menu-item\]\:\!py-1\.5 .ant-dropdown-menu-item{padding-top:.375rem!important;padding-bottom:.375rem!important}.\[\&_\.ant-dropdown-menu\]\:min-w-\[200px\] .ant-dropdown-menu{min-width:200px}.\[\&_\.ant-dropdown-menu\]\:rounded-2xl .ant-dropdown-menu{border-radius:1rem}.\[\&_\.ant-dropdown-menu\]\:p-0 .ant-dropdown-menu{padding:0}.\[\&_\.ant-dropdown-menu\]\:py-2 .ant-dropdown-menu{padding-top:.5rem;padding-bottom:.5rem}.\[\&_\.ant-dropdown-menu\]\:shadow-message-toolbox .ant-dropdown-menu{--tw-shadow:0px 0px 24px 0px rgba(14,28,52,.1);--tw-shadow-colored:0px 0px 24px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.\[\&_\.ant-tabs-content-holder\]\:hidden .ant-tabs-content-holder{display:none}.\[\&_\.ant-tabs-extra-content\]\:flex .ant-tabs-extra-content{display:flex}.\[\&_\.ant-tabs-extra-content\]\:items-center .ant-tabs-extra-content{align-items:center}.\[\&_\.ant-tabs-extra-content\]\:overflow-hidden .ant-tabs-extra-content{overflow:hidden}.\[\&_\.ant-tabs-extra-content\]\:text-ellipsis .ant-tabs-extra-content{text-overflow:ellipsis}.\[\&_\.ant-tabs-ink-bar\]\:hidden .ant-tabs-ink-bar{display:none}.\[\&_\.ant-tabs-nav-wrap\]\:justify-end .ant-tabs-nav-wrap{justify-content:flex-end}.\[\&_\.ant-tabs-nav\]\:mb-0 .ant-tabs-nav{margin-bottom:0}.\[\&_\.ant-tabs-nav\]\:px-4 .ant-tabs-nav{padding-left:1rem;padding-right:1rem}.\[\&_\.ant-tabs-nav\]\:pt-0 .ant-tabs-nav{padding-top:0}.\[\&_\.ant-tabs-nav\]\:before\:border-b-0 .ant-tabs-nav:before{content:var(--tw-content);border-bottom-width:0}.\[\&_\.ant-tabs-tab-active\]\:border-indigo-200 .ant-tabs-tab-active{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:border-orange-200 .ant-tabs-tab-active{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:bg-indigo-50 .ant-tabs-tab-active{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.\[\&_\.ant-tabs-tab-active\]\:bg-orange-50 .ant-tabs-tab-active{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.\[\&_\.ant-tabs-tab-btn\]\:leading-5 .ant-tabs-tab-btn{line-height:1.25rem}.\[\&_\.ant-tabs-tab\]\:mb-0 .ant-tabs-tab{margin-bottom:0}.\[\&_\.ant-tabs-tab\]\:rounded-t-\[16px\] .ant-tabs-tab{border-top-left-radius:16px;border-top-right-radius:16px}.\[\&_\.ant-tabs-tab\]\:border .ant-tabs-tab{border-width:1px}.\[\&_\.ant-tabs-tab\]\:border-b-0 .ant-tabs-tab{border-bottom-width:0}.\[\&_\.ant-tabs-tab\]\:border-transparent .ant-tabs-tab{border-color:transparent}.\[\&_\.ant-tabs-tab\]\:px-3 .ant-tabs-tab{padding-left:.75rem;padding-right:.75rem}.\[\&_\.ant-tabs-tab\]\:py-1\.5 .ant-tabs-tab{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\.ant-tabs-tab\]\:leading-5 .ant-tabs-tab{line-height:1.25rem}.\[\&_code\]\:font-\[inherit\] code,.\[\&_kbd\]\:font-\[inherit\] kbd,.\[\&_pre\]\:font-\[inherit\] pre,.\[\&_samp\]\:font-\[inherit\] samp{font-family:inherit}
@@ -178,52 +178,6 @@ export interface IFetchCannedResponseRequest {
178
178
  pageSize?: number;
179
179
  shortcut?: string;
180
180
  }
181
- export interface IPullSessionMessagesRequest {
182
- userID: string;
183
- conversationID: string;
184
- applicationType: DChatApplicationType;
185
- }
186
- export interface IPulledRawMessage {
187
- sendID: string;
188
- recvID: string;
189
- groupID: string;
190
- clientMsgID: string;
191
- serverMsgID: string;
192
- senderPlatformID: number;
193
- senderNickname: string;
194
- senderFaceURL: string;
195
- sessionType: number;
196
- msgFrom: number;
197
- contentType: number;
198
- content: string;
199
- seq: number;
200
- sendTime: number;
201
- createTime: number;
202
- status: number;
203
- isRead: boolean;
204
- options: unknown;
205
- offlinePushInfo: {
206
- title: string;
207
- desc: string;
208
- ex: string;
209
- signalInfo: string;
210
- iospushSound: string;
211
- iosbadgeCount: boolean;
212
- } | null;
213
- atUserIDList: string[] | null;
214
- ex: string;
215
- attachedInfo: string;
216
- isInternal?: boolean;
217
- }
218
- export interface IPulledMessagesGroup {
219
- Msgs: IPulledRawMessage[];
220
- isEnd: boolean;
221
- endSeq: number;
222
- }
223
- export interface IPullSessionMessagesResponse {
224
- msgs: Record<string, IPulledMessagesGroup>;
225
- notificationMsgs: Record<string, IPulledMessagesGroup>;
226
- }
227
181
  export interface IConversationImDetailRequestItem {
228
182
  ownerUserID: string;
229
183
  conversationID: string;
@@ -1 +1 @@
1
- {"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../src/types/dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../src/types/dto.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { MessageType } from "@openim/wasm-client-sdk";
1
+ import { ConversationItem, MessageType } from "@openim/wasm-client-sdk";
2
2
  import { TFunction } from "i18next";
3
3
  import { UrlMetadataInfo } from "../types/chat";
4
4
  import { PeerType } from "../types/conversation";
@@ -19,6 +19,8 @@ export declare const generateContentBasedOnMessageType: (contentType: MessageTyp
19
19
  extension?: string;
20
20
  description?: string;
21
21
  }) => string;
22
+ export declare const isInternalLatestMessage: (latestMsg?: string) => boolean;
23
+ export declare const ignoreInternalLatestMessage: (conversations: ConversationItem[], isCrm: boolean) => ConversationItem[];
22
24
  export declare const parseLatestMessage: (latestMsg: string, currentUserId?: string, t?: TFunction, conversation?: {
23
25
  peerType?: PeerType | string;
24
26
  showName?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/utils/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAqB,eAAe,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,CAAC,CAQlE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,eAAe,GAAG,SAQhE,CAAC;AAwBF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAapD;AAED,UAAU,sBAAsB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,eAAe,GAC1B,OAAO,MAAM,EACb,UAAS,sBAA2B,WAoBrC,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAC5C,aAAa,WAAW,EACxB,YAAY,MAAM,EAClB,IAAI,SAAS,EACb,YAAY;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EACpD,aAAa;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,WAwC1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,IAAI,SAAS,EACb,eAAe;IAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,WAgFnE,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,MAAM,MAAM,EACZ,SAAS,MAAM,EACf,kBAAc,WA2Cf,CAAC;AAEF,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,CAqBR;AAED,eAAO,MAAM,QAAQ,QAAkD,CAAC;AAExE,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAqC3D;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,IAOrD,CAAC;AAKF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,OACf,CAAC;AAEnC,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAO9B,CAAC;AAEZ;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgEjD"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/utils/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,WAAW,EACZ,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAqB,eAAe,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,CAAC,CAQlE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,eAAe,GAAG,SAQhE,CAAC;AAwBF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAapD;AAED,UAAU,sBAAsB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,eAAe,GAC1B,OAAO,MAAM,EACb,UAAS,sBAA2B,WAoBrC,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAC5C,aAAa,WAAW,EACxB,YAAY,MAAM,EAClB,IAAI,SAAS,EACb,YAAY;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EACpD,aAAa;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,WAwC1D,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,YAAY,MAAM,KAAG,OAS5D,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,eAAe,gBAAgB,EAAE,EACjC,OAAO,OAAO,KACb,gBAAgB,EAMlB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,IAAI,SAAS,EACb,eAAe;IAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,WAgFnE,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,MAAM,MAAM,EACZ,SAAS,MAAM,EACf,kBAAc,WA2Cf,CAAC;AAEF,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,CAqBR;AAED,eAAO,MAAM,QAAQ,QAAkD,CAAC;AAExE,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAqC3D;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,IAOrD,CAAC;AAKF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,OACf,CAAC;AAEnC,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAO9B,CAAC;AAEZ;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgEjD"}
@@ -1,4 +1,4 @@
1
- import { MessageType } from "@openim/wasm-client-sdk";
1
+ import { MessageType, } from "@openim/wasm-client-sdk";
2
2
  import dayjs from "dayjs";
3
3
  import DOMPurify from "dompurify";
4
4
  import { PeerType } from "../types/conversation";
@@ -114,6 +114,22 @@ export const generateContentBasedOnMessageType = (contentType, plainText, t, med
114
114
  return "";
115
115
  }
116
116
  };
117
+ export const isInternalLatestMessage = (latestMsg) => {
118
+ if (!latestMsg)
119
+ return false;
120
+ try {
121
+ const msgData = JSON.parse(latestMsg);
122
+ return Boolean(msgData === null || msgData === void 0 ? void 0 : msgData.isInternal);
123
+ }
124
+ catch (_a) {
125
+ return false;
126
+ }
127
+ };
128
+ export const ignoreInternalLatestMessage = (conversations, isCrm) => {
129
+ if (isCrm)
130
+ return conversations;
131
+ return conversations.filter((conversation) => !isInternalLatestMessage(conversation.latestMsg));
132
+ };
117
133
  export const parseLatestMessage = (latestMsg, currentUserId, t, conversation) => {
118
134
  var _a, _b, _c, _d, _e, _f, _g, _h;
119
135
  if (!latestMsg || !t)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@droppii-org/chat-sdk",
3
- "version": "0.1.86",
3
+ "version": "0.1.88",
4
4
  "description": "Droppii React Chat SDK",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,27 +0,0 @@
1
- import { MessageItem } from "@openim/wasm-client-sdk";
2
- interface UseConversationMessagesParams {
3
- conversationId?: string;
4
- searchClientMsgID?: string;
5
- restrictToLastSession?: boolean;
6
- customerUserID?: string;
7
- }
8
- export declare const useConversationMessages: ({ conversationId, searchClientMsgID, restrictToLastSession, customerUserID, }: UseConversationMessagesParams) => {
9
- loadState: {
10
- initLoading: boolean;
11
- hasMoreOld: boolean;
12
- hasMoreNew: boolean;
13
- messageList: MessageItem[];
14
- };
15
- latestLoadState: import("react").RefObject<{
16
- initLoading: boolean;
17
- hasMoreOld: boolean;
18
- hasMoreNew: boolean;
19
- messageList: MessageItem[];
20
- }>;
21
- moreOldLoading: boolean;
22
- getMoreOldMessages: (loadMore?: any) => Promise<void>;
23
- moreNewLoading: boolean;
24
- getMoreNewMessages: (loadMore?: any) => Promise<void>;
25
- };
26
- export {};
27
- //# sourceMappingURL=useConversationMessages.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useConversationMessages.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/useConversationMessages.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,UAAU,6BAA6B;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,uBAAuB,GAAI,+EAKrC,6BAA6B;;;;;;;;;;;;;;;;;CAwC/B,CAAC"}
@@ -1,30 +0,0 @@
1
- "use client";
2
- import { useMemo } from "react";
3
- import { useMessage } from "./useMessage";
4
- import { usePullSessionMessages } from "./usePullSessionMessages";
5
- export const useConversationMessages = ({ conversationId, searchClientMsgID, restrictToLastSession = false, customerUserID, }) => {
6
- const isPreviewMessagesBeforeJoin = restrictToLastSession;
7
- const sdkMessages = useMessage(conversationId, searchClientMsgID, !isPreviewMessagesBeforeJoin);
8
- const { data: pulledMessages, isLoading: isPullLoading, isFetching: isPullFetching, } = usePullSessionMessages({
9
- conversationID: conversationId,
10
- userID: customerUserID,
11
- enabled: isPreviewMessagesBeforeJoin,
12
- });
13
- const lastSessionState = useMemo(() => ({
14
- initLoading: isPullLoading || isPullFetching,
15
- hasMoreOld: false,
16
- hasMoreNew: false,
17
- messageList: pulledMessages !== null && pulledMessages !== void 0 ? pulledMessages : [],
18
- }), [isPullLoading, isPullFetching, pulledMessages]);
19
- if (isPreviewMessagesBeforeJoin) {
20
- return {
21
- loadState: lastSessionState,
22
- latestLoadState: { current: lastSessionState },
23
- moreOldLoading: false,
24
- getMoreOldMessages: async () => undefined,
25
- moreNewLoading: false,
26
- getMoreNewMessages: async () => undefined,
27
- };
28
- }
29
- return sdkMessages;
30
- };
@@ -1,11 +0,0 @@
1
- import { MessageItem } from "@openim/wasm-client-sdk";
2
- import { IPullSessionMessagesRequest } from "../../types/dto";
3
- interface UsePullSessionMessagesParams {
4
- conversationID?: string;
5
- userID?: string;
6
- enabled?: boolean;
7
- }
8
- export declare const fetchPullSessionMessages: ({ conversationID, userID, applicationType, }: IPullSessionMessagesRequest) => Promise<MessageItem[]>;
9
- export declare const usePullSessionMessages: ({ conversationID, userID, enabled, }: UsePullSessionMessagesParams) => import("@tanstack/react-query").UseQueryResult<MessageItem[], Error>;
10
- export {};
11
- //# sourceMappingURL=usePullSessionMessages.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePullSessionMessages.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/usePullSessionMessages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAItD,OAAO,EAEL,2BAA2B,EAE5B,MAAM,aAAa,CAAC;AAOrB,UAAU,4BAA4B;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,wBAAwB,GAAU,8CAI5C,2BAA2B,KAAG,OAAO,CAAC,WAAW,EAAE,CAerD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,sCAIpC,4BAA4B,yEAa9B,CAAC"}
@@ -1,30 +0,0 @@
1
- import { useQuery } from "@tanstack/react-query";
2
- import { apiInstance } from "../../services/api";
3
- import { ENDPOINTS } from "../../services/routes";
4
- import { QUERY_KEYS } from "../../services/query";
5
- import useAuthStore from "../../store/auth";
6
- import { sortMessagesDesc, transformPulledMessage, } from "../../utils/messageTransform";
7
- export const fetchPullSessionMessages = async ({ conversationID, userID, applicationType, }) => {
8
- var _a, _b, _c, _d;
9
- const payload = {
10
- conversationID,
11
- userID,
12
- applicationType,
13
- };
14
- const res = await apiInstance.post(ENDPOINTS.chatService.pullSessionMessages, payload);
15
- const group = (_c = (_b = (_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.msgs) === null || _c === void 0 ? void 0 : _c[conversationID];
16
- const rawList = (_d = group === null || group === void 0 ? void 0 : group.Msgs) !== null && _d !== void 0 ? _d : [];
17
- return sortMessagesDesc(rawList.map(transformPulledMessage));
18
- };
19
- export const usePullSessionMessages = ({ conversationID, userID, enabled = true, }) => {
20
- const applicationType = useAuthStore((state) => state.applicationType);
21
- return useQuery({
22
- queryKey: [QUERY_KEYS.PULL_SESSION_MESSAGES, conversationID, userID],
23
- enabled: Boolean(enabled && conversationID && userID),
24
- queryFn: () => fetchPullSessionMessages({
25
- conversationID: conversationID !== null && conversationID !== void 0 ? conversationID : "",
26
- userID: userID !== null && userID !== void 0 ? userID : "",
27
- applicationType,
28
- }),
29
- });
30
- };
@@ -1,5 +0,0 @@
1
- import { MessageItem } from "@openim/wasm-client-sdk";
2
- import { IPulledRawMessage } from "../types/dto";
3
- export declare const transformPulledMessage: (raw: IPulledRawMessage) => MessageItem;
4
- export declare const sortMessagesDesc: (messages: MessageItem[]) => MessageItem[];
5
- //# sourceMappingURL=messageTransform.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messageTransform.d.ts","sourceRoot":"","sources":["../../src/utils/messageTransform.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAKZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA0HhD,eAAO,MAAM,sBAAsB,GACjC,KAAK,iBAAiB,KACrB,WA8BF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,UAAU,WAAW,EAAE,KAAG,WAAW,EACE,CAAC"}
@@ -1,114 +0,0 @@
1
- import { MessageStatus, MessageType, } from "@openim/wasm-client-sdk";
2
- const safeJsonParse = (value, fallback) => {
3
- if (!value)
4
- return fallback;
5
- try {
6
- return JSON.parse(value);
7
- }
8
- catch (_a) {
9
- return fallback;
10
- }
11
- };
12
- const decodeBase64 = (value) => {
13
- if (!value)
14
- return "";
15
- try {
16
- if (typeof atob === "function") {
17
- const binary = atob(value);
18
- const bytes = Uint8Array.from(binary, (char) => char.charCodeAt(0));
19
- return new TextDecoder("utf-8").decode(bytes);
20
- }
21
- return Buffer.from(value, "base64").toString("utf-8");
22
- }
23
- catch (_a) {
24
- return "";
25
- }
26
- };
27
- const buildElems = (raw) => {
28
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
29
- const decoded = decodeBase64(raw.content);
30
- const parsed = safeJsonParse(decoded, {});
31
- switch (raw.contentType) {
32
- case MessageType.TextMessage:
33
- return { textElem: { content: (_a = parsed.content) !== null && _a !== void 0 ? _a : "" } };
34
- case MessageType.AtTextMessage:
35
- return {
36
- atTextElem: {
37
- text: (_c = (_b = parsed.text) !== null && _b !== void 0 ? _b : parsed.content) !== null && _c !== void 0 ? _c : "",
38
- atUserList: (_d = parsed.atUserList) !== null && _d !== void 0 ? _d : [],
39
- atUsersInfo: (_e = parsed.atUsersInfo) !== null && _e !== void 0 ? _e : [],
40
- isAtSelf: (_f = parsed.isAtSelf) !== null && _f !== void 0 ? _f : false,
41
- },
42
- };
43
- case MessageType.UrlTextMessage:
44
- return {
45
- urlTextElem: {
46
- content: (_g = parsed.content) !== null && _g !== void 0 ? _g : "",
47
- urls: (_h = parsed.urls) !== null && _h !== void 0 ? _h : [],
48
- },
49
- };
50
- case MessageType.LogTextMessage:
51
- return {
52
- logTextElem: {
53
- content: (_j = parsed.content) !== null && _j !== void 0 ? _j : decoded,
54
- },
55
- };
56
- case MessageType.PictureMessage:
57
- return {
58
- pictureElem: {
59
- sourcePath: (_k = parsed.sourcePath) !== null && _k !== void 0 ? _k : "",
60
- sourcePicture: parsed.sourcePicture,
61
- bigPicture: parsed.bigPicture,
62
- snapshotPicture: parsed.snapshotPicture,
63
- },
64
- };
65
- case MessageType.VideoMessage:
66
- return { videoElem: parsed };
67
- case MessageType.FileMessage:
68
- return { fileElem: parsed };
69
- case MessageType.QuoteMessage:
70
- return { quoteElem: parsed };
71
- case MessageType.MergeMessage:
72
- return { mergeElem: parsed };
73
- case MessageType.CardMessage:
74
- return { cardElem: parsed };
75
- case MessageType.LocationMessage:
76
- return { locationElem: parsed };
77
- case MessageType.FaceMessage:
78
- return { faceElem: parsed };
79
- case MessageType.StickerMessage:
80
- return { stickerElem: { content: (_l = parsed.content) !== null && _l !== void 0 ? _l : "" } };
81
- case MessageType.CustomMessage:
82
- return {
83
- customElem: {
84
- data: (_m = parsed.data) !== null && _m !== void 0 ? _m : "",
85
- description: (_o = parsed.description) !== null && _o !== void 0 ? _o : "",
86
- extension: (_p = parsed.extension) !== null && _p !== void 0 ? _p : "",
87
- },
88
- };
89
- default:
90
- return parsed && Object.keys(parsed).length > 0
91
- ? { textElem: { content: (_q = parsed.content) !== null && _q !== void 0 ? _q : "" } }
92
- : {};
93
- }
94
- };
95
- const DEFAULT_ATTACHED_INFO = {
96
- groupHasReadInfo: {
97
- hasReadCount: 0,
98
- unreadCount: 0,
99
- hasReadUserIDList: [],
100
- groupMemberCount: 0,
101
- },
102
- isPrivateChat: false,
103
- isEncryption: false,
104
- inEncryptStatus: false,
105
- burnDuration: 0,
106
- hasReadTime: 0,
107
- };
108
- export const transformPulledMessage = (raw) => {
109
- var _a;
110
- const elems = buildElems(raw);
111
- const attachedInfoElem = safeJsonParse(raw.attachedInfo, DEFAULT_ATTACHED_INFO);
112
- return Object.assign({ clientMsgID: raw.clientMsgID, serverMsgID: raw.serverMsgID, createTime: raw.createTime, sendTime: raw.sendTime, sessionType: raw.sessionType, sendID: raw.sendID, recvID: raw.recvID, msgFrom: raw.msgFrom, contentType: raw.contentType, senderPlatformID: raw.senderPlatformID, senderNickname: raw.senderNickname, senderFaceUrl: (_a = raw.senderFaceURL) !== null && _a !== void 0 ? _a : "", groupID: raw.groupID, content: raw.content, seq: raw.seq, isRead: raw.isRead, status: (raw.status || MessageStatus.Succeed), ex: raw.ex, attachedInfoElem, isInternal: raw.isInternal }, elems);
113
- };
114
- export const sortMessagesDesc = (messages) => [...messages].sort((a, b) => b.seq - a.seq || b.sendTime - a.sendTime);