@droppii-org/chat-sdk 0.1.23 → 0.1.25

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 (181) hide show
  1. package/dist/components/biz-inbox/BizInboxHeader.d.ts +3 -0
  2. package/dist/components/biz-inbox/BizInboxHeader.d.ts.map +1 -0
  3. package/dist/components/biz-inbox/BizInboxHeader.js +8 -0
  4. package/dist/components/biz-inbox/BizThreadAvatar.d.ts +10 -0
  5. package/dist/components/biz-inbox/BizThreadAvatar.d.ts.map +1 -0
  6. package/dist/components/biz-inbox/BizThreadAvatar.js +8 -0
  7. package/dist/components/biz-inbox/BizThreadCard.d.ts +8 -0
  8. package/dist/components/biz-inbox/BizThreadCard.d.ts.map +1 -0
  9. package/dist/components/biz-inbox/BizThreadCard.js +25 -0
  10. package/dist/components/biz-inbox/BizThreadList.d.ts +11 -0
  11. package/dist/components/biz-inbox/BizThreadList.d.ts.map +1 -0
  12. package/dist/components/biz-inbox/BizThreadList.js +35 -0
  13. package/dist/components/biz-inbox/BizThreadTitle.d.ts +8 -0
  14. package/dist/components/biz-inbox/BizThreadTitle.d.ts.map +1 -0
  15. package/dist/components/biz-inbox/BizThreadTitle.js +6 -0
  16. package/dist/components/biz-inbox/index.d.ts +10 -0
  17. package/dist/components/biz-inbox/index.d.ts.map +1 -0
  18. package/dist/components/biz-inbox/index.js +5 -0
  19. package/dist/components/bizInbox/BizThreadAvatar.d.ts +10 -0
  20. package/dist/components/bizInbox/BizThreadAvatar.d.ts.map +1 -0
  21. package/dist/components/bizInbox/BizThreadAvatar.js +8 -0
  22. package/dist/components/bizInbox/BizThreadCard.d.ts.map +1 -1
  23. package/dist/components/bizInbox/BizThreadCard.js +12 -40
  24. package/dist/components/bizInbox/BizThreadList.d.ts +1 -1
  25. package/dist/components/bizInbox/BizThreadList.d.ts.map +1 -1
  26. package/dist/components/bizInbox/BizThreadList.js +22 -4
  27. package/dist/components/bizInbox/BizThreadTitle.d.ts +8 -0
  28. package/dist/components/bizInbox/BizThreadTitle.d.ts.map +1 -0
  29. package/dist/components/bizInbox/BizThreadTitle.js +6 -0
  30. package/dist/components/bizInbox/index.d.ts +4 -0
  31. package/dist/components/bizInbox/index.d.ts.map +1 -1
  32. package/dist/components/bizInbox/index.js +2 -0
  33. package/dist/components/bizThreadDetail/BizMessageBubble.d.ts +10 -0
  34. package/dist/components/bizThreadDetail/BizMessageBubble.d.ts.map +1 -0
  35. package/dist/components/bizThreadDetail/BizMessageBubble.js +11 -0
  36. package/dist/components/bizThreadDetail/BizMessageList.d.ts +3 -0
  37. package/dist/components/bizThreadDetail/BizMessageList.d.ts.map +1 -0
  38. package/dist/components/bizThreadDetail/BizMessageList.js +28 -0
  39. package/dist/components/bizThreadDetail/BizThreadDetailHeader.d.ts +8 -0
  40. package/dist/components/bizThreadDetail/BizThreadDetailHeader.d.ts.map +1 -0
  41. package/dist/components/bizThreadDetail/BizThreadDetailHeader.js +18 -0
  42. package/dist/components/bizThreadDetail/BizThreadDetailInput.d.ts +8 -0
  43. package/dist/components/bizThreadDetail/BizThreadDetailInput.d.ts.map +1 -0
  44. package/dist/components/bizThreadDetail/BizThreadDetailInput.js +147 -0
  45. package/dist/components/bizThreadDetail/index.d.ts +8 -0
  46. package/dist/components/bizThreadDetail/index.d.ts.map +1 -0
  47. package/dist/components/bizThreadDetail/index.js +4 -0
  48. package/dist/components/bizThreadDetail/item/BizMessageItem.d.ts +8 -0
  49. package/dist/components/bizThreadDetail/item/BizMessageItem.d.ts.map +1 -0
  50. package/dist/components/bizThreadDetail/item/BizMessageItem.js +20 -0
  51. package/dist/components/cannedResponse/CannedResponseBody.js +2 -2
  52. package/dist/components/cannedResponse/CannedResponseFooter.js +1 -1
  53. package/dist/components/cannedResponse/CannedResponseHeader.js +1 -1
  54. package/dist/components/cannedResponse/team/TeamItem.d.ts.map +1 -1
  55. package/dist/components/cannedResponse/team/TeamItem.js +1 -1
  56. package/dist/components/chatBubble/ChatBubble.js +1 -1
  57. package/dist/components/conversation/ConversationBySessionItem.d.ts.map +1 -1
  58. package/dist/components/conversation/DeskConversationList.js +3 -3
  59. package/dist/components/mediaCollection/FileCollection.js +1 -1
  60. package/dist/components/mediaCollection/LinkCollection.js +1 -1
  61. package/dist/components/mediaCollection/VideoCollection.js +1 -1
  62. package/dist/components/mediaCollection/index.js +1 -1
  63. package/dist/components/message/GroupMembersDrawer.d.ts.map +1 -1
  64. package/dist/components/message/GroupMembersDrawer.js +1 -1
  65. package/dist/components/message/MessageHeader.d.ts.map +1 -1
  66. package/dist/components/message/MessageHeader.js +3 -3
  67. package/dist/components/message/MessageInfiniteScroll.d.ts +15 -0
  68. package/dist/components/message/MessageInfiniteScroll.d.ts.map +1 -0
  69. package/dist/components/message/MessageInfiniteScroll.js +20 -0
  70. package/dist/components/message/MessageList.d.ts.map +1 -1
  71. package/dist/components/message/MessageList.js +8 -76
  72. package/dist/components/message/SelectSession.js +1 -1
  73. package/dist/components/message/UnassignedSessionFooter.js +2 -2
  74. package/dist/components/message/footer/ActionBar.js +1 -1
  75. package/dist/components/message/footer/FilePreview.js +1 -1
  76. package/dist/components/message/footer/MediaActions.js +1 -1
  77. package/dist/components/message/footer/QuotedMessage.js +1 -1
  78. package/dist/components/message/footer/index.d.ts.map +1 -1
  79. package/dist/components/message/footer/index.js +1 -1
  80. package/dist/components/message/item/FileMessage.js +1 -1
  81. package/dist/components/message/item/QuoteMessage.js +2 -2
  82. package/dist/components/message/item/TextMessage.js +1 -1
  83. package/dist/components/message/item/index.js +1 -1
  84. package/dist/components/richTextEditor/RichTextEditor.js +4 -4
  85. package/dist/components/searchConversation/SearchAll.js +1 -1
  86. package/dist/components/searchConversation/SearchDrawer.js +1 -1
  87. package/dist/components/searchConversation/item/SearchItemAsUser.d.ts.map +1 -1
  88. package/dist/components/session/DeskAssignedSession.js +1 -1
  89. package/dist/components/session/DeskTeamInbox.js +1 -1
  90. package/dist/components/session/SessionFilterMenu.d.ts.map +1 -1
  91. package/dist/components/session/sessionMenuItems.d.ts.map +1 -1
  92. package/dist/components/session/sessionMenuItems.js +1 -1
  93. package/dist/components/thread/AssignConfirmModal.d.ts.map +1 -1
  94. package/dist/components/thread/ManualAssignPopover.js +1 -1
  95. package/dist/components/thread/SessionSection.d.ts.map +1 -1
  96. package/dist/components/thread/SessionSection.js +1 -1
  97. package/dist/components/thread/UserSection.js +1 -1
  98. package/dist/context/ChatContext.d.ts.map +1 -1
  99. package/dist/hooks/biz/index.d.ts +1 -0
  100. package/dist/hooks/biz/index.d.ts.map +1 -1
  101. package/dist/hooks/biz/index.js +1 -0
  102. package/dist/hooks/biz/useBizConversationList.d.ts.map +1 -1
  103. package/dist/hooks/biz/useBizSendMessage.d.ts +4 -0
  104. package/dist/hooks/biz/useBizSendMessage.d.ts.map +1 -0
  105. package/dist/hooks/biz/useBizSendMessage.js +61 -0
  106. package/dist/hooks/biz/useCreateBizConversation.d.ts.map +1 -1
  107. package/dist/hooks/cannedResponse/useFetchCannedCategories.d.ts.map +1 -1
  108. package/dist/hooks/cannedResponse/useFetchCannedResponse.d.ts.map +1 -1
  109. package/dist/hooks/conversation/useConversation.js +1 -1
  110. package/dist/hooks/global/useGlobalEvent.js +2 -2
  111. package/dist/hooks/message/useMessageListScroll.d.ts +29 -0
  112. package/dist/hooks/message/useMessageListScroll.d.ts.map +1 -0
  113. package/dist/hooks/message/useMessageListScroll.js +88 -0
  114. package/dist/hooks/message/usePullSessionMessages.d.ts.map +1 -1
  115. package/dist/hooks/message/useSendMessage.d.ts.map +1 -1
  116. package/dist/hooks/message/useSendMessage.js +1 -1
  117. package/dist/hooks/search/useSearchMessage.d.ts.map +1 -1
  118. package/dist/hooks/session/useAssignSession.d.ts.map +1 -1
  119. package/dist/hooks/session/useCloseSession.d.ts.map +1 -1
  120. package/dist/hooks/session/useCreateNote.d.ts.map +1 -1
  121. package/dist/hooks/session/useGetLabelSession.d.ts.map +1 -1
  122. package/dist/hooks/session/useGetListSessionByConversation.d.ts.map +1 -1
  123. package/dist/hooks/session/useGetSession.d.ts.map +1 -1
  124. package/dist/hooks/session/useGetSessionSummary.d.ts.map +1 -1
  125. package/dist/hooks/session/useGetTeamSessionSummary.d.ts.map +1 -1
  126. package/dist/hooks/session/useGetTeamSessionSummary.js +14 -8
  127. package/dist/hooks/session/useGetTeamSupporters.d.ts.map +1 -1
  128. package/dist/hooks/session/useGetUserSideInfo.d.ts.map +1 -1
  129. package/dist/hooks/session/useJoinSession.d.ts.map +1 -1
  130. package/dist/hooks/session/useLeaveConversation.d.ts.map +1 -1
  131. package/dist/hooks/session/useReopenOrCreateSession.d.ts.map +1 -1
  132. package/dist/hooks/session/useSessionLatestPreview.d.ts.map +1 -1
  133. package/dist/hooks/session/useSessionLatestPreview.js +1 -1
  134. package/dist/hooks/session/useSortedSessions.d.ts.map +1 -1
  135. package/dist/hooks/session/useUpdateNote.d.ts.map +1 -1
  136. package/dist/hooks/session/useUpdateSession.d.ts.map +1 -1
  137. package/dist/hooks/session/useUpdateSessionInfo.d.ts.map +1 -1
  138. package/dist/hooks/team/useFetchMyTeam.d.ts.map +1 -1
  139. package/dist/hooks/user/useCurrentUserAccountType.d.ts.map +1 -1
  140. package/dist/hooks/user/useUpdateFcmToken.d.ts.map +1 -1
  141. package/dist/hooks/user/useUpdateFcmToken.js +1 -1
  142. package/dist/index.d.ts +8 -2
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js +5 -1
  145. package/dist/locales/i18n.js +3 -3
  146. package/dist/locales/i18n.ts +3 -3
  147. package/dist/locales/vi/biz-inbox.json +20 -0
  148. package/dist/locales/vi/bizInbox.json +7 -0
  149. package/dist/screens/bizMessage/index.d.ts.map +1 -1
  150. package/dist/screens/bizMessage/index.js +37 -12
  151. package/dist/screens/bizThreadDetail/index.d.ts +9 -0
  152. package/dist/screens/bizThreadDetail/index.d.ts.map +1 -0
  153. package/dist/screens/bizThreadDetail/index.js +36 -0
  154. package/dist/store/bizConversation.d.ts +12 -0
  155. package/dist/store/bizConversation.d.ts.map +1 -0
  156. package/dist/store/bizConversation.js +22 -0
  157. package/dist/store/bizMessageDraft.d.ts +8 -0
  158. package/dist/store/bizMessageDraft.d.ts.map +1 -0
  159. package/dist/store/bizMessageDraft.js +23 -0
  160. package/dist/store/type.d.ts +111 -0
  161. package/dist/store/type.d.ts.map +1 -0
  162. package/dist/store/type.js +1 -0
  163. package/dist/styles/global.css +1 -1
  164. package/dist/tsconfig.tsbuildinfo +1 -1
  165. package/dist/types/biz.d.ts +20 -17
  166. package/dist/types/biz.d.ts.map +1 -1
  167. package/dist/types/biz.js +17 -1
  168. package/dist/types/chat.d.ts +1 -0
  169. package/dist/types/chat.d.ts.map +1 -1
  170. package/dist/types/dto.d.ts +1 -1
  171. package/dist/types/dto.d.ts.map +1 -1
  172. package/dist/utils/bizConversation.d.ts +11 -0
  173. package/dist/utils/bizConversation.d.ts.map +1 -0
  174. package/dist/utils/bizConversation.js +65 -0
  175. package/dist/utils/bizMessage.d.ts +15 -0
  176. package/dist/utils/bizMessage.d.ts.map +1 -0
  177. package/dist/utils/bizMessage.js +23 -0
  178. package/dist/utils/events.d.ts +1 -0
  179. package/dist/utils/events.d.ts.map +1 -1
  180. package/dist/utils/messageTransform.d.ts.map +1 -1
  181. package/package.json +3 -2
@@ -2,11 +2,17 @@ import { useQuery } from "@tanstack/react-query";
2
2
  import { QUERY_KEYS } from "../../services/query";
3
3
  import { apiInstance } from "../../services/api";
4
4
  import { ENDPOINTS } from "../../services/routes";
5
- export const useGetTeamSessionSummary = () => useQuery({
6
- queryKey: [QUERY_KEYS.GET_TEAM_SESSION_SUMMARY],
7
- queryFn: async () => {
8
- var _a;
9
- const res = await apiInstance.post(ENDPOINTS.chatService.getTeamSessionSummary, {});
10
- return ((_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.data) || [];
11
- },
12
- });
5
+ import useAuthStore from "../../store/auth";
6
+ export const useGetTeamSessionSummary = () => {
7
+ const applicationType = useAuthStore((state) => state.applicationType);
8
+ return useQuery({
9
+ queryKey: [QUERY_KEYS.GET_TEAM_SESSION_SUMMARY, applicationType],
10
+ queryFn: async () => {
11
+ var _a;
12
+ const res = await apiInstance.post(ENDPOINTS.chatService.getTeamSessionSummary, {
13
+ applicationType,
14
+ });
15
+ return ((_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.data) || [];
16
+ },
17
+ });
18
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"useGetTeamSupporters.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useGetTeamSupporters.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGnE,UAAU,0BAA0B;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,oBAAoB,GAAI,8BAIlC,0BAA0B,gFAiBzB,CAAC"}
1
+ {"version":3,"file":"useGetTeamSupporters.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useGetTeamSupporters.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAG/D,UAAU,0BAA0B;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,oBAAoB,GAAI,8BAIlC,0BAA0B,gFAiBzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useGetUserSideInfo.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useGetUserSideInfo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAGzE,eAAO,MAAM,kBAAkB,GAAI,gBAAgB,MAAM,EAAE,QAAQ,MAAM,oFAerE,CAAC"}
1
+ {"version":3,"file":"useGetUserSideInfo.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useGetUserSideInfo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAGrE,eAAO,MAAM,kBAAkB,GAAI,gBAAgB,MAAM,EAAE,QAAQ,MAAM,oFAerE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useJoinSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useJoinSession.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,eAAO,MAAM,cAAc,wGAwC1B,CAAC"}
1
+ {"version":3,"file":"useJoinSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useJoinSession.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,eAAO,MAAM,cAAc,wGAwC1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLeaveConversation.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useLeaveConversation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,eAAO,MAAM,oBAAoB;oBAQX,MAAM;WA4B3B,CAAC"}
1
+ {"version":3,"file":"useLeaveConversation.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useLeaveConversation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C,eAAO,MAAM,oBAAoB;oBAQX,MAAM;WA4B3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useReopenOrCreateSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useReopenOrCreateSession.ts"],"names":[],"mappings":"AAOA,OAAO,EAAgB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAajE,eAAO,MAAM,gBAAgB,mGAe5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,mGAe5B,CAAC"}
1
+ {"version":3,"file":"useReopenOrCreateSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useReopenOrCreateSession.ts"],"names":[],"mappings":"AAOA,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAa7D,eAAO,MAAM,gBAAgB,mGAe5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,mGAe5B,CAAC"}
@@ -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,kBAAkB,CAAC;AAKzD,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;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"}
@@ -4,7 +4,7 @@ import { useEffect, useMemo } from "react";
4
4
  import { QUERY_KEYS } from "../../services/query";
5
5
  import emitter from "../../utils/events";
6
6
  import useAuthStore from "../../store/auth";
7
- import { fetchPullSessionMessages } from "../message/usePullSessionMessages";
7
+ import { fetchPullSessionMessages } from "../../hooks/message/usePullSessionMessages";
8
8
  const shouldPullSessionMessages = (session) => Boolean(session.conversationId &&
9
9
  session.ownerId);
10
10
  export const useSessionLatestPreview = (sessions) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useSortedSessions.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useSortedSessions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,eAAO,MAAM,iBAAiB,GAC5B,UAAU,gBAAgB,EAAE,EAC5B,kBAAkB,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,uBAa7C,CAAC"}
1
+ {"version":3,"file":"useSortedSessions.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useSortedSessions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,eAAO,MAAM,iBAAiB,GAC5B,UAAU,gBAAgB,EAAE,EAC5B,kBAAkB,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,uBAa7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateNote.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateNote.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,eAAO,MAAM,aAAa;YAOZ,MAAM;aACL,MAAM;WAejB,CAAC"}
1
+ {"version":3,"file":"useUpdateNote.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateNote.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,eAAO,MAAM,aAAa;YAOZ,MAAM;aACL,MAAM;WAejB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAItE,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,gBAAgB,qHAqB5B,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,qBAAqB,SAC3B,CAAC"}
1
+ {"version":3,"file":"useUpdateSession.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAIlE,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,gBAAgB,qHAqB5B,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,qBAAqB,SAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateSessionInfo.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateSessionInfo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,oBAAoB,2HAa7B,CAAC"}
1
+ {"version":3,"file":"useUpdateSessionInfo.d.ts","sourceRoot":"","sources":["../../../src/hooks/session/useUpdateSessionInfo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,oBAAoB,2HAa7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchMyTeam.d.ts","sourceRoot":"","sources":["../../../src/hooks/team/useFetchMyTeam.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEhE,eAAO,MAAM,eAAe,gFASxB,CAAC"}
1
+ {"version":3,"file":"useFetchMyTeam.d.ts","sourceRoot":"","sources":["../../../src/hooks/team/useFetchMyTeam.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5D,eAAO,MAAM,eAAe,gFASxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCurrentUserAccountType.d.ts","sourceRoot":"","sources":["../../../src/hooks/user/useCurrentUserAccountType.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EAEZ,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,yBAAyB,mBA4BrC,CAAC"}
1
+ {"version":3,"file":"useCurrentUserAccountType.d.ts","sourceRoot":"","sources":["../../../src/hooks/user/useCurrentUserAccountType.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EAEZ,MAAM,cAAc,CAAC;AAEtB,eAAO,MAAM,yBAAyB,mBA4BrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateFcmToken.d.ts","sourceRoot":"","sources":["../../../src/hooks/user/useUpdateFcmToken.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,iBAAiB,oGAmB1B,CAAC"}
1
+ {"version":3,"file":"useUpdateFcmToken.d.ts","sourceRoot":"","sources":["../../../src/hooks/user/useUpdateFcmToken.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM3C,eAAO,MAAM,iBAAiB,oGAmB1B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { useMutation } from "@tanstack/react-query";
2
2
  import { apiInstance } from "../../services/api";
3
3
  import { ENDPOINTS } from "../../services/routes";
4
- import { DChatPlatform } from "../..";
4
+ import { Platform as DChatPlatform } from "@openim/wasm-client-sdk";
5
5
  import useAuthStore from "../../store/auth";
6
6
  import dayjs from "dayjs";
7
7
  export const useUpdateFcmToken = () => useMutation({
package/dist/index.d.ts CHANGED
@@ -15,12 +15,18 @@ export { DChatDeskMessage, DChatBubble, Icon };
15
15
  export { default as RichTextEditor } from "./components/richTextEditor/RichTextEditor";
16
16
  export { default as DChatBizInbox } from "./screens/bizMessage";
17
17
  export type { DChatBizInboxProps } from "./screens/bizMessage";
18
- export type { BizConversationItem, BizConversationPeer, BizConversationPeerUser, BizConversationPeerGroup, BizCreateConversationData, BizConversationMember, BizChatCategory, BizChatType, } from "./types/biz";
18
+ export { default as DChatBizThreadDetail } from "./screens/bizThreadDetail";
19
+ export type { DChatBizThreadDetailProps } from "./screens/bizThreadDetail";
20
+ export { BizThreadDetailHeader, BizThreadDetailInput, } from "./components/bizThreadDetail";
21
+ export type { BizThreadDetailHeaderProps, BizThreadDetailInputProps, } from "./components/bizThreadDetail";
22
+ export { BizChatCategory, BizChatType, BizPeerType, } from "./types/biz";
23
+ export type { BizConversationItem, BizConversationPeer, BizCreateConversationData, BizConversationMember, } from "./types/biz";
19
24
  export { useDChatAuth } from "./hooks/user/useAuth";
20
25
  export { useUpdateFcmToken } from "./hooks/user/useUpdateFcmToken";
21
- export { useCreateBizConversation } from "./hooks/biz";
26
+ export { useBizConversationList, useCreateBizConversation, } from "./hooks/biz";
22
27
  export type { CreateBizConversationInput } from "./hooks/biz";
23
28
  export { useUserStore, DChatApplicationType, useAuthStore };
29
+ export { default as useBizConversationStore } from "./store/bizConversation";
24
30
  export { Platform as DChatPlatform, LogLevel as DChatLogLevel, SessionType as DChatSessionType, };
25
31
  export type { DChatInitAndLoginConfig };
26
32
  export { getDChatSDK } from "./constants/sdk";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AACrD,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,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,4CAA4C,CAAC;AAEvF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,YAAY,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC;AAI5D,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,uBAAuB,CAAC;AACrD,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,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,4CAA4C,CAAC;AAEvF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC5E,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAI7E,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
@@ -16,12 +16,16 @@ export { ChatProvider, useChatContext } from "./context/ChatContext";
16
16
  export { DChatDeskMessage, DChatBubble, Icon };
17
17
  export { default as RichTextEditor } from "./components/richTextEditor/RichTextEditor";
18
18
  export { default as DChatBizInbox } from "./screens/bizMessage";
19
+ export { default as DChatBizThreadDetail } from "./screens/bizThreadDetail";
20
+ export { BizThreadDetailHeader, BizThreadDetailInput, } from "./components/bizThreadDetail";
21
+ export { BizChatCategory, BizChatType, BizPeerType, } from "./types/biz";
19
22
  //Hooks
20
23
  export { useDChatAuth } from "./hooks/user/useAuth";
21
24
  export { useUpdateFcmToken } from "./hooks/user/useUpdateFcmToken";
22
- export { useCreateBizConversation } from "./hooks/biz";
25
+ export { useBizConversationList, useCreateBizConversation, } from "./hooks/biz";
23
26
  //Store
24
27
  export { useUserStore, DChatApplicationType, useAuthStore };
28
+ export { default as useBizConversationStore } from "./store/bizConversation";
25
29
  // export * from "./types/sdk";
26
30
  export { Platform as DChatPlatform, LogLevel as DChatLogLevel, SessionType as DChatSessionType, };
27
31
  export { getDChatSDK } from "./constants/sdk";
@@ -1,16 +1,16 @@
1
1
  import i18n from "i18next";
2
2
  import { initReactI18next } from "react-i18next";
3
3
  import vi from "./vi/common.json";
4
- import viBizInbox from "./vi/bizInbox.json";
4
+ import viBizInbox from "./vi/biz-inbox.json";
5
5
  if (!i18n.isInitialized) {
6
6
  i18n.use(initReactI18next).init({
7
7
  resources: {
8
- vi: { common: vi, bizInbox: viBizInbox },
8
+ vi: { common: vi, "biz-inbox": viBizInbox },
9
9
  },
10
10
  lng: "vi",
11
11
  fallbackLng: "vi",
12
12
  interpolation: { escapeValue: false },
13
- ns: ["common", "bizInbox"],
13
+ ns: ["common", "biz-inbox"],
14
14
  defaultNS: "common",
15
15
  });
16
16
  }
@@ -1,17 +1,17 @@
1
1
  import i18n from "i18next";
2
2
  import { initReactI18next } from "react-i18next";
3
3
  import vi from "./vi/common.json";
4
- import viBizInbox from "./vi/bizInbox.json";
4
+ import viBizInbox from "./vi/biz-inbox.json";
5
5
 
6
6
  if (!i18n.isInitialized) {
7
7
  i18n.use(initReactI18next).init({
8
8
  resources: {
9
- vi: { common: vi, bizInbox: viBizInbox },
9
+ vi: { common: vi, "biz-inbox": viBizInbox },
10
10
  },
11
11
  lng: "vi",
12
12
  fallbackLng: "vi",
13
13
  interpolation: { escapeValue: false },
14
- ns: ["common", "bizInbox"],
14
+ ns: ["common", "biz-inbox"],
15
15
  defaultNS: "common",
16
16
  });
17
17
  }
@@ -0,0 +1,20 @@
1
+ {
2
+ "tabs": {
3
+ "messages": "Tin nhắn"
4
+ },
5
+ "empty": {
6
+ "no_conversations": "Chưa có cuộc trò chuyện",
7
+ "no_messages": "Chưa có tin nhắn"
8
+ },
9
+ "thread_card": {
10
+ "fallback_name": "Người dùng",
11
+ "badge": {
12
+ "mall": "Mall",
13
+ "bot": "Bot"
14
+ }
15
+ },
16
+ "thread_detail": {
17
+ "profile_hint": "Nhấn để xem thông tin",
18
+ "input_placeholder": "Nhập tin nhắn..."
19
+ }
20
+ }
@@ -2,11 +2,18 @@
2
2
  "tabs": {
3
3
  "messages": "Tin nhắn"
4
4
  },
5
+ "empty": {
6
+ "no_conversations": "Chưa có cuộc trò chuyện"
7
+ },
5
8
  "thread_card": {
6
9
  "fallback_name": "Người dùng",
7
10
  "badge": {
8
11
  "mall": "Mall",
9
12
  "bot": "Bot"
10
13
  }
14
+ },
15
+ "thread_detail": {
16
+ "profile_hint": "Nhấn để xem thông tin",
17
+ "input_placeholder": "Nhập tin nhắn..."
11
18
  }
12
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screens/bizMessage/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,aAAa,GAAI,0CAIpB,kBAAkB,4CAyDpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screens/bizMessage/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,aAAa,GAAI,0CAIpB,kBAAkB,4CA8EpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,30 +1,55 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { useCallback, useMemo } from "react";
3
+ import { useEffect } from "react";
4
+ import { useSearchParams } from "next/navigation";
5
+ import { useTranslation } from "react-i18next";
4
6
  import { Empty } from "antd";
5
7
  import clsx from "clsx";
6
8
  import useAuthStore from "../../store/auth";
9
+ import useBizConversationStore from "../../store/bizConversation";
7
10
  import { useBizConversationList } from "../../hooks/biz";
8
- import { BizInboxHeader, BizThreadList } from "../../components/bizInbox";
11
+ import { BizInboxHeader } from "../../components/biz-inbox";
12
+ import BizThreadList from "../../components/biz-inbox/BizThreadList";
13
+ import DChatBizThreadDetail from "../../screens/bizThreadDetail";
9
14
  import { PAGE_SIZE } from "../../constants";
10
15
  import { DChatApplicationType } from "../../types/chat";
11
16
  import { Icon } from "../../components/icon";
12
17
  const DChatBizInbox = ({ pageSize = PAGE_SIZE.medium, onSelectThread, className, }) => {
18
+ const { t } = useTranslation("biz-inbox");
19
+ const searchParams = useSearchParams();
13
20
  const applicationType = useAuthStore((state) => state.applicationType);
14
- const isApplicationTypeValid = useMemo(() => Object.values(DChatApplicationType).includes(applicationType), [applicationType]);
21
+ const conversationData = useBizConversationStore((state) => state.conversationData);
22
+ const selectConversation = useBizConversationStore((state) => state.selectConversation);
23
+ const clearSelectedConversation = useBizConversationStore((state) => state.clearSelectedConversation);
24
+ const threadId = searchParams.get("threadId");
25
+ const isApplicationTypeValid = Object.values(DChatApplicationType).includes(applicationType);
15
26
  const conversationList = useBizConversationList({
16
27
  enabled: isApplicationTypeValid,
17
28
  pageSize,
18
29
  });
19
- const handleSelectThread = useCallback((item) => {
20
- onSelectThread === null || onSelectThread === void 0 ? void 0 : onSelectThread(item);
21
- }, [onSelectThread]);
22
- const renderMessagesBody = () => {
23
- if (!isApplicationTypeValid) {
24
- return (_jsx("div", { className: "flex flex-1 items-center justify-center py-12", children: _jsx(Empty, { image: _jsx(Icon, { icon: "chat-square-b", size: 80, className: "text-gray-300" }), description: "No conversations" }) }));
30
+ useEffect(() => {
31
+ if (!threadId) {
32
+ if (conversationData) {
33
+ clearSelectedConversation();
34
+ }
35
+ return;
25
36
  }
26
- return (_jsx(BizThreadList, { items: conversationList.items, isFetchingNextPage: conversationList.isFetchingNextPage, hasNextPage: conversationList.hasNextPage, onLoadMore: conversationList.fetchNextPage, onSelectThread: handleSelectThread }));
27
- };
28
- return (_jsxs("div", { "data-testid": "biz-inbox-root", className: clsx("flex h-full w-full flex-col bg-white", className), children: [_jsx(BizInboxHeader, {}), renderMessagesBody()] }));
37
+ if ((conversationData === null || conversationData === void 0 ? void 0 : conversationData.conversationId) === threadId)
38
+ return;
39
+ const matchedThread = conversationList.items.find((item) => item.conversationId === threadId);
40
+ if (matchedThread) {
41
+ selectConversation(matchedThread);
42
+ }
43
+ }, [
44
+ threadId,
45
+ conversationList.items,
46
+ conversationData,
47
+ selectConversation,
48
+ clearSelectedConversation,
49
+ ]);
50
+ if (threadId && conversationData) {
51
+ return _jsx(DChatBizThreadDetail, { className: className });
52
+ }
53
+ return (_jsxs("div", { "data-testid": "biz-inbox-root", className: clsx("flex h-full w-full flex-col bg-white", className), children: [_jsx(BizInboxHeader, {}), !isApplicationTypeValid ? (_jsx("div", { className: "flex flex-1 items-center justify-center py-12", children: _jsx(Empty, { image: _jsx(Icon, { icon: "chat-square-b", size: 80, className: "text-gray-300" }), description: t("empty.no_conversations") }) })) : (_jsx(BizThreadList, { items: conversationList.items, isFetchingNextPage: conversationList.isFetchingNextPage, hasNextPage: conversationList.hasNextPage, onLoadMore: conversationList.fetchNextPage, onSelectThread: onSelectThread }))] }));
29
54
  };
30
55
  export default DChatBizInbox;
@@ -0,0 +1,9 @@
1
+ import type { BizThreadDetailInputProps } from "../../components/bizThreadDetail";
2
+ export interface DChatBizThreadDetailProps extends BizThreadDetailInputProps {
3
+ className?: string;
4
+ children?: React.ReactNode;
5
+ onBack?: () => void;
6
+ }
7
+ declare const DChatBizThreadDetail: ({ className, children, onBack, ...inputProps }: DChatBizThreadDetailProps) => import("react/jsx-runtime").JSX.Element | null;
8
+ export default DChatBizThreadDetail;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screens/bizThreadDetail/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,MAAM,WAAW,yBAA0B,SAAQ,yBAAyB;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,QAAA,MAAM,oBAAoB,GAAI,gDAK3B,yBAAyB,mDAiC3B,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ import { usePathname, useRouter, useSearchParams } from "next/navigation";
15
+ import clsx from "clsx";
16
+ import useBizConversationStore from "../../store/bizConversation";
17
+ import { BizMessageList, BizThreadDetailHeader, BizThreadDetailInput, } from "../../components/bizThreadDetail";
18
+ const DChatBizThreadDetail = (_a) => {
19
+ var { className, children, onBack } = _a, inputProps = __rest(_a, ["className", "children", "onBack"]);
20
+ const router = useRouter();
21
+ const pathname = usePathname();
22
+ const searchParams = useSearchParams();
23
+ const conversation = useBizConversationStore((state) => state.conversationData);
24
+ const handleBack = () => {
25
+ const newSearchParams = new URLSearchParams(searchParams);
26
+ newSearchParams.delete("threadId");
27
+ const query = newSearchParams.toString();
28
+ router.replace(query ? `${pathname}?${query}` : pathname);
29
+ onBack === null || onBack === void 0 ? void 0 : onBack();
30
+ };
31
+ if (!conversation) {
32
+ return null;
33
+ }
34
+ return (_jsxs("div", { "data-testid": "biz-thread-detail-root", className: clsx("flex h-full w-full flex-col bg-white", className), children: [_jsx(BizThreadDetailHeader, { conversation: conversation, onBack: handleBack }), _jsx("div", { className: "flex min-h-0 flex-1 flex-col", children: children !== null && children !== void 0 ? children : _jsx(BizMessageList, {}) }), _jsx(BizThreadDetailInput, Object.assign({}, inputProps))] }));
35
+ };
36
+ export default DChatBizThreadDetail;
@@ -0,0 +1,12 @@
1
+ import type { BizConversationItem } from "../types/biz";
2
+ interface BizConversationStore {
3
+ conversationData: BizConversationItem | null;
4
+ selectedConversationId: string;
5
+ setConversationData: (data: BizConversationItem | null) => void;
6
+ setSelectedConversationId: (id: string) => void;
7
+ selectConversation: (conversation: BizConversationItem) => void;
8
+ clearSelectedConversation: () => void;
9
+ }
10
+ declare const useBizConversationStore: import("zustand").UseBoundStore<import("zustand").StoreApi<BizConversationStore>>;
11
+ export default useBizConversationStore;
12
+ //# sourceMappingURL=bizConversation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bizConversation.d.ts","sourceRoot":"","sources":["../../src/store/bizConversation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,UAAU,oBAAoB;IAC5B,gBAAgB,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC7C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mBAAmB,EAAE,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,KAAK,IAAI,CAAC;IAChE,yBAAyB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,kBAAkB,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChE,yBAAyB,EAAE,MAAM,IAAI,CAAC;CACvC;AAED,QAAA,MAAM,uBAAuB,mFAmB1B,CAAC;AAEJ,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { create } from "zustand";
2
+ const useBizConversationStore = create((set) => ({
3
+ conversationData: null,
4
+ selectedConversationId: "",
5
+ setConversationData: (data) => {
6
+ var _a;
7
+ return set({
8
+ conversationData: data,
9
+ selectedConversationId: (_a = data === null || data === void 0 ? void 0 : data.conversationId) !== null && _a !== void 0 ? _a : "",
10
+ });
11
+ },
12
+ setSelectedConversationId: (id) => set({ selectedConversationId: id }),
13
+ selectConversation: (conversation) => set({
14
+ conversationData: conversation,
15
+ selectedConversationId: conversation.conversationId,
16
+ }),
17
+ clearSelectedConversation: () => set({
18
+ conversationData: null,
19
+ selectedConversationId: "",
20
+ }),
21
+ }));
22
+ export default useBizConversationStore;
@@ -0,0 +1,8 @@
1
+ interface BizMessageDraftStore {
2
+ drafts: Record<string, string>;
3
+ setDraft: (conversationId: string, text: string) => void;
4
+ clearDraft: (conversationId: string) => void;
5
+ }
6
+ declare const useBizMessageDraftStore: import("zustand").UseBoundStore<import("zustand").StoreApi<BizMessageDraftStore>>;
7
+ export default useBizMessageDraftStore;
8
+ //# sourceMappingURL=bizMessageDraft.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bizMessageDraft.d.ts","sourceRoot":"","sources":["../../src/store/bizMessageDraft.ts"],"names":[],"mappings":"AAEA,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,UAAU,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED,QAAA,MAAM,uBAAuB,mFAW1B,CAAC;AAEJ,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,23 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { create } from "zustand";
13
+ const useBizMessageDraftStore = create((set) => ({
14
+ drafts: {},
15
+ setDraft: (conversationId, text) => set((state) => ({
16
+ drafts: Object.assign(Object.assign({}, state.drafts), { [conversationId]: text }),
17
+ })),
18
+ clearDraft: (conversationId) => set((state) => {
19
+ const _a = state.drafts, _b = conversationId, _ = _a[_b], drafts = __rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
20
+ return { drafts };
21
+ }),
22
+ }));
23
+ export default useBizMessageDraftStore;
@@ -0,0 +1,111 @@
1
+ import { GroupItem, GroupMemberItem, ConversationItem, PublicUserItem, MessageItem } from "@openim/wasm-client-sdk";
2
+ import { DChatApplicationType, DChatPlatform, SessionStatus, SessionTag } from "../types/chat";
3
+ export type ConversationListUpdateType = "push" | "filter";
4
+ export interface SessionStatusItem {
5
+ type: SessionStatus;
6
+ count: number;
7
+ }
8
+ export interface TagItem {
9
+ type: SessionTag;
10
+ count: number;
11
+ }
12
+ export interface ISessionSummary {
13
+ activeSessionCount: number;
14
+ completedSessionCount: number;
15
+ sessionStatuses: SessionStatusItem[];
16
+ tagCounts: TagItem[];
17
+ }
18
+ export interface ISessionByStatus {
19
+ id: string;
20
+ botId: string;
21
+ ownerId: string;
22
+ conversationId: string;
23
+ status: SessionStatus;
24
+ tag: SessionTag;
25
+ applicationType: DChatApplicationType;
26
+ owner?: {
27
+ id: string;
28
+ avatar: string | null;
29
+ fullName: string;
30
+ username: string;
31
+ };
32
+ conversation: ConversationItem;
33
+ }
34
+ export interface IFilterSummary {
35
+ status?: SessionStatus;
36
+ tag?: SessionTag;
37
+ searchTerm?: string;
38
+ conversationIds?: string[];
39
+ teamId?: string;
40
+ }
41
+ export interface ConversationStore {
42
+ conversationData: ConversationItem | null;
43
+ setConversationData: (data: ConversationItem, searchClientMsgID?: string) => void;
44
+ selectedConversationId: string;
45
+ selectedSourceId: string;
46
+ setSelectedConversationId: (threadId: string) => void;
47
+ conversationList: ConversationItem[];
48
+ currentConversation?: ConversationItem;
49
+ currentGroupInfo?: GroupItem;
50
+ currentMemberInGroup?: GroupMemberItem;
51
+ getConversationListByReq: (isOffset?: boolean) => Promise<boolean>;
52
+ updateConversationList: (list: ConversationItem[], type: ConversationListUpdateType) => void;
53
+ updateCurrentConversation: (conversation?: ConversationItem) => Promise<void>;
54
+ getCurrentGroupInfoByReq: (groupID: string) => Promise<void>;
55
+ getCurrentMemberInGroupByReq: (groupID: string) => Promise<void>;
56
+ resetConversationStore: () => void;
57
+ clearSelectedConversation: () => void;
58
+ searchClientMsgID: string;
59
+ setSearchClientMsgID: (clientMsgID: string) => void;
60
+ quotedMessage: MessageItem | null;
61
+ setQuotedMessage: (message: MessageItem | null) => void;
62
+ }
63
+ export interface IPersonalInfo {
64
+ fullName: string;
65
+ dateOfBirth: string;
66
+ sex: number;
67
+ }
68
+ export interface IUserInfo {
69
+ id: string;
70
+ personalInfo: IPersonalInfo;
71
+ username: string;
72
+ phone: string;
73
+ email: string;
74
+ avatarFullUrl: string;
75
+ }
76
+ export interface UserStore {
77
+ selfInfo: IUserInfo;
78
+ getSelfInfo: (data: IUserInfo) => void;
79
+ }
80
+ export interface UsersInfoStore {
81
+ usersInfo: Record<string, PublicUserItem>;
82
+ upsertUsers: (data: PublicUserItem[]) => void;
83
+ }
84
+ export interface AuthStore {
85
+ accessToken: string;
86
+ chatToken: string;
87
+ apiAddress: string;
88
+ wsAddress: string;
89
+ platformID: DChatPlatform;
90
+ userID: string;
91
+ isCx: boolean;
92
+ isCrm: boolean;
93
+ applicationType: DChatApplicationType;
94
+ onTokenRefresh?: () => Promise<string>;
95
+ onAuthError?: (error: Error) => void;
96
+ setAccessToken: (token: string) => void;
97
+ setChatToken: (token: string) => void;
98
+ initAuthStore: (config: {
99
+ accessToken?: string;
100
+ chatToken?: string;
101
+ apiAddress?: string;
102
+ wsAddress?: string;
103
+ platformID?: DChatPlatform;
104
+ userID?: string;
105
+ applicationType: DChatApplicationType;
106
+ isCrm?: boolean;
107
+ onTokenRefresh?: () => Promise<string>;
108
+ onAuthError?: (error: Error) => void;
109
+ }) => void;
110
+ }
111
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/store/type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};