@droppii-org/chat-sdk 0.4.7 → 0.4.9

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 (53) hide show
  1. package/dist/components/conversation/DeskConversationList.d.ts.map +1 -1
  2. package/dist/components/conversation/DeskConversationList.js +8 -2
  3. package/dist/components/conversation-detail/ConversationDetailInput.d.ts.map +1 -1
  4. package/dist/components/conversation-detail/ConversationDetailInput.js +21 -2
  5. package/dist/components/conversation-detail/mention/BizMentionMenu.d.ts +3 -1
  6. package/dist/components/conversation-detail/mention/BizMentionMenu.d.ts.map +1 -1
  7. package/dist/components/conversation-detail/mention/BizMentionMenu.js +4 -2
  8. package/dist/components/conversation-detail/mention/useMentionTokens.d.ts +1 -0
  9. package/dist/components/conversation-detail/mention/useMentionTokens.d.ts.map +1 -1
  10. package/dist/components/conversation-detail/mention/useMentionTokens.js +4 -0
  11. package/dist/components/message/MessageList.d.ts.map +1 -1
  12. package/dist/components/message/MessageList.js +3 -1
  13. package/dist/components/message/footer/index.d.ts.map +1 -1
  14. package/dist/components/message/footer/index.js +2 -2
  15. package/dist/components/message/footer/mention/MentionMenu.d.ts +1 -0
  16. package/dist/components/message/footer/mention/MentionMenu.d.ts.map +1 -1
  17. package/dist/components/message/footer/mention/MentionMenu.js +76 -6
  18. package/dist/components/message/footer/mention/MentionNode.d.ts +1 -0
  19. package/dist/components/message/footer/mention/MentionNode.d.ts.map +1 -1
  20. package/dist/components/message/footer/mention/MentionNode.js +15 -0
  21. package/dist/components/message/footer/mention/useMentionOptions.d.ts.map +1 -1
  22. package/dist/components/message/footer/mention/useMentionOptions.js +6 -3
  23. package/dist/components/message/item/SessionEventMessage.d.ts +7 -0
  24. package/dist/components/message/item/SessionEventMessage.d.ts.map +1 -0
  25. package/dist/components/message/item/SessionEventMessage.js +12 -0
  26. package/dist/components/message/item/index.d.ts.map +1 -1
  27. package/dist/components/message/item/index.js +10 -2
  28. package/dist/components/search-conversation/index.d.ts.map +1 -1
  29. package/dist/components/search-conversation/index.js +20 -2
  30. package/dist/components/search-conversation/item/SearchItemAsGroup.d.ts.map +1 -1
  31. package/dist/components/search-conversation/item/SearchItemAsGroup.js +2 -1
  32. package/dist/components/search-conversation/item/SearchItemAsMessage.d.ts.map +1 -1
  33. package/dist/components/search-conversation/item/SearchItemAsMessage.js +4 -1
  34. package/dist/hooks/conversation/useResolveConversation.d.ts.map +1 -1
  35. package/dist/hooks/conversation/useResolveConversation.js +2 -1
  36. package/dist/hooks/global/useGlobalEvent.d.ts.map +1 -1
  37. package/dist/hooks/global/useGlobalEvent.js +10 -1
  38. package/dist/hooks/group/useLeaveGroupAction.d.ts.map +1 -1
  39. package/dist/hooks/group/useLeaveGroupAction.js +47 -3
  40. package/dist/hooks/search/useSearchMessage.d.ts.map +1 -1
  41. package/dist/hooks/search/useSearchMessage.js +11 -1
  42. package/dist/locales/vi/common.json +5 -4
  43. package/dist/store/conversation.d.ts.map +1 -1
  44. package/dist/store/conversation.js +22 -9
  45. package/dist/store/type.d.ts +6 -2
  46. package/dist/store/type.d.ts.map +1 -1
  47. package/dist/styles/global.css +1 -1
  48. package/dist/utils/common.d.ts.map +1 -1
  49. package/dist/utils/common.js +7 -5
  50. package/dist/utils/messageLog.d.ts +4 -0
  51. package/dist/utils/messageLog.d.ts.map +1 -1
  52. package/dist/utils/messageLog.js +31 -2
  53. package/package.json +1 -1
@@ -1,5 +1,25 @@
1
1
  import { MessageType } from "@droppii-org/wasm-client-sdk";
2
2
  export const SYSTEM_LOG_MESSAGE_TYPES = [MessageType.LogTextMessage];
3
+ // BE sends session boundary events as a CustomMessage with no `extension`
4
+ // (unlike Order/Product), so they're identified by this exact `data` string.
5
+ export const SESSION_START_MARKER = "#SESSION - START";
6
+ export const SESSION_END_MARKER = "#SESSION - END";
7
+ export const isSessionEventMessage = (message) => {
8
+ var _a, _b;
9
+ return (message === null || message === void 0 ? void 0 : message.contentType) === MessageType.CustomMessage &&
10
+ (((_a = message === null || message === void 0 ? void 0 : message.customElem) === null || _a === void 0 ? void 0 : _a.data) === SESSION_START_MARKER ||
11
+ ((_b = message === null || message === void 0 ? void 0 : message.customElem) === null || _b === void 0 ? void 0 : _b.data) === SESSION_END_MARKER);
12
+ };
13
+ export const getSessionEventText = (message, t) => {
14
+ var _a, _b;
15
+ if (((_a = message === null || message === void 0 ? void 0 : message.customElem) === null || _a === void 0 ? void 0 : _a.data) === SESSION_START_MARKER) {
16
+ return t ? String(t("session_started")) : "Phiên chat đã bắt đầu";
17
+ }
18
+ if (((_b = message === null || message === void 0 ? void 0 : message.customElem) === null || _b === void 0 ? void 0 : _b.data) === SESSION_END_MARKER) {
19
+ return t ? String(t("session_ended")) : "Phiên chat đã kết thúc";
20
+ }
21
+ return "";
22
+ };
3
23
  export const GROUP_NOTIFICATION_MESSAGE_TYPES = [
4
24
  MessageType.GroupCreated,
5
25
  MessageType.GroupInfoUpdated,
@@ -22,6 +42,15 @@ export const GROUP_NOTIFICATION_MESSAGE_TYPES = [
22
42
  ];
23
43
  export const isGroupNotificationMessageType = (contentType) => GROUP_NOTIFICATION_MESSAGE_TYPES.includes(contentType);
24
44
  const joinNicknames = (users) => (users || []).map((user) => user.nickname || user.userID || "").join(", ");
45
+ // AC: list all names when <= 2 members added; beyond that, show the first 2
46
+ // and collapse the rest into "và N người khác" (N = total - 2).
47
+ const joinInvitedMemberNames = (users) => {
48
+ const names = (users || []).map((user) => user.nickname || user.userID || "");
49
+ if (names.length <= 2)
50
+ return names.join(", ");
51
+ const [first, second] = names;
52
+ return `${first}, ${second}, và ${names.length - 2} người khác`;
53
+ };
25
54
  export const getGroupNotificationText = (contentType, detailJson, t, senderNickname) => {
26
55
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
27
56
  if (!detailJson)
@@ -97,9 +126,9 @@ export const getGroupNotificationText = (contentType, detailJson, t, senderNickn
97
126
  return t
98
127
  ? String(t("group_notification_member_invited", {
99
128
  name: ((_h = detail.inviterUser) === null || _h === void 0 ? void 0 : _h.nickname) || opUserName,
100
- members: joinNicknames(detail.invitedUserList),
129
+ members: joinInvitedMemberNames(detail.invitedUserList),
101
130
  }))
102
- : `${((_j = detail.inviterUser) === null || _j === void 0 ? void 0 : _j.nickname) || opUserName} đã thêm ${joinNicknames(detail.invitedUserList)} vào nhóm`;
131
+ : `${((_j = detail.inviterUser) === null || _j === void 0 ? void 0 : _j.nickname) || opUserName} đã thêm ${joinInvitedMemberNames(detail.invitedUserList)} vào nhóm`;
103
132
  case MessageType.MemberEnter:
104
133
  return t
105
134
  ? String(t("group_notification_member_enter", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@droppii-org/chat-sdk",
3
- "version": "0.4.7",
3
+ "version": "0.4.9",
4
4
  "description": "Droppii React Chat SDK",
5
5
  "repository": {
6
6
  "type": "git",