@droppii-org/chat-sdk 0.1.68 → 0.1.69

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 (32) hide show
  1. package/dist/components/conversation/ConversationBySessionItem.d.ts.map +1 -1
  2. package/dist/components/conversation/ConversationBySessionItem.js +4 -1
  3. package/dist/components/conversation-inbox/ConversationInboxItem.d.ts.map +1 -1
  4. package/dist/components/conversation-inbox/ConversationInboxItem.js +1 -1
  5. package/dist/components/message/item/TextMessage.d.ts.map +1 -1
  6. package/dist/components/message/item/TextMessage.js +6 -0
  7. package/dist/components/message/item/index.d.ts.map +1 -1
  8. package/dist/components/message/item/index.js +8 -2
  9. package/dist/components/message/item/renderMessageContent.d.ts.map +1 -1
  10. package/dist/components/message/item/renderMessageContent.js +0 -3
  11. package/dist/components/message/reply/ReplyQuoteContent.d.ts.map +1 -1
  12. package/dist/components/message/reply/ReplyQuoteContent.js +1 -1
  13. package/dist/context/ChatContext.d.ts +1 -1
  14. package/dist/context/ChatContext.d.ts.map +1 -1
  15. package/dist/context/ChatContext.js +1 -2
  16. package/dist/hooks/message/useMessage.d.ts +0 -1
  17. package/dist/hooks/message/useMessage.d.ts.map +1 -1
  18. package/dist/hooks/message/useMessage.js +0 -12
  19. package/dist/hooks/message/useSendMessage.d.ts +2 -9
  20. package/dist/hooks/message/useSendMessage.d.ts.map +1 -1
  21. package/dist/hooks/message/useSendMessage.js +3 -49
  22. package/dist/index.d.ts +0 -5
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +0 -4
  25. package/dist/locales/vi/common.json +0 -2
  26. package/dist/types/chat.d.ts +2 -5
  27. package/dist/types/chat.d.ts.map +1 -1
  28. package/dist/types/chat.js +4 -4
  29. package/dist/utils/common.d.ts +5 -4
  30. package/dist/utils/common.d.ts.map +1 -1
  31. package/dist/utils/common.js +19 -28
  32. package/package.json +6 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationBySessionItem.d.ts","sourceRoot":"","sources":["../../../src/components/conversation/ConversationBySessionItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAShD,UAAU,8BAA8B;IACtC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,QAAA,MAAM,yBAAyB,GAAI,iCAGhC,8BAA8B,mDA8DhC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"ConversationBySessionItem.d.ts","sourceRoot":"","sources":["../../../src/components/conversation/ConversationBySessionItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAShD,UAAU,8BAA8B;IACtC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,QAAA,MAAM,yBAAyB,GAAI,iCAGhC,8BAA8B,mDAiEhC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -35,7 +35,10 @@ const ConversationBySessionItem = ({ sessionItem, latestPreview, }) => {
35
35
  const latestMsgSendTime = (latestPreview === null || latestPreview === void 0 ? void 0 : latestPreview.latestMsgSendTime) || 0;
36
36
  if (!conversation)
37
37
  return null;
38
- return (_jsx(ThreadCard, { onClick: () => handleConversationClick(conversation), isSelected: isSelected, unreadCount: conversation.unreadCount, preview: parseLatestMessage(latestMsg, user === null || user === void 0 ? void 0 : user.userID, t), time: latestMsgSendTime > 0
38
+ return (_jsx(ThreadCard, { onClick: () => handleConversationClick(conversation), isSelected: isSelected, unreadCount: conversation.unreadCount, preview: parseLatestMessage(latestMsg, user === null || user === void 0 ? void 0 : user.userID, t, {
39
+ peerType: conversation.peerType,
40
+ showName: conversation.showName,
41
+ }), time: latestMsgSendTime > 0
39
42
  ? formatTimestamp(latestMsgSendTime, { hasTime: true })
40
43
  : undefined, avatar: _jsx(Avatar, { size: 48, src: avatar, children: ((_a = displayName === null || displayName === void 0 ? void 0 : displayName.charAt) === null || _a === void 0 ? void 0 : _a.call(displayName, 0)) || "A" }), title: _jsx("h3", { className: "truncate text-sm font-semibold text-gray-900", children: displayName }) }));
41
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationInboxItem.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-inbox/ConversationInboxItem.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAYjE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC/C;AAQD,QAAA,MAAM,qBAAqB,GAAI,mBAAmB,0BAA0B,4CA0C3E,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"ConversationInboxItem.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-inbox/ConversationInboxItem.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAYjE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC/C;AAQD,QAAA,MAAM,qBAAqB,GAAI,mBAAmB,0BAA0B,4CA2C3E,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -23,7 +23,7 @@ const ConversationInboxItem = ({ item, onClick }) => {
23
23
  const displayName = resolveConversationDisplayName(item, t);
24
24
  const avatarUrl = useConversationAvatarUrl(item);
25
25
  const badgeLabel = resolvePeerBadgeLabel(item.peerType, t);
26
- const latestMessagePreview = parseLatestMessage(item.latestMsg, currentUserId, tCommon);
26
+ const latestMessagePreview = parseLatestMessage(item.latestMsg, currentUserId, tCommon, { peerType: item.peerType, showName: item.showName });
27
27
  const latestMessageTime = formatLatestMessageTime(item.latestMsgSendTime || null);
28
28
  const unreadCount = (_a = item.unreadCount) !== null && _a !== void 0 ? _a : 0;
29
29
  return (_jsx(ThreadCard, { testId: "conversation-inbox-thread-card", onClick: () => onClick(item), unreadCount: unreadCount, time: latestMessageTime, preview: latestMessagePreview, avatar: _jsx(ConversationPeerAvatar, { peerType: item.peerType, displayName: displayName, avatarUrl: avatarUrl, badgeLabel: badgeLabel }), title: _jsx(ConversationInboxTitle, { peerType: item.peerType, displayName: displayName, hasUnread: unreadCount > 0 }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"TextMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/TextMessage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAOtD,UAAU,oBAAoB;IAC5B,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,QAAA,MAAM,eAAe,GAAI,OAAO,oBAAoB,mDAgDnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"TextMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/TextMessage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAe,MAAM,yBAAyB,CAAC;AAQnE,UAAU,oBAAoB;IAC5B,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,QAAA,MAAM,eAAe,GAAI,OAAO,oBAAoB,mDAqDnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1,6 +1,8 @@
1
1
  "use client";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import clsx from "clsx";
4
+ import { MessageType } from "@openim/wasm-client-sdk";
5
+ import useAuthStore from "../../../store/auth";
4
6
  import { htmlHasFormatting, sanitizeHtml, stripHtml } from "../../../utils/common";
5
7
  import { extractLinkUrls } from "../../../utils/link";
6
8
  import LinkText from "./LinkText";
@@ -8,6 +10,7 @@ import { MESSAGE_TEXT_CLASS } from "./textStyle";
8
10
  const TextMessageItem = (props) => {
9
11
  var _a, _b, _c, _d;
10
12
  const { message } = props;
13
+ const isCrm = useAuthStore((state) => state.isCrm);
11
14
  let extendMessageInfo = null;
12
15
  try {
13
16
  extendMessageInfo = JSON.parse((message === null || message === void 0 ? void 0 : message.ex) || "{}");
@@ -16,6 +19,9 @@ const TextMessageItem = (props) => {
16
19
  extendMessageInfo = {};
17
20
  console.error("Failed to parse extendMessageInfo", error);
18
21
  }
22
+ if ((message === null || message === void 0 ? void 0 : message.contentType) === MessageType.CustomMessage && !isCrm) {
23
+ return null;
24
+ }
19
25
  const richHtmlContent = ((_b = (_a = extendMessageInfo === null || extendMessageInfo === void 0 ? void 0 : extendMessageInfo.messageInfo) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.content) || "";
20
26
  if (richHtmlContent && htmlHasFormatting(richHtmlContent)) {
21
27
  const sanitizedContent = sanitizeHtml(richHtmlContent);
@@ -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,mDA8QlB,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;AAeD,QAAA,MAAM,WAAW,GAAI,qMAalB,gBAAgB,mDAuRlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -6,7 +6,7 @@ import { 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";
9
- import { getVisibleNeighbor, isMessageHiddenForViewer, } from "../../../hooks/message/useMessage";
9
+ import { getVisibleNeighbor, visibleTypeMessage, } from "../../../hooks/message/useMessage";
10
10
  import { MSG_ITEM_CONTENT_PREFIX, MSG_ITEM_PREFIX } from "../../../constants";
11
11
  import { formatTimestamp } from "../../../utils/common";
12
12
  import useAuthStore from "../../../store/auth";
@@ -127,7 +127,13 @@ const MessageItem = ({ message, allMessages, isGroupChat = false, forceHideTip =
127
127
  const showAvatar = showPeerInfo && !isMine && !nextSameUser;
128
128
  const showSenderName = showPeerInfo && !isMine && !prevSameUser;
129
129
  const showTip = forceHideTip ? false : !nextSameUser;
130
- if (isMessageHiddenForViewer(message, isCrm)) {
130
+ if (!isCrm && isInternalMessage) {
131
+ return null;
132
+ }
133
+ if ((!isCrm &&
134
+ (MessageType.CustomMessage === (message === null || message === void 0 ? void 0 : message.contentType) ||
135
+ isSystemLogMessage)) ||
136
+ !visibleTypeMessage.includes(message === null || message === void 0 ? void 0 : message.contentType)) {
131
137
  return null;
132
138
  }
133
139
  const messageContainerProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"renderMessageContent.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/renderMessageContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,eAAe,EAAe,MAAM,yBAAyB,CAAC;AAYtF,eAAO,MAAM,mBAAmB,GAAI,SAAS,eAAe,4CAyB3D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,SAAS,eAAe,EACxB,sBAAsB,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,4CAwBpD,CAAC"}
1
+ {"version":3,"file":"renderMessageContent.d.ts","sourceRoot":"","sources":["../../../../src/components/message/item/renderMessageContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,eAAe,EAAe,MAAM,yBAAyB,CAAC;AAWtF,eAAO,MAAM,mBAAmB,GAAI,SAAS,eAAe,4CAuB3D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,SAAS,eAAe,EACxB,sBAAsB,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,4CAwBpD,CAAC"}
@@ -9,7 +9,6 @@ import UrlTextMessageItem from "./UrlTextMessage";
9
9
  import RevokeMessageItem from "./RevokeMessage";
10
10
  import QuoteMessageItem from "./QuoteMessage";
11
11
  import SystemLogMessageItem from "./SystemLogMessage";
12
- import CustomMessageItem from "./CustomMessage";
13
12
  export const renderMessageByType = (message) => {
14
13
  switch (message === null || message === void 0 ? void 0 : message.contentType) {
15
14
  case MessageType.TextMessage:
@@ -29,8 +28,6 @@ export const renderMessageByType = (message) => {
29
28
  return _jsx(SystemLogMessageItem, { message: message });
30
29
  case MessageType.RevokeMessage:
31
30
  return _jsx(RevokeMessageItem, {});
32
- case MessageType.CustomMessage:
33
- return _jsx(CustomMessageItem, { message: message });
34
31
  default:
35
32
  return _jsx(TextMessageItem, { message: message });
36
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReplyQuoteContent.d.ts","sourceRoot":"","sources":["../../../../src/components/message/reply/ReplyQuoteContent.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AASnE,eAAO,MAAM,oBAAoB,GAAI,aAAa,WAAW,YACb,CAAC;AAEjD,UAAU,sBAAsB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB,GAAI,qBAG/B,sBAAsB,4CAuBxB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"ReplyQuoteContent.d.ts","sourceRoot":"","sources":["../../../../src/components/message/reply/ReplyQuoteContent.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AASnE,eAAO,MAAM,oBAAoB,GAAI,aAAa,WAAW,YACb,CAAC;AAEjD,UAAU,sBAAsB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB,GAAI,qBAG/B,sBAAsB,4CAsBxB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -12,6 +12,6 @@ export const ReplyQuoteContent = ({ message, title = "", }) => {
12
12
  var _a, _b;
13
13
  const { t } = useTranslation();
14
14
  const hasMedia = hasReplyMediaPreview(message.contentType);
15
- return (_jsxs("div", { className: "flex min-w-0 flex-1 items-center gap-0.5 pr-2 self-stretch", children: [_jsx("div", { className: "w-[3px] shrink-0 self-stretch rounded bg-gray-cool-200" }), hasMedia && _jsx(ReplyPreviewMedia, { message: message }), _jsxs("div", { className: "flex min-w-0 flex-1 flex-col justify-center py-1 pl-2", children: [_jsx("p", { className: "truncate text-[14px] font-medium leading-[160%] text-gray-900", children: title }), _jsx("p", { className: "truncate text-[13px] leading-[160%] text-gray-400", children: generateContentBasedOnMessageType(message.contentType, ((_a = message.textElem) === null || _a === void 0 ? void 0 : _a.content) || ((_b = message.quoteElem) === null || _b === void 0 ? void 0 : _b.text), t, message.customElem) })] })] }));
15
+ return (_jsxs("div", { className: "flex min-w-0 flex-1 items-center gap-0.5 pr-2 self-stretch", children: [_jsx("div", { className: "w-[3px] shrink-0 self-stretch rounded bg-gray-cool-200" }), hasMedia && _jsx(ReplyPreviewMedia, { message: message }), _jsxs("div", { className: "flex min-w-0 flex-1 flex-col justify-center py-1 pl-2", children: [_jsx("p", { className: "truncate text-[14px] font-medium leading-[160%] text-gray-900", children: title }), _jsx("p", { className: "truncate text-[13px] leading-[160%] text-gray-400", children: generateContentBasedOnMessageType(message.contentType, ((_a = message.textElem) === null || _a === void 0 ? void 0 : _a.content) || ((_b = message.quoteElem) === null || _b === void 0 ? void 0 : _b.text), t) })] })] }));
16
16
  };
17
17
  export default ReplyQuoteContent;
@@ -2,5 +2,5 @@ import "../styles/global.css";
2
2
  import { ChatContextType, ChatProviderProps } from "../types/chat";
3
3
  export declare const ChatContext: import("react").Context<ChatContextType>;
4
4
  export declare const useChatContext: () => ChatContextType;
5
- export declare const ChatProvider: ({ children, config, renderCustomMessage, }: ChatProviderProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ChatProvider: ({ children, config }: ChatProviderProps) => import("react/jsx-runtime").JSX.Element;
6
6
  //# sourceMappingURL=ChatContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAEA,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,eAAe,EACf,iBAAiB,EAGlB,MAAM,cAAc,CAAC;AAStB,eAAO,MAAM,WAAW,0CAOtB,CAAC;AAEH,eAAO,MAAM,cAAc,uBAAgC,CAAC;AAE5D,eAAO,MAAM,YAAY,GAAI,4CAI1B,iBAAiB,4CAsGnB,CAAC"}
1
+ {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAEA,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,eAAe,EACf,iBAAiB,EAGlB,MAAM,cAAc,CAAC;AAStB,eAAO,MAAM,WAAW,0CAOtB,CAAC;AAEH,eAAO,MAAM,cAAc,uBAAgC,CAAC;AAE5D,eAAO,MAAM,YAAY,GAAI,sBAAsB,iBAAiB,4CAqGnE,CAAC"}
@@ -18,7 +18,7 @@ export const ChatContext = createContext({
18
18
  updateSyncStatus: () => { },
19
19
  });
20
20
  export const useChatContext = () => useContext(ChatContext);
21
- export const ChatProvider = ({ children, config, renderCustomMessage, }) => {
21
+ export const ChatProvider = ({ children, config }) => {
22
22
  const [connectStatus, setConnectStatus] = useState(ConnectStatus.Disconnected);
23
23
  const [syncStatus, setSyncStatus] = useState(SyncStatus.Success);
24
24
  const [user, setUser] = useState(null);
@@ -91,6 +91,5 @@ export const ChatProvider = ({ children, config, renderCustomMessage, }) => {
91
91
  getSelfUserInfo,
92
92
  updateConnectStatus,
93
93
  updateSyncStatus,
94
- renderCustomMessage,
95
94
  }, children: _jsx(ConfigProvider, { getPopupContainer: (triggerNode) => document.body, children: _jsx(QueryClientProvider, { client: queryClient, children: _jsx(MainLayout, { children: children }) }) }) }));
96
95
  };
@@ -1,6 +1,5 @@
1
1
  import { MessageItem, MessageType } from "@openim/wasm-client-sdk";
2
2
  export declare const visibleTypeMessage: MessageType[];
3
- export declare const isMessageHiddenForViewer: (message: MessageItem, isCrm: boolean) => boolean;
4
3
  export declare const useMessage: (conversationId?: string, searchClientMsgID?: string, enabled?: boolean, useAppHistory?: boolean) => {
5
4
  loadState: {
6
5
  initLoading: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/useMessage.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,WAAW,EACX,WAAW,EAEZ,MAAM,yBAAyB,CAAC;AAYjC,eAAO,MAAM,kBAAkB,eAgB9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,SAAS,WAAW,EACpB,OAAO,OAAO,KACb,OAWF,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,iBAAiB,MAAM,EACvB,oBAAoB,MAAM,EAC1B,iBAAc,EACd,uBAAqB;;;;;qBAeA,WAAW,EAAE;;;;;;qBAAb,WAAW,EAAE;;;;;;CAiSnC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,WAAW,SACpB,CAAC;AAChC,eAAO,MAAM,gBAAgB,GAAI,SAAS,WAAW,SACpB,CAAC;AAClC,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,SACf,CAAC;AAEtC,eAAO,MAAM,kBAAkB,GAC7B,aAAa,WAAW,EAAE,EAC1B,SAAS,WAAW,EACpB,WAAW,MAAM,GAAG,MAAM,KACzB,WAAW,GAAG,SAkBhB,CAAC"}
1
+ {"version":3,"file":"useMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/useMessage.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,WAAW,EACX,WAAW,EAEZ,MAAM,yBAAyB,CAAC;AAUjC,eAAO,MAAM,kBAAkB,eAgB9B,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,iBAAiB,MAAM,EACvB,oBAAoB,MAAM,EAC1B,iBAAc,EACd,uBAAqB;;;;;qBAeA,WAAW,EAAE;;;;;;qBAAb,WAAW,EAAE;;;;;;CAiSnC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,WAAW,SACpB,CAAC;AAChC,eAAO,MAAM,gBAAgB,GAAI,SAAS,WAAW,SACpB,CAAC;AAClC,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,SACf,CAAC;AAEtC,eAAO,MAAM,kBAAkB,GAC7B,aAAa,WAAW,EAAE,EAC1B,SAAS,WAAW,EACpB,WAAW,MAAM,GAAG,MAAM,KACzB,WAAW,GAAG,SAkBhB,CAAC"}
@@ -8,8 +8,6 @@ import isEmpty from "lodash/isEmpty";
8
8
  import { useChatContext } from "../../context/ChatContext";
9
9
  import useAuthStore from "../../store/auth";
10
10
  import { ConnectStatus, SyncStatus } from "../../types/chat";
11
- import { isSystemLogMessageType } from "../../utils/messageLog";
12
- import { isRenderableCustomMessage } from "../../utils/customMessage";
13
11
  export const visibleTypeMessage = [
14
12
  MessageType.TextMessage,
15
13
  MessageType.PictureMessage,
@@ -27,16 +25,6 @@ export const visibleTypeMessage = [
27
25
  MessageType.RevokeMessage,
28
26
  MessageType.LogTextMessage,
29
27
  ];
30
- export const isMessageHiddenForViewer = (message, isCrm) => {
31
- if (!visibleTypeMessage.includes(message === null || message === void 0 ? void 0 : message.contentType))
32
- return true;
33
- if (isCrm)
34
- return false;
35
- const isCustomMessage = MessageType.CustomMessage === (message === null || message === void 0 ? void 0 : message.contentType);
36
- return (Boolean(message === null || message === void 0 ? void 0 : message.isInternal) ||
37
- isSystemLogMessageType(message === null || message === void 0 ? void 0 : message.contentType) ||
38
- (isCustomMessage && !isRenderableCustomMessage(message)));
39
- };
40
28
  export const useMessage = (conversationId, searchClientMsgID, enabled = true, useAppHistory = false) => {
41
29
  const { connectStatus, syncStatus } = useChatContext();
42
30
  const userID = useAuthStore((state) => state.userID);
@@ -1,5 +1,4 @@
1
- import { CustomMsgParams, MergerMsgParams, MessageItem } from "@openim/wasm-client-sdk";
2
- import { type CustomMessagePayload } from "../../types/customMessage";
1
+ import { MergerMsgParams, MessageItem } from "@openim/wasm-client-sdk";
3
2
  import { BotFlowMeta, ExtendMessageInfo, FileMsgParamsByFile, ImageMsgParamsByFile, UrlMetadataInfo, VideoMsgParamsByFile } from "../../types/chat";
4
3
  import { UploadFile } from "antd";
5
4
  import { ISessionResponse } from "../../types/dto";
@@ -13,8 +12,6 @@ export declare const createMergerMessage: (mergerMsgParams: MergerMsgParams) =>
13
12
  export declare const createVideoMessageByFile: (file: VideoMsgParamsByFile) => Promise<MessageItem | null>;
14
13
  export declare const createFileMessageByFile: (file: FileMsgParamsByFile) => Promise<MessageItem | null>;
15
14
  export declare const createUrlTextMessage: (text: string, urls: string[]) => Promise<MessageItem | null>;
16
- export declare const createCustomMessageByParams: (params: CustomMsgParams) => Promise<MessageItem | null>;
17
- export declare const createCustomMessage: (payload: CustomMessagePayload) => Promise<MessageItem | null>;
18
15
  export declare const createQuoteMessage: (text: string, quotedMessage: MessageItem) => Promise<MessageItem | null>;
19
16
  export type SendMessageScrollEvent = "CHAT_LIST_SCROLL_TO_BOTTOM" | "CONVERSATION_CHAT_SCROLL_TO_BOTTOM_IF_AT_BOTTOM";
20
17
  export interface OfflinePushMeta {
@@ -29,7 +26,7 @@ export interface UseSendMessageOptions {
29
26
  }) => OfflinePushMeta;
30
27
  }
31
28
  export declare const useSendMessage: (options?: UseSendMessageOptions) => {
32
- sendMergeMessage: ({ richText, plainText, files, currentSession, isInternal, urlMetadata, flow, customMessage, }: {
29
+ sendMergeMessage: ({ richText, plainText, files, currentSession, isInternal, urlMetadata, flow, }: {
33
30
  richText: string;
34
31
  plainText: string;
35
32
  files?: UploadFile[];
@@ -37,10 +34,6 @@ export declare const useSendMessage: (options?: UseSendMessageOptions) => {
37
34
  isInternal: boolean;
38
35
  urlMetadata?: UrlMetadataInfo;
39
36
  flow?: BotFlowMeta;
40
- customMessage?: CustomMessagePayload;
41
- }) => Promise<boolean>;
42
- sendCustomMessage: (payload: CustomMessagePayload, sendOptions?: {
43
- currentSession?: ISessionResponse;
44
37
  }) => Promise<boolean>;
45
38
  resendMessage: (failedMessage: MessageItem) => Promise<void>;
46
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useSendMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/useSendMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,EAGZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACrB,MAAM,cAAc,CAAC;AAWtB,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAQlC,OAAO,EAAgB,gBAAgB,EAAyB,MAAM,aAAa,CAAC;AAkBpF,eAAO,MAAM,iBAAiB,GAAI,SAAS;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,YAE0C,CAAC;AAE5C,eAAO,MAAM,iBAAiB,GAAU,MAAM,MAAM,gCAanD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM,oBAAoB,gCAaxE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,iBAAiB,eAAe,gCAazE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM,oBAAoB,gCAaxE,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAU,MAAM,mBAAmB,gCAatE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,gCActE,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,QAAQ,eAAe,gCAcxB,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,SAAS,oBAAoB,gCAOtE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,EACZ,eAAe,WAAW,gCAc3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,4BAA4B,GAC5B,iDAAiD,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,eAAe,CAAC;CACxE;AAED,eAAO,MAAM,cAAc,GAAI,UAAU,qBAAqB;sHAsRvD;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QACrB,cAAc,CAAC,EAAE,gBAAgB,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC;QACpB,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,aAAa,CAAC,EAAE,oBAAoB,CAAC;KACtC,KAAG,OAAO,CAAC,OAAO,CAAC;iCA3CT,oBAAoB,gBACf;QAAE,cAAc,CAAC,EAAE,gBAAgB,CAAA;KAAE,KAClD,OAAO,CAAC,OAAO,CAAC;mCAnHG,WAAW;CAyVpC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,kDAKvC;IACD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,sBA8BA,CAAC"}
1
+ {"version":3,"file":"useSendMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/message/useSendMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,WAAW,EAGZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACrB,MAAM,cAAc,CAAC;AAWtB,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAQlC,OAAO,EAAgB,gBAAgB,EAAyB,MAAM,aAAa,CAAC;AAkBpF,eAAO,MAAM,iBAAiB,GAAI,SAAS;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,YAE0C,CAAC;AAE5C,eAAO,MAAM,iBAAiB,GAAU,MAAM,MAAM,gCAanD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM,oBAAoB,gCAaxE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,iBAAiB,eAAe,gCAazE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM,oBAAoB,gCAaxE,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAU,MAAM,mBAAmB,gCAatE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,gCActE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,EACZ,eAAe,WAAW,gCAc3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,4BAA4B,GAC5B,iDAAiD,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,eAAe,CAAC;CACxE;AAED,eAAO,MAAM,cAAc,GAAI,UAAU,qBAAqB;uGAiPvD;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QACrB,cAAc,CAAC,EAAE,gBAAgB,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC;QACpB,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;KACpB,KAAG,OAAO,CAAC,OAAO,CAAC;mCAxHE,WAAW;CA8SpC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,kDAKvC;IACD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,sBA8BA,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { MessageStatus, MessageType, } from "@openim/wasm-client-sdk";
2
- import { CustomMessageType, } from "../../types/customMessage";
3
2
  import { DChatSDK } from "../../constants/sdk";
4
3
  import { v4 as uuidv4 } from "uuid";
5
4
  import { useCallback } from "react";
@@ -90,24 +89,6 @@ export const createUrlTextMessage = async (text, urls) => {
90
89
  });
91
90
  return textMessage;
92
91
  };
93
- export const createCustomMessageByParams = async (params) => {
94
- let customMessage = await DChatSDK.createCustomMessage(params, new Date().getTime().toString())
95
- .then(({ data }) => {
96
- return data;
97
- })
98
- .catch(({ errCode, errMsg }) => {
99
- console.error("createCustomMessage", errCode, errMsg);
100
- return null;
101
- });
102
- return customMessage;
103
- };
104
- export const createCustomMessage = async (payload) => {
105
- return createCustomMessageByParams({
106
- data: JSON.stringify(payload.data),
107
- extension: payload.type,
108
- description: payload.type === CustomMessageType.Order ? payload.data.orderCode : "",
109
- });
110
- };
111
92
  export const createQuoteMessage = async (text, quotedMessage) => {
112
93
  let textMessage = await DChatSDK.createQuoteMessage({
113
94
  text,
@@ -159,7 +140,7 @@ export const useSendMessage = (options) => {
159
140
  }, [queryClient]);
160
141
  const dispatchMessage = useCallback(async (message, currentSession) => {
161
142
  var _a, _b, _c, _d;
162
- const desc = generateContentBasedOnMessageType(message.contentType, ((_a = message === null || message === void 0 ? void 0 : message.textElem) === null || _a === void 0 ? void 0 : _a.content) || "", t, message === null || message === void 0 ? void 0 : message.customElem) || t("new_message");
143
+ const desc = generateContentBasedOnMessageType(message.contentType, ((_a = message === null || message === void 0 ? void 0 : message.textElem) === null || _a === void 0 ? void 0 : _a.content) || "") || t("new_message");
163
144
  const pushMeta = (_c = (_b = options === null || options === void 0 ? void 0 : options.resolveOfflinePushMeta) === null || _b === void 0 ? void 0 : _b.call(options, { desc })) !== null && _c !== void 0 ? _c : {
164
145
  title: (conversationData === null || conversationData === void 0 ? void 0 : conversationData.showName) || "Droppii Chat",
165
146
  icon: (conversationData === null || conversationData === void 0 ? void 0 : conversationData.faceURL) || "",
@@ -216,16 +197,7 @@ export const useSendMessage = (options) => {
216
197
  if (!storedFiles) {
217
198
  let newTextPayload = null;
218
199
  const textContent = ((_a = failedMessage.textElem) === null || _a === void 0 ? void 0 : _a.content) || failedMessage.content || "";
219
- if (failedMessage.contentType === MessageType.CustomMessage) {
220
- newTextPayload = failedMessage.customElem
221
- ? await createCustomMessageByParams({
222
- data: failedMessage.customElem.data,
223
- extension: failedMessage.customElem.extension,
224
- description: failedMessage.customElem.description,
225
- })
226
- : null;
227
- }
228
- else if (failedMessage.contentType === MessageType.UrlTextMessage &&
200
+ if (failedMessage.contentType === MessageType.UrlTextMessage &&
229
201
  failedMessage.urlTextElem) {
230
202
  newTextPayload = await createUrlTextMessage(textContent, failedMessage.urlTextElem.urls);
231
203
  }
@@ -300,18 +272,7 @@ export const useSendMessage = (options) => {
300
272
  removeOneMessage(failedMessage.clientMsgID);
301
273
  await sendMessage(Object.assign(Object.assign({}, newPayload), { ex: failedMessage.ex }));
302
274
  }, [sendMessage]);
303
- const sendCustomMessage = useCallback(async (payload, sendOptions) => {
304
- if (!conversationData || (!recvID && !groupID))
305
- return false;
306
- const customMessage = await createCustomMessage(payload);
307
- if (!customMessage)
308
- return false;
309
- const extendMessageInfo = generateExtendMessageInfo({
310
- currentSession: sendOptions === null || sendOptions === void 0 ? void 0 : sendOptions.currentSession,
311
- });
312
- return sendMessage(Object.assign(Object.assign({}, customMessage), { ex: JSON.stringify(extendMessageInfo) || "{}", isInternal: false }), sendOptions === null || sendOptions === void 0 ? void 0 : sendOptions.currentSession);
313
- }, [conversationData, recvID, groupID, sendMessage]);
314
- const sendMergeMessage = useCallback(async ({ richText, plainText, files = [], currentSession, isInternal, urlMetadata, flow, customMessage, }) => {
275
+ const sendMergeMessage = useCallback(async ({ richText, plainText, files = [], currentSession, isInternal, urlMetadata, flow, }) => {
315
276
  if (!conversationData || (!recvID && !groupID))
316
277
  return false;
317
278
  const messageList = [];
@@ -451,12 +412,6 @@ export const useSendMessage = (options) => {
451
412
  return false;
452
413
  messageList.push(textMessage);
453
414
  }
454
- if (customMessage) {
455
- const customMessageItem = await createCustomMessage(customMessage);
456
- if (!customMessageItem)
457
- return false;
458
- messageList.push(customMessageItem);
459
- }
460
415
  for (const message of messageList) {
461
416
  const isTextLikeMessage = (message === null || message === void 0 ? void 0 : message.contentType) === MessageType.TextMessage ||
462
417
  (message === null || message === void 0 ? void 0 : message.contentType) === MessageType.UrlTextMessage ||
@@ -483,7 +438,6 @@ export const useSendMessage = (options) => {
483
438
  ]);
484
439
  return {
485
440
  sendMergeMessage,
486
- sendCustomMessage,
487
441
  resendMessage,
488
442
  };
489
443
  };
package/dist/index.d.ts CHANGED
@@ -21,12 +21,7 @@ export { ConversationDetailHeader, ConversationDetailInput, } from "./components
21
21
  export type { ConversationDetailHeaderProps, ConversationDetailInputProps, } from "./components/conversation-detail";
22
22
  export { ChatCategory, ChatType, PeerType, } from "./types/conversation";
23
23
  export type { ConversationListItem, CreateConversationData, ConversationMember, } from "./types/conversation";
24
- export { CustomMessageType } from "./types/customMessage";
25
- export type { CustomElemOrderData, CustomMessagePayload, RenderCustomMessage, RenderCustomMessageArgs, } from "./types/customMessage";
26
- export { parseCustomMessagePayload, isRenderableCustomMessage, } from "./utils/customMessage";
27
24
  export { useDChatAuth } from "./hooks/user/useAuth";
28
- export { useSendMessage } from "./hooks/message/useSendMessage";
29
- export type { UseSendMessageOptions } from "./hooks/message/useSendMessage";
30
25
  export { useUpdateFcmToken } from "./hooks/user/useUpdateFcmToken";
31
26
  export { useConversationList } from "./hooks/conversation/useConversationList";
32
27
  export { useCreateConversation } from "./hooks/conversation/useCreateConversation";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,cAAc,CAAC;AAC7C,cAAc,eAAe,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACjF,YAAY,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACnF,YAAY,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAElF,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,QAAQ,GACT,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,YAAY,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAG1F,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAIvE,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,QAAQ,IAAI,aAAa,EACzB,WAAW,IAAI,gBAAgB,GAChC,CAAC;AAEF,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,cAAc,CAAC;AAC7C,cAAc,eAAe,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACjF,YAAY,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACnF,YAAY,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAElF,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,QAAQ,GACT,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,YAAY,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAG1F,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAIvE,OAAO,EACL,QAAQ,IAAI,aAAa,EACzB,QAAQ,IAAI,aAAa,EACzB,WAAW,IAAI,gBAAgB,GAChC,CAAC;AAEF,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -19,12 +19,8 @@ export { default as DChatConversationInbox } from "./screens/conversation-inbox"
19
19
  export { default as DChatConversationDetail } from "./screens/conversation-detail";
20
20
  export { ConversationDetailHeader, ConversationDetailInput, } from "./components/conversation-detail";
21
21
  export { ChatCategory, ChatType, PeerType, } from "./types/conversation";
22
- //Custom message
23
- export { CustomMessageType } from "./types/customMessage";
24
- export { parseCustomMessagePayload, isRenderableCustomMessage, } from "./utils/customMessage";
25
22
  //Hooks
26
23
  export { useDChatAuth } from "./hooks/user/useAuth";
27
- export { useSendMessage } from "./hooks/message/useSendMessage";
28
24
  export { useUpdateFcmToken } from "./hooks/user/useUpdateFcmToken";
29
25
  export { useConversationList } from "./hooks/conversation/useConversationList";
30
26
  export { useCreateConversation } from "./hooks/conversation/useCreateConversation";
@@ -103,8 +103,6 @@
103
103
  "msg_type_file": "[Tập tin]",
104
104
  "msg_type_video": "[Video]",
105
105
  "msg_type_unsupported": "Tin nhắn không khả dụng",
106
- "msg_type_order": "[Đơn hàng] {{orderCode}}",
107
- "invalid_message": "Tin nhắn không hợp lệ",
108
106
  "session_started": "Phiên chat đã bắt đầu",
109
107
  "session_ended": "Phiên chat đã kết thúc",
110
108
  "new_message": "Bạn có tin nhắn mới",
@@ -1,7 +1,6 @@
1
1
  import { FileMsgParamsByURL, ImageMsgParamsByURL, MessageType, Platform, SelfUserInfo, VideoMsgParamsByURL } from "@openim/wasm-client-sdk";
2
2
  export type DChatPlatform = Platform;
3
3
  import { UploadFile } from "antd";
4
- import type { RenderCustomMessage } from "./customMessage";
5
4
  export declare enum DChatApplicationType {
6
5
  OBEFE = "OBEFE",
7
6
  DROPPII = "DROPPII"
@@ -23,10 +22,10 @@ export declare enum CustomType {
23
22
  CallingCancel = 203,
24
23
  CallingHungup = 204
25
24
  }
26
- export declare enum UrlContentType {
25
+ export declare enum CustomMessageType {
27
26
  URL = 160
28
27
  }
29
- export type DChatMessageType = UrlContentType | MessageType;
28
+ export type DChatMessageType = CustomMessageType | MessageType;
30
29
  export declare enum AccountType {
31
30
  Collaborator = "Collaborator",
32
31
  NewAgent = "NewAgent",
@@ -42,12 +41,10 @@ export interface ChatContextType {
42
41
  getSelfUserInfo: () => void;
43
42
  updateConnectStatus: (status: ConnectStatus) => void;
44
43
  updateSyncStatus: (status: SyncStatus) => void;
45
- renderCustomMessage?: RenderCustomMessage;
46
44
  }
47
45
  export interface ChatProviderProps {
48
46
  children: React.ReactNode;
49
47
  config: DChatInitAndLoginConfig | null;
50
- renderCustomMessage?: RenderCustomMessage;
51
48
  }
52
49
  export interface UrlMetadataInfo {
53
50
  title?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/types/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/types/chat.ts"],"names":[],"mappings":"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"}
@@ -23,10 +23,10 @@ export var CustomType;
23
23
  CustomType[CustomType["CallingCancel"] = 203] = "CallingCancel";
24
24
  CustomType[CustomType["CallingHungup"] = 204] = "CallingHungup";
25
25
  })(CustomType || (CustomType = {}));
26
- export var UrlContentType;
27
- (function (UrlContentType) {
28
- UrlContentType[UrlContentType["URL"] = 160] = "URL";
29
- })(UrlContentType || (UrlContentType = {}));
26
+ export var CustomMessageType;
27
+ (function (CustomMessageType) {
28
+ CustomMessageType[CustomMessageType["URL"] = 160] = "URL";
29
+ })(CustomMessageType || (CustomMessageType = {}));
30
30
  export var AccountType;
31
31
  (function (AccountType) {
32
32
  AccountType["Collaborator"] = "Collaborator";
@@ -1,14 +1,15 @@
1
1
  import { MessageType } from "@openim/wasm-client-sdk";
2
2
  import { TFunction } from "i18next";
3
3
  import { UrlMetadataInfo } from "../types/chat";
4
+ import { PeerType } from "../types/conversation";
4
5
  export declare const parseUrlMetadata: (ex?: string) => UrlMetadataInfo | undefined;
5
6
  export declare function formatDuration(seconds: number): string;
6
7
  export declare function renderFileSize(bytes: number): string;
7
- export declare const generateContentBasedOnMessageType: (contentType: MessageType, plainText?: string, t?: TFunction, customElem?: {
8
- extension?: string;
9
- description?: string;
8
+ export declare const generateContentBasedOnMessageType: (contentType: MessageType, plainText?: string, t?: TFunction) => string;
9
+ export declare const parseLatestMessage: (latestMsg: string, currentUserId?: string, t?: TFunction, conversation?: {
10
+ peerType?: PeerType | string;
11
+ showName?: string;
10
12
  }) => string;
11
- export declare const parseLatestMessage: (latestMsg: string, currentUserId?: string, t?: TFunction) => string;
12
13
  export declare const highlightSearch: (text: string, keyword: string, maxLength?: number) => string;
13
14
  interface FormatOptions {
14
15
  hasTime?: boolean;
@@ -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;AAIlE,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,eAAe,GAAG,SAQhE,CAAC;AAiBF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAapD;AAED,eAAO,MAAM,iCAAiC,GAC5C,aAAa,WAAW,EACxB,YAAY,MAAM,EAClB,IAAI,SAAS,EACb,aAAa;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,WA6B1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,IAAI,SAAS,WA4Dd,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,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;AAGhD,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,eAAO,MAAM,iCAAiC,GAC5C,aAAa,WAAW,EACxB,YAAY,MAAM,EAClB,IAAI,SAAS,WAsBd,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,WAkEnE,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,7 +1,7 @@
1
1
  import { MessageType } from "@openim/wasm-client-sdk";
2
2
  import dayjs from "dayjs";
3
3
  import DOMPurify from "dompurify";
4
- import { CustomMessageType } from "../types/customMessage";
4
+ import { PeerType } from "../types/conversation";
5
5
  import { getSystemLogMessageText } from "./messageLog";
6
6
  export const parseUrlMetadata = (ex) => {
7
7
  if (!ex)
@@ -14,17 +14,21 @@ export const parseUrlMetadata = (ex) => {
14
14
  return undefined;
15
15
  }
16
16
  };
17
- const getSenderLabelForLatestPreview = (msgData, currentUserId, t) => {
18
- var _a;
17
+ const getSenderLabelForLatestPreview = (msgData, currentUserId, t, conversation) => {
18
+ var _a, _b;
19
19
  if (currentUserId && msgData.sendID === currentUserId) {
20
20
  return String(t("you"));
21
21
  }
22
- const name = (_a = msgData.senderNickname) === null || _a === void 0 ? void 0 : _a.trim();
23
- if (name) {
24
- return name;
22
+ const senderNickname = (_a = msgData.senderNickname) === null || _a === void 0 ? void 0 : _a.trim();
23
+ if (senderNickname) {
24
+ return senderNickname;
25
+ }
26
+ if ((conversation === null || conversation === void 0 ? void 0 : conversation.peerType) === PeerType.BOT) {
27
+ return ((_b = conversation.showName) === null || _b === void 0 ? void 0 : _b.trim()) || undefined;
25
28
  }
26
- return String(t("message_sender_unnamed"));
29
+ return undefined;
27
30
  };
31
+ const formatWithSender = (sender, content) => sender ? `${sender}: ${content}` : content;
28
32
  export function formatDuration(seconds) {
29
33
  const minutes = Math.floor(seconds / 60);
30
34
  const secs = Math.floor(seconds % 60);
@@ -42,7 +46,7 @@ export function renderFileSize(bytes) {
42
46
  }
43
47
  return `${size.toFixed(1)} ${units[index]}`;
44
48
  }
45
- export const generateContentBasedOnMessageType = (contentType, plainText, t, customElem) => {
49
+ export const generateContentBasedOnMessageType = (contentType, plainText, t) => {
46
50
  switch (contentType) {
47
51
  case MessageType.TextMessage:
48
52
  case MessageType.QuoteMessage:
@@ -60,44 +64,36 @@ export const generateContentBasedOnMessageType = (contentType, plainText, t, cus
60
64
  return t ? t("msg_type_file") : "[Tập tin]";
61
65
  case MessageType.RevokeMessage:
62
66
  return t ? t("revoked") : "Đã thu hồi tin nhắn";
63
- case MessageType.CustomMessage: {
64
- if ((customElem === null || customElem === void 0 ? void 0 : customElem.extension) !== CustomMessageType.Order)
65
- return "";
66
- const orderCode = (customElem === null || customElem === void 0 ? void 0 : customElem.description) || "";
67
- return t
68
- ? t("msg_type_order", { orderCode })
69
- : `[Đơn hàng] ${orderCode}`;
70
- }
71
67
  default:
72
68
  return "";
73
69
  }
74
70
  };
75
- export const parseLatestMessage = (latestMsg, currentUserId, t) => {
76
- var _a, _b, _c, _d, _e, _f;
71
+ export const parseLatestMessage = (latestMsg, currentUserId, t, conversation) => {
72
+ var _a, _b, _c, _d;
77
73
  if (!latestMsg || !t)
78
74
  return "";
79
75
  try {
80
76
  const msgData = JSON.parse(latestMsg);
81
77
  const contentType = msgData === null || msgData === void 0 ? void 0 : msgData.contentType;
82
- const sender = getSenderLabelForLatestPreview(msgData, currentUserId, t);
78
+ const sender = getSenderLabelForLatestPreview(msgData, currentUserId, t, conversation);
83
79
  switch (contentType) {
84
80
  case MessageType.LogTextMessage:
85
81
  return getSystemLogMessageText(msgData);
86
82
  case MessageType.TextMessage:
87
83
  case MessageType.QuoteMessage:
88
84
  case MessageType.UrlTextMessage:
89
- return `${sender}: ${generateContentBasedOnMessageType(contentType, ((_a = msgData === null || msgData === void 0 ? void 0 : msgData.textElem) === null || _a === void 0 ? void 0 : _a.content) ||
85
+ return formatWithSender(sender, generateContentBasedOnMessageType(contentType, ((_a = msgData === null || msgData === void 0 ? void 0 : msgData.textElem) === null || _a === void 0 ? void 0 : _a.content) ||
90
86
  ((_b = msgData === null || msgData === void 0 ? void 0 : msgData.quoteElem) === null || _b === void 0 ? void 0 : _b.text) ||
91
87
  ((_c = msgData === null || msgData === void 0 ? void 0 : msgData.urlTextElem) === null || _c === void 0 ? void 0 : _c.content) ||
92
- "")}`;
88
+ ""));
93
89
  case MessageType.PictureMessage:
94
90
  case MessageType.MergeMessage:
95
91
  case MessageType.VoiceMessage:
96
92
  case MessageType.VideoMessage:
97
93
  case MessageType.FileMessage:
98
- return `${sender}: ${generateContentBasedOnMessageType(contentType)}`;
94
+ return formatWithSender(sender, generateContentBasedOnMessageType(contentType));
99
95
  case MessageType.RevokeMessage:
100
- return t("revoked_with_sender", { name: sender });
96
+ return sender ? t("revoked_with_sender", { name: sender }) : t("revoked");
101
97
  case MessageType.CustomMessage: {
102
98
  const customData = (_d = msgData.customElem) === null || _d === void 0 ? void 0 : _d.data;
103
99
  if (customData === "#SESSION - START") {
@@ -106,11 +102,6 @@ export const parseLatestMessage = (latestMsg, currentUserId, t) => {
106
102
  if (customData === "#SESSION - END") {
107
103
  return t("session_ended");
108
104
  }
109
- if (((_e = msgData.customElem) === null || _e === void 0 ? void 0 : _e.extension) === CustomMessageType.Order) {
110
- return `${sender}: ${t("msg_type_order", {
111
- orderCode: ((_f = msgData.customElem) === null || _f === void 0 ? void 0 : _f.description) || "",
112
- })}`;
113
- }
114
105
  return "";
115
106
  }
116
107
  default:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@droppii-org/chat-sdk",
3
- "version": "0.1.68",
3
+ "version": "0.1.69",
4
4
  "description": "Droppii React Chat SDK",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -59,6 +59,10 @@
59
59
  "build": "pnpm build:css && tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && pnpm copy-assets",
60
60
  "build:css": "tailwindcss -i ./src/styles/global.css -o ./dist/styles/global.css --minify",
61
61
  "dev": "tsc --noEmit --watch",
62
+ "dev:link": "pnpm copy-assets && concurrently -k -n css,js,alias -c magenta,cyan,yellow \"pnpm:dev:link:css\" \"pnpm:dev:link:js\" \"pnpm:dev:link:alias\"",
63
+ "dev:link:css": "tailwindcss -i ./src/styles/global.css -o ./dist/styles/global.css --watch",
64
+ "dev:link:js": "tsc --watch -p tsconfig.build.json",
65
+ "dev:link:alias": "tsc-alias -p tsconfig.build.json --watch",
62
66
  "lint": "eslint src/",
63
67
  "type-check": "tsc --noEmit",
64
68
  "prepublishOnly": "pnpm build",
@@ -120,6 +124,7 @@
120
124
  "@types/node": "^20.0.0",
121
125
  "@types/react": "^18.2.37",
122
126
  "@types/react-dom": "^18.2.15",
127
+ "concurrently": "^9.1.0",
123
128
  "shx": "^0.4.0",
124
129
  "tsc-alias": "^1.8.17",
125
130
  "typescript": "^5.2.2"