sim-sdk-web 1.0.15 → 1.0.17

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.
@@ -1,25 +1,25 @@
1
1
  import SIMSDK from '.';
2
2
  import type { GetOneConversationParams, PinConversationParams, SetBurnDurationParams, SetConversationDraftParams, SetConversationPrivateParams, SetConversationRecvOptParams, SplitConversationParams } from '../types/params';
3
- import type { ConversationItem, SseResponse } from '../types/entity';
3
+ import { ConversationItem, PageParam, ServerResponse } from '../types/entity';
4
4
  export declare function setupConversation(simSDK: SIMSDK): {
5
- getAllConversationList: () => Promise<SseResponse<ConversationItem[]>>;
5
+ getAllConversationList: () => Promise<ServerResponse<PageParam<ConversationItem>>>;
6
6
  };
7
7
  export interface ConversationApi {
8
- getAllConversationList: (operationID?: string) => Promise<SseResponse<ConversationItem[]>>;
9
- getConversationListSplit: (params: SplitConversationParams, operationID?: string) => Promise<SseResponse<ConversationItem[]>>;
10
- getOneConversation: (params: GetOneConversationParams, operationID?: string) => Promise<SseResponse<ConversationItem>>;
11
- getMultipleConversation: (params: string, operationID?: string) => Promise<SseResponse<ConversationItem[]>>;
12
- getConversationIDBySessionType: (params: GetOneConversationParams, operationID?: string) => Promise<SseResponse<ConversationItem>>;
13
- getTotalUnreadMsgCount: (operationID?: string) => Promise<SseResponse<number>>;
14
- markConversationMessageAsRead: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
15
- setConversationDraft: (params: SetConversationDraftParams, operationID?: string) => Promise<SseResponse<unknown>>;
16
- pinConversation: (params: PinConversationParams, operationID?: string) => Promise<SseResponse<unknown>>;
17
- setConversationRecvMessageOpt: (params: SetConversationRecvOptParams, operationID?: string) => Promise<SseResponse<unknown>>;
18
- setConversationPrivateChat: (params: SetConversationPrivateParams, operationID?: string) => Promise<SseResponse<unknown>>;
19
- setConversationBurnDuration: (params: SetBurnDurationParams, operationID?: string) => Promise<SseResponse<unknown>>;
20
- resetConversationGroupAtType: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
21
- hideConversation: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
22
- hideAllConversation: (operationID?: string) => Promise<SseResponse<unknown>>;
23
- clearConversationAndDeleteAllMsg: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
24
- deleteConversationAndDeleteAllMsg: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
8
+ getAllConversationList: (operationID?: string) => Promise<ServerResponse<ConversationItem[]>>;
9
+ getConversationListSplit: (params: SplitConversationParams, operationID?: string) => Promise<ServerResponse<ConversationItem[]>>;
10
+ getOneConversation: (params: GetOneConversationParams, operationID?: string) => Promise<ServerResponse<ConversationItem>>;
11
+ getMultipleConversation: (params: string, operationID?: string) => Promise<ServerResponse<ConversationItem[]>>;
12
+ getConversationIDBySessionType: (params: GetOneConversationParams, operationID?: string) => Promise<ServerResponse<ConversationItem>>;
13
+ getTotalUnreadMsgCount: (operationID?: string) => Promise<ServerResponse<number>>;
14
+ markConversationMessageAsRead: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
15
+ setConversationDraft: (params: SetConversationDraftParams, operationID?: string) => Promise<ServerResponse<unknown>>;
16
+ pinConversation: (params: PinConversationParams, operationID?: string) => Promise<ServerResponse<unknown>>;
17
+ setConversationRecvMessageOpt: (params: SetConversationRecvOptParams, operationID?: string) => Promise<ServerResponse<unknown>>;
18
+ setConversationPrivateChat: (params: SetConversationPrivateParams, operationID?: string) => Promise<ServerResponse<unknown>>;
19
+ setConversationBurnDuration: (params: SetBurnDurationParams, operationID?: string) => Promise<ServerResponse<unknown>>;
20
+ resetConversationGroupAtType: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
21
+ hideConversation: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
22
+ hideAllConversation: (operationID?: string) => Promise<ServerResponse<unknown>>;
23
+ clearConversationAndDeleteAllMsg: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
24
+ deleteConversationAndDeleteAllMsg: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
25
25
  }
@@ -1,21 +1,21 @@
1
1
  import type { AccessFriendParams, AddBlackParams, RemarkFriendParams, SearchFriendParams } from '../types/params';
2
2
  import SIMSDK from '.';
3
- import type { BlackUserItem, FriendApplicationItem, FriendshipInfo, SseResponse, SearchedFriendsInfo, FullUserItem, Pagination } from '../types/entity';
3
+ import type { BlackUserItem, FriendApplicationItem, FriendshipInfo, ServerResponse, SearchedFriendsInfo, FullUserItem, Pagination } from '../types/entity';
4
4
  export declare function setupFriend(simSDK: SIMSDK): {};
5
5
  export interface FriendApi {
6
- acceptFriendApplication: (params: AccessFriendParams, operationID?: string) => Promise<SseResponse<unknown>>;
7
- addBlack: (params: AddBlackParams, operationID?: string) => Promise<SseResponse<unknown>>;
8
- addFriend: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
9
- checkFriend: (params: string[], operationID?: string) => Promise<SseResponse<FriendshipInfo[]>>;
10
- deleteFriend: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
11
- getBlackList: (operationID?: string) => Promise<SseResponse<BlackUserItem[]>>;
12
- getFriendApplicationListAsApplicant: (operationID?: string) => Promise<SseResponse<FriendApplicationItem[]>>;
13
- getFriendApplicationListAsRecipient: (operationID?: string) => Promise<SseResponse<FriendApplicationItem[]>>;
14
- getFriendList: (operationID?: string) => Promise<SseResponse<FullUserItem[]>>;
15
- getFriendListPage: (params: Pagination, operationID?: string) => Promise<SseResponse<FullUserItem[]>>;
16
- getSpecifiedFriendsInfo: (params: string[], operationID?: string) => Promise<SseResponse<FullUserItem[]>>;
17
- refuseFriendApplication: (params: AccessFriendParams, operationID?: string) => Promise<SseResponse<unknown>>;
18
- removeBlack: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
19
- searchFriends: (params: SearchFriendParams, operationID?: string) => Promise<SseResponse<SearchedFriendsInfo[]>>;
20
- setFriendRemark: (params: RemarkFriendParams, operationID?: string) => Promise<SseResponse<unknown>>;
6
+ acceptFriendApplication: (params: AccessFriendParams, operationID?: string) => Promise<ServerResponse<unknown>>;
7
+ addBlack: (params: AddBlackParams, operationID?: string) => Promise<ServerResponse<unknown>>;
8
+ addFriend: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
9
+ checkFriend: (params: string[], operationID?: string) => Promise<ServerResponse<FriendshipInfo[]>>;
10
+ deleteFriend: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
11
+ getBlackList: (operationID?: string) => Promise<ServerResponse<BlackUserItem[]>>;
12
+ getFriendApplicationListAsApplicant: (operationID?: string) => Promise<ServerResponse<FriendApplicationItem[]>>;
13
+ getFriendApplicationListAsRecipient: (operationID?: string) => Promise<ServerResponse<FriendApplicationItem[]>>;
14
+ getFriendList: (operationID?: string) => Promise<ServerResponse<FullUserItem[]>>;
15
+ getFriendListPage: (params: Pagination, operationID?: string) => Promise<ServerResponse<FullUserItem[]>>;
16
+ getSpecifiedFriendsInfo: (params: string[], operationID?: string) => Promise<ServerResponse<FullUserItem[]>>;
17
+ refuseFriendApplication: (params: AccessFriendParams, operationID?: string) => Promise<ServerResponse<unknown>>;
18
+ removeBlack: (params: string, operationID?: string) => Promise<ServerResponse<unknown>>;
19
+ searchFriends: (params: SearchFriendParams, operationID?: string) => Promise<ServerResponse<SearchedFriendsInfo[]>>;
20
+ setFriendRemark: (params: RemarkFriendParams, operationID?: string) => Promise<ServerResponse<unknown>>;
21
21
  }
@@ -1,32 +1,8 @@
1
- import type { AccessGroupParams, ChangeGroupMemberMuteParams, ChangeGroupMuteParams, CreateGroupParams, GetGroupMemberByTimeParams, JoinGroupParams, OpreateGroupParams, SearchGroupMemberParams, SearchGroupParams, SetGroupinfoParams, TransferGroupParams, UpdateMemberInfoParams, getGroupMembersInfoParams } from '../types/params';
2
1
  import SIMSDK from '.';
3
- import type { GroupApplicationItem, GroupItem, GroupMemberItem, Pagination, SseResponse } from '../types/entity';
4
- export declare function setupGroup(simSDK: SIMSDK): {
5
- createGroup: (params: CreateGroupParams) => Promise<SseResponse<GroupItem>>;
6
- };
7
- export interface GroupApi {
8
- createGroup: (params: CreateGroupParams, operationID?: string) => Promise<SseResponse<GroupItem>>;
9
- joinGroup: (params: JoinGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
10
- inviteUserToGroup: (params: OpreateGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
11
- getJoinedGroupList: (operationID?: string) => Promise<SseResponse<GroupItem[]>>;
12
- getJoinedGroupListPage: (params: Pagination, operationID?: string) => Promise<SseResponse<GroupItem[]>>;
13
- searchGroups: (params: SearchGroupParams, operationID?: string) => Promise<SseResponse<GroupItem[]>>;
14
- getSpecifiedGroupsInfo: (params: string[], operationID?: string) => Promise<SseResponse<GroupItem[]>>;
15
- setGroupInfo: (params: SetGroupinfoParams, operationID?: string) => Promise<SseResponse<unknown>>;
16
- getGroupApplicationListAsRecipient: (operationID?: string) => Promise<SseResponse<GroupApplicationItem[]>>;
17
- getGroupApplicationListAsApplicant: (operationID?: string) => Promise<SseResponse<GroupApplicationItem[]>>;
18
- acceptGroupApplication: (params: AccessGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
19
- refuseGroupApplication: (params: AccessGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
20
- getGroupMemberList: (operationID?: string) => Promise<SseResponse<GroupMemberItem[]>>;
21
- getSpecifiedGroupMembersInfo: (params: getGroupMembersInfoParams, operationID?: string) => Promise<SseResponse<GroupMemberItem[]>>;
22
- searchGroupMembers: (params: SearchGroupMemberParams, operationID?: string) => Promise<SseResponse<GroupMemberItem[]>>;
23
- setGroupMemberInfo: (params: UpdateMemberInfoParams, operationID?: string) => Promise<SseResponse<unknown>>;
24
- getGroupMemberOwnerAndAdmin: (params: string, operationID?: string) => Promise<SseResponse<GroupMemberItem[]>>;
25
- getGroupMemberListByJoinTimeFilter: (params: GetGroupMemberByTimeParams, operationID?: string) => Promise<SseResponse<GroupMemberItem[]>>;
26
- kickGroupMember: (params: OpreateGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
27
- changeGroupMemberMute: (params: ChangeGroupMemberMuteParams, operationID?: string) => Promise<SseResponse<unknown>>;
28
- changeGroupMute: (params: ChangeGroupMuteParams, operationID?: string) => Promise<SseResponse<unknown>>;
29
- transferGroupOwner: (params: TransferGroupParams, operationID?: string) => Promise<SseResponse<unknown>>;
30
- dismissGroup: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
31
- quitGroup: (params: string, operationID?: string) => Promise<SseResponse<unknown>>;
2
+ import { GroupInfoVO, GroupItem, ServerResponse } from '../types/entity';
3
+ export declare class GroupService {
4
+ private simSDK;
5
+ constructor(simSDK: SIMSDK);
6
+ createGroup(group: GroupItem): Promise<ServerResponse>;
7
+ getGroupInfo(groupId: string): Promise<ServerResponse<GroupInfoVO>>;
32
8
  }
@@ -1,47 +1,39 @@
1
- import type { MessageItem, SseResponse } from '../types/entity';
2
- import type { FileMsgParams, ImageMsgParams, LoginParams, SoundMsgParams, UploadFileParams, VideoMsgParams } from '../types/params';
1
+ import { GroupItem, HistoryMessageParam, ServerResponse, Request } from '../types/entity';
2
+ import type { LoginParams, UploadFileParams } from '../types/params';
3
3
  import { RequestApi } from '../constant/api';
4
4
  import { UserApi } from './user';
5
5
  import { FriendApi } from './friend';
6
- import { GroupApi } from './group';
7
- import { MessageApi } from './message';
8
6
  import { ConversationApi } from './conversation';
9
7
  import Emitter from '../utils/emitter';
10
8
  import { HttpMethod } from '../utils/request';
11
- declare class SIMSDK extends Emitter implements UserApi, FriendApi, GroupApi, MessageApi, ConversationApi {
9
+ declare class SIMSDK extends Emitter implements UserApi, FriendApi, ConversationApi {
12
10
  private username?;
13
11
  private token?;
14
12
  private appKey?;
15
13
  private apiAddr?;
16
- private sseManager?;
14
+ private sseClient?;
17
15
  private readonly debug;
16
+ private messageService;
17
+ private groupService;
18
18
  constructor(debug?: boolean);
19
- private sendRequest;
20
- private defaultDataFormatter;
21
- createRequestFunction: <T extends Record<string, any> | undefined, R = unknown>(reqFuncName: RequestApi, method: HttpMethod) => (params: T) => Promise<SseResponse<R>>;
22
- createRequestFunctionWithoutParams: <T = unknown>(reqFuncName: RequestApi, method: HttpMethod) => () => Promise<SseResponse<T>>;
19
+ sendRequest: <T>(requestObj: Request) => Promise<ServerResponse<T>>;
20
+ createRequestFunction: <T extends Record<string, any> | undefined, R = unknown>(reqFuncName: RequestApi, method: HttpMethod) => (params: T) => Promise<ServerResponse<R>>;
21
+ createRequestFunctionWithoutParams: <T = unknown>(reqFuncName: RequestApi, method: HttpMethod) => () => Promise<ServerResponse<T>>;
23
22
  private handleMessage;
24
23
  private handleReconnectSuccess;
25
24
  log(...args: any[]): void;
25
+ /**
26
+ * Login to the server using the provided login parameters.
27
+ *
28
+ * @param params - The login parameters, including api address, username, token, and app key.
29
+ * @returns A promise that resolves to a success message or rejects with an error message.
30
+ */
26
31
  login: (params: LoginParams) => Promise<string>;
27
- logout: () => Promise<SseResponse<unknown>>;
32
+ logout: () => Promise<ServerResponse<unknown>>;
28
33
  private internalUploadFile;
29
- uploadFile: ({ file }: UploadFileParams) => Promise<SseResponse<{
34
+ uploadFile: ({ file }: UploadFileParams) => Promise<ServerResponse<{
30
35
  url: string;
31
36
  }>>;
32
- createImageMessageByFile: (params: ImageMsgParams & {
33
- file: File;
34
- }) => Promise<SseResponse<MessageItem>>;
35
- createVideoMessageByFile: (params: VideoMsgParams & {
36
- videoFile: File;
37
- snapshotFile: File;
38
- }) => Promise<SseResponse<MessageItem>>;
39
- createSoundMessageByFile: (params: SoundMsgParams & {
40
- file: File;
41
- }) => Promise<SseResponse<MessageItem>>;
42
- createFileMessageByFile: (params: FileMsgParams & {
43
- file: File;
44
- }) => Promise<SseResponse<MessageItem>>;
45
37
  getSelfUserInfo: UserApi['getSelfUserInfo'];
46
38
  setSelfInfo: UserApi['setSelfInfo'];
47
39
  getUsersInfoWithCache: UserApi['getUsersInfoWithCache'];
@@ -66,58 +58,11 @@ declare class SIMSDK extends Emitter implements UserApi, FriendApi, GroupApi, Me
66
58
  removeBlack: FriendApi['removeBlack'];
67
59
  searchFriends: FriendApi['searchFriends'];
68
60
  setFriendRemark: FriendApi['setFriendRemark'];
69
- createGroup: GroupApi['createGroup'];
70
- joinGroup: GroupApi['joinGroup'];
71
- inviteUserToGroup: GroupApi['inviteUserToGroup'];
72
- getJoinedGroupList: GroupApi['getJoinedGroupList'];
73
- getJoinedGroupListPage: GroupApi['getJoinedGroupListPage'];
74
- searchGroups: GroupApi['searchGroups'];
75
- getSpecifiedGroupsInfo: GroupApi['getSpecifiedGroupsInfo'];
76
- setGroupInfo: GroupApi['setGroupInfo'];
77
- getGroupApplicationListAsRecipient: GroupApi['getGroupApplicationListAsRecipient'];
78
- getGroupApplicationListAsApplicant: GroupApi['getGroupApplicationListAsApplicant'];
79
- acceptGroupApplication: GroupApi['acceptGroupApplication'];
80
- refuseGroupApplication: GroupApi['refuseGroupApplication'];
81
- getGroupMemberList: GroupApi['getGroupMemberList'];
82
- getSpecifiedGroupMembersInfo: GroupApi['getSpecifiedGroupMembersInfo'];
83
- searchGroupMembers: GroupApi['searchGroupMembers'];
84
- setGroupMemberInfo: GroupApi['setGroupMemberInfo'];
85
- getGroupMemberOwnerAndAdmin: GroupApi['getGroupMemberOwnerAndAdmin'];
86
- getGroupMemberListByJoinTimeFilter: GroupApi['getGroupMemberListByJoinTimeFilter'];
87
- kickGroupMember: GroupApi['kickGroupMember'];
88
- changeGroupMemberMute: GroupApi['changeGroupMemberMute'];
89
- changeGroupMute: GroupApi['changeGroupMute'];
90
- transferGroupOwner: GroupApi['transferGroupOwner'];
91
- dismissGroup: GroupApi['dismissGroup'];
92
- quitGroup: GroupApi['quitGroup'];
93
- createTextMessage: MessageApi['createTextMessage'];
94
- createTextAtMessage: MessageApi['createTextAtMessage'];
95
- createImageMessageByURL: MessageApi['createImageMessageByURL'];
96
- createSoundMessageByURL: MessageApi['createSoundMessageByURL'];
97
- createVideoMessageByURL: MessageApi['createVideoMessageByURL'];
98
- createFileMessageByURL: MessageApi['createFileMessageByURL'];
99
- createMergerMessage: MessageApi['createMergerMessage'];
100
- createForwardMessage: MessageApi['createForwardMessage'];
101
- createLocationMessage: MessageApi['createLocationMessage'];
102
- createQuoteMessage: MessageApi['createQuoteMessage'];
103
- createCardMessage: MessageApi['createCardMessage'];
104
- createCustomMessage: MessageApi['createCustomMessage'];
105
- createFaceMessage: MessageApi['createFaceMessage'];
106
- sendMessage: MessageApi['sendMessage'];
107
- sendMessageNotOss: MessageApi['sendMessageNotOss'];
108
- typingStatusUpdate: MessageApi['typingStatusUpdate'];
109
- revokeMessage: MessageApi['revokeMessage'];
110
- deleteMessage: MessageApi['deleteMessage'];
111
- deleteMessageFromLocalStorage: MessageApi['deleteMessageFromLocalStorage'];
112
- deleteAllMsgFromLocal: MessageApi['deleteAllMsgFromLocal'];
113
- deleteAllMsgFromLocalAndSvr: MessageApi['deleteAllMsgFromLocalAndSvr'];
114
- searchLocalMessages: MessageApi['searchLocalMessages'];
115
- getAdvancedHistoryMessageList: MessageApi['getAdvancedHistoryMessageList'];
116
- getAdvancedHistoryMessageListReverse: MessageApi['getAdvancedHistoryMessageListReverse'];
117
- findMessageList: MessageApi['findMessageList'];
118
- insertGroupMessageToLocalStorage: MessageApi['insertGroupMessageToLocalStorage'];
119
- insertSingleMessageToLocalStorage: MessageApi['insertSingleMessageToLocalStorage'];
120
- setMessageLocalEx: MessageApi['setMessageLocalEx'];
61
+ get createGroup(): (group: GroupItem) => Promise<ServerResponse<unknown>>;
62
+ get getGroupInfo(): (groupId: string) => Promise<ServerResponse<import("../types/entity").GroupInfoVO>>;
63
+ get createTextMessage(): (text: string, params?: Partial<Omit<import("../types/entity").MessageItem, "text">>) => Promise<ServerResponse>;
64
+ get getHistoryMessageList(): (params: HistoryMessageParam) => Promise<ServerResponse<import("../types/entity").HistoryMessageResponse>>;
65
+ get uuid(): string;
121
66
  getAllConversationList: ConversationApi['getAllConversationList'];
122
67
  getConversationListSplit: ConversationApi['getConversationListSplit'];
123
68
  getOneConversation: ConversationApi['getOneConversation'];
@@ -137,4 +82,4 @@ declare class SIMSDK extends Emitter implements UserApi, FriendApi, GroupApi, Me
137
82
  deleteConversationAndDeleteAllMsg: ConversationApi['deleteConversationAndDeleteAllMsg'];
138
83
  }
139
84
  export default SIMSDK;
140
- export type MixinApiService = SIMSDK & UserApi & FriendApi & GroupApi & MessageApi & ConversationApi;
85
+ export type MixinApiService = SIMSDK & UserApi & FriendApi & ConversationApi;
@@ -1,36 +1,11 @@
1
- import type { AtMsgParams, CustomMsgParams, FaceMessageParams, FileMsgParams, FindMessageParams, GetAdvancedHistoryMsgParams, ImageMsgParams, InsertGroupMsgParams, InsertSingleMsgParams, LocationMsgParams, MergerMsgParams, OpreateMessageParams, QuoteMsgParams, SearchLocalParams, SendMsgParams, SetMessageLocalExParams, SoundMsgParams, TypingUpdateParams, VideoMsgParams } from '../types/params';
2
- import type { AdvancedGetMessageResult, CardElem, MessageItem, SearchMessageResult, SseResponse } from '../types/entity';
1
+ import { HistoryMessageParam, HistoryMessageResponse, MessageItem, ServerResponse } from '../types/entity';
3
2
  import SIMSDK from '.';
4
- export declare function setupMessage(simSDK: SIMSDK): {
5
- createTextMessage: (params: Record<string, any> | undefined) => Promise<SseResponse<MessageItem>>;
6
- };
7
- export interface MessageApi {
8
- createTextMessage: (text: string, operationID?: string) => Promise<SseResponse<MessageItem>>;
9
- createTextAtMessage: (params: AtMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
10
- createImageMessageByURL: (params: ImageMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
11
- createSoundMessageByURL: (params: SoundMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
12
- createVideoMessageByURL: (params: VideoMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
13
- createFileMessageByURL: (params: FileMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
14
- createMergerMessage: (params: MergerMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
15
- createForwardMessage: (params: MessageItem, operationID?: string) => Promise<SseResponse<MessageItem>>;
16
- createLocationMessage: (params: LocationMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
17
- createQuoteMessage: (params: QuoteMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
18
- createCardMessage: (params: CardElem, operationID?: string) => Promise<SseResponse<MessageItem>>;
19
- createCustomMessage: (params: CustomMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
20
- createFaceMessage: (params: FaceMessageParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
21
- sendMessage: (params: SendMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
22
- sendMessageNotOss: (params: SendMsgParams, operationID?: string) => Promise<SseResponse<MessageItem>>;
23
- typingStatusUpdate: (params: TypingUpdateParams, operationID?: string) => Promise<SseResponse<unknown>>;
24
- revokeMessage: (params: OpreateMessageParams, operationID?: string) => Promise<SseResponse<unknown>>;
25
- deleteMessage: (params: OpreateMessageParams, operationID?: string) => Promise<SseResponse<unknown>>;
26
- deleteMessageFromLocalStorage: (params: OpreateMessageParams, operationID?: string) => Promise<SseResponse<unknown>>;
27
- deleteAllMsgFromLocal: (operationID?: string) => Promise<SseResponse<unknown>>;
28
- deleteAllMsgFromLocalAndSvr: (operationID?: string) => Promise<SseResponse<unknown>>;
29
- searchLocalMessages: (params: SearchLocalParams, operationID?: string) => Promise<SseResponse<SearchMessageResult>>;
30
- getAdvancedHistoryMessageList: (params: GetAdvancedHistoryMsgParams, operationID?: string) => Promise<SseResponse<AdvancedGetMessageResult>>;
31
- getAdvancedHistoryMessageListReverse: (params: GetAdvancedHistoryMsgParams, operationID?: string) => Promise<SseResponse<AdvancedGetMessageResult>>;
32
- findMessageList: (params: FindMessageParams[], operationID?: string) => Promise<SseResponse<SearchMessageResult>>;
33
- insertGroupMessageToLocalStorage: (params: InsertGroupMsgParams, operationID?: string) => Promise<SseResponse<unknown>>;
34
- insertSingleMessageToLocalStorage: (params: InsertSingleMsgParams, operationID?: string) => Promise<SseResponse<unknown>>;
35
- setMessageLocalEx: (params: SetMessageLocalExParams, operationID?: string) => Promise<SseResponse<unknown>>;
3
+ export declare class MessageService {
4
+ private simSDK;
5
+ constructor(simSDK: SIMSDK);
6
+ private sendMessage;
7
+ private createMessage;
8
+ createTextMessage(text: string, params?: Partial<Omit<MessageItem, 'text'>>): Promise<ServerResponse>;
9
+ createImageMessage(imageUrl: string, params?: Partial<Omit<MessageItem, 'snapshot'>>): Promise<ServerResponse<MessageItem>>;
10
+ getHistoryMessageList({ groupId, lastId, size }: HistoryMessageParam): Promise<ServerResponse<HistoryMessageResponse>>;
36
11
  }
package/lib/api/user.d.ts CHANGED
@@ -1,16 +1,16 @@
1
1
  import type { GetUserInfoWithCacheParams } from '../types/params';
2
2
  import SIMSDK from '.';
3
3
  import type { MessageReceiveOptType } from '../types/enum';
4
- import type { FullUserItemWithCache, SelfUserInfo, UserOnlineState, SseResponse } from '../types/entity';
4
+ import type { FullUserItemWithCache, SelfUserInfo, UserOnlineState, ServerResponse } from '../types/entity';
5
5
  export declare function setupUser(simSDK: SIMSDK): {};
6
6
  export interface UserApi {
7
- getSelfUserInfo: (operationID?: string) => Promise<SseResponse<SelfUserInfo>>;
8
- setSelfInfo: (params: Partial<SelfUserInfo>, operationID?: string) => Promise<SseResponse<unknown>>;
9
- getUsersInfoWithCache: (params: GetUserInfoWithCacheParams, operationID?: string) => Promise<SseResponse<FullUserItemWithCache[]>>;
10
- subscribeUsersStatus: (params: string[], operationID?: string) => Promise<SseResponse<UserOnlineState>>;
11
- unsubscribeUsersStatus: (params: string[], operationID?: string) => Promise<SseResponse<unknown>>;
12
- getSubscribeUsersStatus: (operationID?: string) => Promise<SseResponse<UserOnlineState[]>>;
13
- setAppBackgroundStatus: (params: boolean, operationID?: string) => Promise<SseResponse<unknown>>;
14
- networkStatusChanged: (operationID?: string) => Promise<SseResponse<unknown>>;
15
- setGlobalRecvMessageOpt: (params: MessageReceiveOptType, operationID?: string) => Promise<SseResponse<unknown>>;
7
+ getSelfUserInfo: (operationID?: string) => Promise<ServerResponse<SelfUserInfo>>;
8
+ setSelfInfo: (params: Partial<SelfUserInfo>, operationID?: string) => Promise<ServerResponse<unknown>>;
9
+ getUsersInfoWithCache: (params: GetUserInfoWithCacheParams, operationID?: string) => Promise<ServerResponse<FullUserItemWithCache[]>>;
10
+ subscribeUsersStatus: (params: string[], operationID?: string) => Promise<ServerResponse<UserOnlineState>>;
11
+ unsubscribeUsersStatus: (params: string[], operationID?: string) => Promise<ServerResponse<unknown>>;
12
+ getSubscribeUsersStatus: (operationID?: string) => Promise<ServerResponse<UserOnlineState[]>>;
13
+ setAppBackgroundStatus: (params: boolean, operationID?: string) => Promise<ServerResponse<unknown>>;
14
+ networkStatusChanged: (operationID?: string) => Promise<ServerResponse<unknown>>;
15
+ setGlobalRecvMessageOpt: (params: MessageReceiveOptType, operationID?: string) => Promise<ServerResponse<unknown>>;
16
16
  }
@@ -7,104 +7,9 @@ export declare enum ErrorCode {
7
7
  export declare enum RequestApi {
8
8
  Login = "/chat/member/login",
9
9
  Logout = "Logout",
10
- GetLoginStatus = "GetLoginStatus",
11
- GetLoginUserID = "GetLoginUserID",
12
- GetSelfUserInfo = "GetSelfUserInfo",
13
- SetSelfInfo = "SetSelfInfo",
14
- GetUsersInfoWithCache = "GetUsersInfoWithCache",
15
- SubscribeUsersStatus = "SubscribeUsersStatus",
16
- UnsubscribeUsersStatus = "UnsubscribeUsersStatus",
17
- GetSubscribeUsersStatus = "GetSubscribeUsersStatus",
18
- SetAppBackgroundStatus = "SetAppBackgroundStatus",
19
- NetworkStatusChanged = "NetworkStatusChanged",
20
- SetGlobalRecvMessageOpt = "SetGlobalRecvMessageOpt",
21
- AcceptFriendApplication = "AcceptFriendApplication",
22
- AddBlack = "AddBlack",
23
- AddFriend = "AddFriend",
24
- CheckFriend = "CheckFriend",
25
- DeleteFriend = "DeleteFriend",
26
- GetBlackList = "GetBlackList",
27
- GetFriendApplicationListAsApplicant = "GetFriendApplicationListAsApplicant",
28
- GetFriendApplicationListAsRecipient = "GetFriendApplicationListAsRecipient",
29
- GetFriendList = "GetFriendList",
30
- GetFriendListPage = "GetFriendListPage",
31
- GetSpecifiedFriendsInfo = "GetSpecifiedFriendsInfo",
32
- RefuseFriendApplication = "RefuseFriendApplication",
33
- RemoveBlack = "RemoveBlack",
34
- SearchFriends = "SearchFriends",
35
- SetFriendRemark = "SetFriendRemark",
36
10
  CreateGroup = "CreateGroup",
37
- JoinGroup = "JoinGroup",
38
- InviteUserToGroup = "InviteUserToGroup",
39
- GetJoinedGroupList = "GetJoinedGroupList",
40
- GetJoinedGroupListPage = "GetJoinedGroupListPage",
41
- SearchGroups = "SearchGroups",
42
- GetSpecifiedGroupsInfo = "GetSpecifiedGroupsInfo",
43
- SetGroupInfo = "SetGroupInfo",
44
- GetGroupApplicationListAsRecipient = "GetGroupApplicationListAsRecipient",
45
- GetGroupApplicationListAsApplicant = "GetGroupApplicationListAsApplicant",
46
- AcceptGroupApplication = "AcceptGroupApplication",
47
- RefuseGroupApplication = "RefuseGroupApplication",
48
- GetGroupMemberList = "GetGroupMemberList",
49
- GetSpecifiedGroupMembersInfo = "GetSpecifiedGroupMembersInfo",
50
- SearchGroupMembers = "SearchGroupMembers",
51
- SetGroupMemberInfo = "SetGroupMemberInfo",
52
- GetGroupMemberOwnerAndAdmin = "GetGroupMemberOwnerAndAdmin",
53
- GetGroupMemberListByJoinTimeFilter = "GetGroupMemberListByJoinTimeFilter",
54
- KickGroupMember = "KickGroupMember",
55
- ChangeGroupMemberMute = "ChangeGroupMemberMute",
56
- ChangeGroupMute = "ChangeGroupMute",
57
- TransferGroupOwner = "TransferGroupOwner",
58
- DismissGroup = "DismissGroup",
59
- QuitGroup = "QuitGroup",
60
- GetAllConversationList = "GetAllConversationList",
61
- GetConversationListSplit = "GetConversationListSplit",
62
- GetOneConversation = "GetOneConversation",
63
- GetMultipleConversation = "GetMultipleConversation",
64
- GetConversationIDBySessionType = "GetConversationIDBySessionType",
65
- GetTotalUnreadMsgCount = "GetTotalUnreadMsgCount",
66
- MarkConversationMessageAsRead = "MarkConversationMessageAsRead",
67
- SetConversationDraft = "SetConversationDraft",
68
- PinConversation = "PinConversation",
69
- SetConversationRecvMessageOpt = "SetConversationRecvMessageOpt",
70
- SetConversationPrivateChat = "SetConversationPrivateChat",
71
- SetConversationBurnDuration = "SetConversationBurnDuration",
72
- ResetConversationGroupAtType = "ResetConversationGroupAtType",
73
- HideConversation = "HideConversation",
74
- HideAllConversation = "HideAllConversation",
75
- ClearConversationAndDeleteAllMsg = "ClearConversationAndDeleteAllMsg",
76
- DeleteConversationAndDeleteAllMsg = "DeleteConversationAndDeleteAllMsg",
77
- CreateTextMessage = "CreateTextMessage",
78
- CreateTextAtMessage = "CreateTextAtMessage",
79
- CreateImageMessageByFile = "CreateImageMessageByFile",
80
- CreateImageMessageByURL = "CreateImageMessageByURL",
81
- CreateSoundMessageByFile = "CreateSoundMessageByFile",
82
- CreateSoundMessageByURL = "CreateSoundMessageByURL",
83
- CreateVideoMessageByFile = "CreateVideoMessageByFile",
84
- CreateVideoMessageByURL = "CreateVideoMessageByURL",
85
- CreateFileMessageByFile = "CreateFileMessageByFile",
86
- CreateFileMessageByURL = "CreateFileMessageByURL",
87
- CreateMergerMessage = "CreateMergerMessage",
88
- CreateForwardMessage = "CreateForwardMessage",
89
- CreateLocationMessage = "CreateLocationMessage",
90
- CreateQuoteMessage = "CreateQuoteMessage",
91
- CreateCardMessage = "CreateCardMessage",
92
- CreateCustomMessage = "CreateCustomMessage",
93
- CreateFaceMessage = "CreateFaceMessage",
94
- SendMessage = "SendMessage",
95
- SendMessageNotOss = "SendMessageNotOss",
96
- UploadFile = "UploadFile",
97
- TypingStatusUpdate = "TypingStatusUpdate",
98
- RevokeMessage = "RevokeMessage",
99
- DeleteMessage = "DeleteMessage",
100
- DeleteMessageFromLocalStorage = "DeleteMessageFromLocalStorage",
101
- DeleteAllMsgFromLocal = "DeleteAllMsgFromLocal",
102
- DeleteAllMsgFromLocalAndSvr = "DeleteAllMsgFromLocalAndSvr",
103
- SearchLocalMessages = "SearchLocalMessages",
104
- GetAdvancedHistoryMessageList = "GetAdvancedHistoryMessageList",
105
- GetAdvancedHistoryMessageListReverse = "GetAdvancedHistoryMessageListReverse",
106
- FindMessageList = "FindMessageList",
107
- InsertGroupMessageToLocalStorage = "InsertGroupMessageToLocalStorage",
108
- InsertSingleMessageToLocalStorage = "InsertSingleMessageToLocalStorage",
109
- SetMessageLocalEx = "SetMessageLocalEx"
11
+ GetGroupInfo = "/chat/group/info",
12
+ GetAllConversationList = "/chat/group/list",
13
+ CreateTextMessage = "/chat/message/push",
14
+ GetHistoryMessageList = "/chat/message/pull"
110
15
  }
@@ -1,59 +1,7 @@
1
1
  export declare enum CbEvents {
2
+ onReceiveMessage = "onReceiveMessage",
2
3
  onReceiveMessages = "onReceiveMessages",
3
- OnConnectFailed = "OnConnectFailed",
4
- OnConnectSuccess = "OnConnectSuccess",
5
- OnConnecting = "OnConnecting",
6
4
  OnKickedOffline = "OnKickedOffline",
7
5
  OnUserTokenInvalid = "OnUserTokenInvalid",
8
- OnSelfInfoUpdated = "OnSelfInfoUpdated",
9
- OnUserTokenExpired = "OnUserTokenExpired",
10
- OnProgress = "OnProgress",
11
- OnRecvNewMessage = "OnRecvNewMessage",
12
- OnRecvNewMessages = "OnRecvNewMessages",
13
- OnRecvMessageRevoked = "OnRecvMessageRevoked",
14
- OnNewRecvMessageRevoked = "OnNewRecvMessageRevoked",
15
- OnRecvC2CReadReceipt = "OnRecvC2CReadReceipt",
16
- OnRecvGroupReadReceipt = "OnRecvGroupReadReceipt",
17
- OnConversationChanged = "OnConversationChanged",
18
- OnNewConversation = "OnNewConversation",
19
- OnSyncServerFailed = "OnSyncServerFailed",
20
- OnSyncServerFinish = "OnSyncServerFinish",
21
- OnSyncServerStart = "OnSyncServerStart",
22
- OnSyncServerProgress = "OnSyncServerProgress",
23
- OnTotalUnreadMessageCountChanged = "OnTotalUnreadMessageCountChanged",
24
- OnBlackAdded = "OnBlackAdded",
25
- OnBlackDeleted = "OnBlackDeleted",
26
- OnFriendApplicationAccepted = "OnFriendApplicationAccepted",
27
- OnFriendApplicationAdded = "OnFriendApplicationAdded",
28
- OnFriendApplicationDeleted = "OnFriendApplicationDeleted",
29
- OnFriendApplicationRejected = "OnFriendApplicationRejected",
30
- OnFriendInfoChanged = "OnFriendInfoChanged",
31
- OnFriendAdded = "OnFriendAdded",
32
- OnFriendDeleted = "OnFriendDeleted",
33
- OnJoinedGroupAdded = "OnJoinedGroupAdded",
34
- OnJoinedGroupDeleted = "OnJoinedGroupDeleted",
35
- OnGroupDismissed = "OnGroupDismissed",
36
- OnGroupMemberAdded = "OnGroupMemberAdded",
37
- OnGroupMemberDeleted = "OnGroupMemberDeleted",
38
- OnGroupApplicationAdded = "OnGroupApplicationAdded",
39
- OnGroupApplicationDeleted = "OnGroupApplicationDeleted",
40
- OnGroupInfoChanged = "OnGroupInfoChanged",
41
- OnGroupMemberInfoChanged = "OnGroupMemberInfoChanged",
42
- OnGroupApplicationAccepted = "OnGroupApplicationAccepted",
43
- OnGroupApplicationRejected = "OnGroupApplicationRejected",
44
- UploadComplete = "UploadComplete",
45
- OnRecvCustomBusinessMessage = "OnRecvCustomBusinessMessage",
46
- OnUserStatusChanged = "OnUserStatusChanged",
47
- OnReceiveNewInvitation = "OnReceiveNewInvitation",
48
- OnInviteeAccepted = "OnInviteeAccepted",
49
- OnInviteeRejected = "OnInviteeRejected",
50
- OnInvitationCancelled = "OnInvitationCancelled",
51
- OnHangUp = "OnHangUp",
52
- OnInvitationTimeout = "OnInvitationTimeout",
53
- OnInviteeAcceptedByOtherDevice = "OnInviteeAcceptedByOtherDevice",
54
- OnInviteeRejectedByOtherDevice = "OnInviteeRejectedByOtherDevice",
55
- OnStreamChange = "OnStreamChange",
56
- OnRoomParticipantConnected = "OnRoomParticipantConnected",
57
- OnRoomParticipantDisconnected = "OnRoomParticipantDisconnected",
58
- OnReceiveCustomSignal = "OnReceiveCustomSignal"
6
+ OnUserTokenExpired = "OnUserTokenExpired"
59
7
  }
package/lib/index.es.js CHANGED
@@ -1 +1 @@
1
- import e from"eventsource";function t(){return t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},t.apply(null,arguments)}function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}var o,r,i=/*#__PURE__*/function(){function t(t){var n=this;this.url=void 0,this.authorizationToken=void 0,this.retryInterval=void 0,this.maxRetries=void 0,this.reconnectAttempts=void 0,this.eventSource=void 0,this.connected=void 0,this.onMessage=void 0,this.onReconnectSuccess=void 0,this.connect=function(){return n.connected?Promise.reject(new Error("sse is connected!")):new Promise(function(t,o){n.eventSource=new e(n.url,{headers:{Authorization:"Bearer "+n.authorizationToken}}),n.eventSource&&(n.eventSource.onopen=function(){n.connected=!0,n.reconnectAttempts&&n.onReconnectSuccess(),n.reconnectAttempts=0,t("sse connect successful!")},n.eventSource.onmessage=function(e){n.handleMessage(e.data)},n.eventSource.onerror=function(){n.connected=!1,console.error("SSE 连接出错,准备重试..."),n.reconnect(),o("sse connect err.")})})},this.url=t.url,this.authorizationToken=t.authorizationToken,this.retryInterval=t.retryInterval||5e3,this.maxRetries=t.maxRetries||5,this.reconnectAttempts=0,this.eventSource=null,this.connected=!1,this.onMessage=t.onMessage,this.onReconnectSuccess=t.onReconnectSuccess}var n=t.prototype;return n.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessage(t)}catch(e){console.error("数据解析错误:",e)}},n.reconnect=function(){var e=this;if(this.eventSource&&this.eventSource.close(),this.reconnectAttempts>=this.maxRetries)console.error("已达到最大重试次数,停止重试");else{var t=this.retryInterval*Math.pow(2,this.reconnectAttempts);setTimeout(function(){e.reconnectAttempts++,console.log("第 "+e.reconnectAttempts+" 次重试连接 SSE...(延迟 "+t+"ms)"),e.connect()},t)}},n.close=function(){this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.connected=!1,console.log("SSE 连接已关闭")},n.isConnected=function(){return this.connected},t}();!function(e){e[e.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",e[e.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",e[e.UnknownError=10005]="UnknownError",e[e.LoginRepeatError=10102]="LoginRepeatError"}(o||(o={})),function(e){e.Login="/chat/member/login",e.Logout="Logout",e.GetLoginStatus="GetLoginStatus",e.GetLoginUserID="GetLoginUserID",e.GetSelfUserInfo="GetSelfUserInfo",e.SetSelfInfo="SetSelfInfo",e.GetUsersInfoWithCache="GetUsersInfoWithCache",e.SubscribeUsersStatus="SubscribeUsersStatus",e.UnsubscribeUsersStatus="UnsubscribeUsersStatus",e.GetSubscribeUsersStatus="GetSubscribeUsersStatus",e.SetAppBackgroundStatus="SetAppBackgroundStatus",e.NetworkStatusChanged="NetworkStatusChanged",e.SetGlobalRecvMessageOpt="SetGlobalRecvMessageOpt",e.AcceptFriendApplication="AcceptFriendApplication",e.AddBlack="AddBlack",e.AddFriend="AddFriend",e.CheckFriend="CheckFriend",e.DeleteFriend="DeleteFriend",e.GetBlackList="GetBlackList",e.GetFriendApplicationListAsApplicant="GetFriendApplicationListAsApplicant",e.GetFriendApplicationListAsRecipient="GetFriendApplicationListAsRecipient",e.GetFriendList="GetFriendList",e.GetFriendListPage="GetFriendListPage",e.GetSpecifiedFriendsInfo="GetSpecifiedFriendsInfo",e.RefuseFriendApplication="RefuseFriendApplication",e.RemoveBlack="RemoveBlack",e.SearchFriends="SearchFriends",e.SetFriendRemark="SetFriendRemark",e.CreateGroup="CreateGroup",e.JoinGroup="JoinGroup",e.InviteUserToGroup="InviteUserToGroup",e.GetJoinedGroupList="GetJoinedGroupList",e.GetJoinedGroupListPage="GetJoinedGroupListPage",e.SearchGroups="SearchGroups",e.GetSpecifiedGroupsInfo="GetSpecifiedGroupsInfo",e.SetGroupInfo="SetGroupInfo",e.GetGroupApplicationListAsRecipient="GetGroupApplicationListAsRecipient",e.GetGroupApplicationListAsApplicant="GetGroupApplicationListAsApplicant",e.AcceptGroupApplication="AcceptGroupApplication",e.RefuseGroupApplication="RefuseGroupApplication",e.GetGroupMemberList="GetGroupMemberList",e.GetSpecifiedGroupMembersInfo="GetSpecifiedGroupMembersInfo",e.SearchGroupMembers="SearchGroupMembers",e.SetGroupMemberInfo="SetGroupMemberInfo",e.GetGroupMemberOwnerAndAdmin="GetGroupMemberOwnerAndAdmin",e.GetGroupMemberListByJoinTimeFilter="GetGroupMemberListByJoinTimeFilter",e.KickGroupMember="KickGroupMember",e.ChangeGroupMemberMute="ChangeGroupMemberMute",e.ChangeGroupMute="ChangeGroupMute",e.TransferGroupOwner="TransferGroupOwner",e.DismissGroup="DismissGroup",e.QuitGroup="QuitGroup",e.GetAllConversationList="GetAllConversationList",e.GetConversationListSplit="GetConversationListSplit",e.GetOneConversation="GetOneConversation",e.GetMultipleConversation="GetMultipleConversation",e.GetConversationIDBySessionType="GetConversationIDBySessionType",e.GetTotalUnreadMsgCount="GetTotalUnreadMsgCount",e.MarkConversationMessageAsRead="MarkConversationMessageAsRead",e.SetConversationDraft="SetConversationDraft",e.PinConversation="PinConversation",e.SetConversationRecvMessageOpt="SetConversationRecvMessageOpt",e.SetConversationPrivateChat="SetConversationPrivateChat",e.SetConversationBurnDuration="SetConversationBurnDuration",e.ResetConversationGroupAtType="ResetConversationGroupAtType",e.HideConversation="HideConversation",e.HideAllConversation="HideAllConversation",e.ClearConversationAndDeleteAllMsg="ClearConversationAndDeleteAllMsg",e.DeleteConversationAndDeleteAllMsg="DeleteConversationAndDeleteAllMsg",e.CreateTextMessage="CreateTextMessage",e.CreateTextAtMessage="CreateTextAtMessage",e.CreateImageMessageByFile="CreateImageMessageByFile",e.CreateImageMessageByURL="CreateImageMessageByURL",e.CreateSoundMessageByFile="CreateSoundMessageByFile",e.CreateSoundMessageByURL="CreateSoundMessageByURL",e.CreateVideoMessageByFile="CreateVideoMessageByFile",e.CreateVideoMessageByURL="CreateVideoMessageByURL",e.CreateFileMessageByFile="CreateFileMessageByFile",e.CreateFileMessageByURL="CreateFileMessageByURL",e.CreateMergerMessage="CreateMergerMessage",e.CreateForwardMessage="CreateForwardMessage",e.CreateLocationMessage="CreateLocationMessage",e.CreateQuoteMessage="CreateQuoteMessage",e.CreateCardMessage="CreateCardMessage",e.CreateCustomMessage="CreateCustomMessage",e.CreateFaceMessage="CreateFaceMessage",e.SendMessage="SendMessage",e.SendMessageNotOss="SendMessageNotOss",e.UploadFile="UploadFile",e.TypingStatusUpdate="TypingStatusUpdate",e.RevokeMessage="RevokeMessage",e.DeleteMessage="DeleteMessage",e.DeleteMessageFromLocalStorage="DeleteMessageFromLocalStorage",e.DeleteAllMsgFromLocal="DeleteAllMsgFromLocal",e.DeleteAllMsgFromLocalAndSvr="DeleteAllMsgFromLocalAndSvr",e.SearchLocalMessages="SearchLocalMessages",e.GetAdvancedHistoryMessageList="GetAdvancedHistoryMessageList",e.GetAdvancedHistoryMessageListReverse="GetAdvancedHistoryMessageListReverse",e.FindMessageList="FindMessageList",e.InsertGroupMessageToLocalStorage="InsertGroupMessageToLocalStorage",e.InsertSingleMessageToLocalStorage="InsertSingleMessageToLocalStorage",e.SetMessageLocalEx="SetMessageLocalEx"}(r||(r={}));var s,a=/*#__PURE__*/function(){function e(){this.events=void 0,this.events={}}var t=e.prototype;return t.emit=function(e,t){return this.events[e]&&this.events[e].forEach(function(e){return e(t)}),this},t.on=function(e,t){return this.events[e]?this.events[e].push(t):this.events[e]=[t],this},t.off=function(e,t){if(e&&"function"==typeof t&&this.events[e]){var n=this.events[e];if(!n||0===n.length)return;var o=n.findIndex(function(e){return e===t});-1!==o&&n.splice(o,1)}return this},e}();!function(e){e.onReceiveMessages="onReceiveMessages",e.OnConnectFailed="OnConnectFailed",e.OnConnectSuccess="OnConnectSuccess",e.OnConnecting="OnConnecting",e.OnKickedOffline="OnKickedOffline",e.OnUserTokenInvalid="OnUserTokenInvalid",e.OnSelfInfoUpdated="OnSelfInfoUpdated",e.OnUserTokenExpired="OnUserTokenExpired",e.OnProgress="OnProgress",e.OnRecvNewMessage="OnRecvNewMessage",e.OnRecvNewMessages="OnRecvNewMessages",e.OnRecvMessageRevoked="OnRecvMessageRevoked",e.OnNewRecvMessageRevoked="OnNewRecvMessageRevoked",e.OnRecvC2CReadReceipt="OnRecvC2CReadReceipt",e.OnRecvGroupReadReceipt="OnRecvGroupReadReceipt",e.OnConversationChanged="OnConversationChanged",e.OnNewConversation="OnNewConversation",e.OnSyncServerFailed="OnSyncServerFailed",e.OnSyncServerFinish="OnSyncServerFinish",e.OnSyncServerStart="OnSyncServerStart",e.OnSyncServerProgress="OnSyncServerProgress",e.OnTotalUnreadMessageCountChanged="OnTotalUnreadMessageCountChanged",e.OnBlackAdded="OnBlackAdded",e.OnBlackDeleted="OnBlackDeleted",e.OnFriendApplicationAccepted="OnFriendApplicationAccepted",e.OnFriendApplicationAdded="OnFriendApplicationAdded",e.OnFriendApplicationDeleted="OnFriendApplicationDeleted",e.OnFriendApplicationRejected="OnFriendApplicationRejected",e.OnFriendInfoChanged="OnFriendInfoChanged",e.OnFriendAdded="OnFriendAdded",e.OnFriendDeleted="OnFriendDeleted",e.OnJoinedGroupAdded="OnJoinedGroupAdded",e.OnJoinedGroupDeleted="OnJoinedGroupDeleted",e.OnGroupDismissed="OnGroupDismissed",e.OnGroupMemberAdded="OnGroupMemberAdded",e.OnGroupMemberDeleted="OnGroupMemberDeleted",e.OnGroupApplicationAdded="OnGroupApplicationAdded",e.OnGroupApplicationDeleted="OnGroupApplicationDeleted",e.OnGroupInfoChanged="OnGroupInfoChanged",e.OnGroupMemberInfoChanged="OnGroupMemberInfoChanged",e.OnGroupApplicationAccepted="OnGroupApplicationAccepted",e.OnGroupApplicationRejected="OnGroupApplicationRejected",e.UploadComplete="UploadComplete",e.OnRecvCustomBusinessMessage="OnRecvCustomBusinessMessage",e.OnUserStatusChanged="OnUserStatusChanged",e.OnReceiveNewInvitation="OnReceiveNewInvitation",e.OnInviteeAccepted="OnInviteeAccepted",e.OnInviteeRejected="OnInviteeRejected",e.OnInvitationCancelled="OnInvitationCancelled",e.OnHangUp="OnHangUp",e.OnInvitationTimeout="OnInvitationTimeout",e.OnInviteeAcceptedByOtherDevice="OnInviteeAcceptedByOtherDevice",e.OnInviteeRejectedByOtherDevice="OnInviteeRejectedByOtherDevice",e.OnStreamChange="OnStreamChange",e.OnRoomParticipantConnected="OnRoomParticipantConnected",e.OnRoomParticipantDisconnected="OnRoomParticipantDisconnected",e.OnReceiveCustomSignal="OnReceiveCustomSignal"}(s||(s={}));var d,c,u,l,p,g,v,M,m,A,f,G,h,S,C,O,F,R,y,L="undefined"!=typeof uni,b="undefined"!=typeof window,U=/*#__PURE__*/function(e){function s(n){var s;return void 0===n&&(n=!0),(s=e.call(this)||this).username=void 0,s.token=void 0,s.appKey=void 0,s.apiAddr=void 0,s.sseManager=void 0,s.debug=void 0,s.sendRequest=function(e){return s.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(L?new Promise(function(t,n){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return n(e)}})}):function(){if(b)return console.log("isBrowser ",b),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:s.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json"},data:e.data})},s.defaultDataFormatter=function(e){return"object"==typeof e&&(e=JSON.stringify(e)),JSON.stringify([e])},s.createRequestFunction=function(e,t){return function(n){return s.sendRequest({data:n,url:e,method:t})}},s.createRequestFunctionWithoutParams=function(e,t){return function(){return s.sendRequest({data:void 0,method:t,username:s.username,url:e})}},s.handleMessage=function(e){try{e.data=JSON.parse(e.data)}catch(e){}},s.handleReconnectSuccess=function(){},s.login=function(e){try{return s.sseManager?Promise.resolve("login repeat"):(console.log("login params ",e),s.apiAddr=e.apiAddr,console.log("this.apiAddr ",s.apiAddr),Promise.resolve(s.sendRequest({data:e,url:r.Login,method:"POST"})).then(function(t){var n=t.code,o=t.data;if(0!=n)return console.log("code ",n),Promise.resolve("Login failed, Server error, error code is "+n);var r=s.apiAddr+"/chat/sse?username="+e.username+"&token="+e.token+"&appKey="+e.appKey+"&random="+o;s.username=e.username,s.token=e.token,s.appKey=e.appKey,s.sseManager=new i({url:r,onMessage:s.handleMessage,onReconnectSuccess:s.handleReconnectSuccess,authorizationToken:e.token});try{return s.sseManager.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},s.logout=s.createRequestFunctionWithoutParams(r.Logout,"DELETE"),s.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},s.uploadFile=function(e){var t=e.file;try{return Promise.resolve(s.internalUploadFile(t)).then(function(e){var t,n=e.url,r=e.error;return{data:{url:void 0===n?"":n},msg:null!=(t=null==r?void 0:r.message)?t:"",code:r?o.UnknownError:0}})}catch(e){return Promise.reject(e)}},s.createImageMessageByFile=function(e){try{return Promise.resolve(s.internalUploadFile(e.file)).then(function(n){var i=n.url,a=n.error;if(a)return Promise.reject({data:"",errMsg:a.message,errCode:o.UnknownError,event:r.CreateImageMessageByFile});e.sourcePicture.url=i,e.bigPicture.url=i,e.snapshotPicture.url=i+"?type=image&width="+e.snapshotPicture.width+"&height="+e.snapshotPicture.height;var d=t({},e);return delete d.file,s.createImageMessageByURL(d)})}catch(e){return Promise.reject(e)}},s.createVideoMessageByFile=function(e){try{return Promise.resolve(function(n,o){try{var r=Promise.resolve(Promise.all([s.internalUploadFile(e.snapshotFile),s.internalUploadFile(e.videoFile)])).then(function(n){var o=n[0].url;e.videoUrl=n[1].url,e.snapshotUrl=o+"?type=image&width="+e.snapshotWidth+"&height="+e.snapshotHeight;var r=t({},e);return delete r.videoFile,delete r.snapshotFile,s.createVideoMessageByURL(r)})}catch(e){return o(e)}return r&&r.then?r.then(void 0,o):r}(0,function(e){return Promise.reject({data:"",errMsg:e.message,errCode:o.UnknownError,event:r.CreateVideoMessageByFile})}))}catch(e){return Promise.reject(e)}},s.createSoundMessageByFile=function(e){try{return Promise.resolve(s.internalUploadFile(e.file)).then(function(n){var i=n.url,a=n.error;if(a)return Promise.reject({data:"",errMsg:a.message,errCode:o.UnknownError,event:r.CreateSoundMessageByFile});e.sourceUrl=i;var d=t({},e);return delete d.file,s.createSoundMessageByURL(d)})}catch(e){return Promise.reject(e)}},s.createFileMessageByFile=function(e){try{return Promise.resolve(s.internalUploadFile(e.file)).then(function(n){var i=n.url,a=n.error;if(a)return Promise.reject({data:"",errMsg:a.message,errCode:o.UnknownError,event:r.CreateFileMessageByFile});e.sourceUrl=i;var d=t({},e);return delete d.file,s.createFileMessageByURL(d)})}catch(e){return Promise.reject(e)}},s.getSelfUserInfo=void 0,s.setSelfInfo=void 0,s.getUsersInfoWithCache=void 0,s.subscribeUsersStatus=void 0,s.unsubscribeUsersStatus=void 0,s.getSubscribeUsersStatus=void 0,s.setAppBackgroundStatus=void 0,s.networkStatusChanged=void 0,s.setGlobalRecvMessageOpt=void 0,s.acceptFriendApplication=void 0,s.addBlack=void 0,s.addFriend=void 0,s.checkFriend=void 0,s.deleteFriend=void 0,s.getBlackList=void 0,s.getFriendApplicationListAsApplicant=void 0,s.getFriendApplicationListAsRecipient=void 0,s.getFriendList=void 0,s.getFriendListPage=void 0,s.getSpecifiedFriendsInfo=void 0,s.refuseFriendApplication=void 0,s.removeBlack=void 0,s.searchFriends=void 0,s.setFriendRemark=void 0,s.createGroup=void 0,s.joinGroup=void 0,s.inviteUserToGroup=void 0,s.getJoinedGroupList=void 0,s.getJoinedGroupListPage=void 0,s.searchGroups=void 0,s.getSpecifiedGroupsInfo=void 0,s.setGroupInfo=void 0,s.getGroupApplicationListAsRecipient=void 0,s.getGroupApplicationListAsApplicant=void 0,s.acceptGroupApplication=void 0,s.refuseGroupApplication=void 0,s.getGroupMemberList=void 0,s.getSpecifiedGroupMembersInfo=void 0,s.searchGroupMembers=void 0,s.setGroupMemberInfo=void 0,s.getGroupMemberOwnerAndAdmin=void 0,s.getGroupMemberListByJoinTimeFilter=void 0,s.kickGroupMember=void 0,s.changeGroupMemberMute=void 0,s.changeGroupMute=void 0,s.transferGroupOwner=void 0,s.dismissGroup=void 0,s.quitGroup=void 0,s.createTextMessage=void 0,s.createTextAtMessage=void 0,s.createImageMessageByURL=void 0,s.createSoundMessageByURL=void 0,s.createVideoMessageByURL=void 0,s.createFileMessageByURL=void 0,s.createMergerMessage=void 0,s.createForwardMessage=void 0,s.createLocationMessage=void 0,s.createQuoteMessage=void 0,s.createCardMessage=void 0,s.createCustomMessage=void 0,s.createFaceMessage=void 0,s.sendMessage=void 0,s.sendMessageNotOss=void 0,s.typingStatusUpdate=void 0,s.revokeMessage=void 0,s.deleteMessage=void 0,s.deleteMessageFromLocalStorage=void 0,s.deleteAllMsgFromLocal=void 0,s.deleteAllMsgFromLocalAndSvr=void 0,s.searchLocalMessages=void 0,s.getAdvancedHistoryMessageList=void 0,s.getAdvancedHistoryMessageListReverse=void 0,s.findMessageList=void 0,s.insertGroupMessageToLocalStorage=void 0,s.insertSingleMessageToLocalStorage=void 0,s.setMessageLocalEx=void 0,s.getAllConversationList=void 0,s.getConversationListSplit=void 0,s.getOneConversation=void 0,s.getMultipleConversation=void 0,s.getConversationIDBySessionType=void 0,s.getTotalUnreadMsgCount=void 0,s.markConversationMessageAsRead=void 0,s.setConversationDraft=void 0,s.pinConversation=void 0,s.setConversationRecvMessageOpt=void 0,s.setConversationPrivateChat=void 0,s.setConversationBurnDuration=void 0,s.resetConversationGroupAtType=void 0,s.hideConversation=void 0,s.hideAllConversation=void 0,s.clearConversationAndDeleteAllMsg=void 0,s.deleteConversationAndDeleteAllMsg=void 0,s.debug=n,Object.assign(s,{}),Object.assign(s,{}),Object.assign(s,{createGroup:s.createRequestFunction(r.CreateGroup,"POST")}),Object.assign(s,{createTextMessage:s.createRequestFunction(r.CreateTextMessage,"POST")}),Object.assign(s,{getAllConversationList:s.createRequestFunctionWithoutParams(r.GetAllConversationList,"GET")}),s}var a,d;return d=e,(a=s).prototype=Object.create(d.prototype),a.prototype.constructor=a,n(a,d),s.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},s}(a);!function(e){e[e.Nomal=0]="Nomal",e[e.NotReceive=1]="NotReceive",e[e.NotNotify=2]="NotNotify"}(d||(d={})),function(e){e[e.Allowed=0]="Allowed",e[e.NotAllowed=1]="NotAllowed"}(c||(c={})),function(e){e[e.Group=2]="Group",e[e.WorkingGroup=2]="WorkingGroup"}(u||(u={})),function(e){e[e.Invitation=2]="Invitation",e[e.Search=3]="Search",e[e.QrCode=4]="QrCode"}(l||(l={})),function(e){e[e.Nomal=20]="Nomal",e[e.Admin=60]="Admin",e[e.Owner=100]="Owner"}(p||(p={})),function(e){e[e.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",e[e.AllNeed=1]="AllNeed",e[e.AllNot=2]="AllNot"}(g||(g={})),function(e){e[e.Sending=1]="Sending",e[e.Succeed=2]="Succeed",e[e.Failed=3]="Failed"}(v||(v={})),function(e){e[e.iOS=1]="iOS",e[e.Android=2]="Android",e[e.Windows=3]="Windows",e[e.MacOSX=4]="MacOSX",e[e.Web=5]="Web",e[e.Linux=7]="Linux",e[e.AndroidPad=8]="AndroidPad",e[e.iPad=9]="iPad"}(M||(M={})),function(e){e[e.Debug=5]="Debug",e[e.Info=4]="Info",e[e.Warn=3]="Warn",e[e.Error=2]="Error",e[e.Fatal=1]="Fatal",e[e.Panic=0]="Panic"}(m||(m={})),function(e){e[e.Unprocessed=0]="Unprocessed",e[e.Agree=1]="Agree",e[e.Reject=-1]="Reject"}(A||(A={})),function(e){e[e.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",e[e.TextMessage=101]="TextMessage",e[e.PictureMessage=102]="PictureMessage",e[e.VoiceMessage=103]="VoiceMessage",e[e.VideoMessage=104]="VideoMessage",e[e.FileMessage=105]="FileMessage",e[e.AtTextMessage=106]="AtTextMessage",e[e.MergeMessage=107]="MergeMessage",e[e.CardMessage=108]="CardMessage",e[e.LocationMessage=109]="LocationMessage",e[e.CustomMessage=110]="CustomMessage",e[e.TypingMessage=113]="TypingMessage",e[e.QuoteMessage=114]="QuoteMessage",e[e.FaceMessage=115]="FaceMessage",e[e.FriendAdded=1201]="FriendAdded",e[e.OANotification=1400]="OANotification",e[e.GroupCreated=1501]="GroupCreated",e[e.MemberQuit=1504]="MemberQuit",e[e.GroupOwnerTransferred=1507]="GroupOwnerTransferred",e[e.MemberKicked=1508]="MemberKicked",e[e.MemberInvited=1509]="MemberInvited",e[e.MemberEnter=1510]="MemberEnter",e[e.GroupDismissed=1511]="GroupDismissed",e[e.GroupMemberMuted=1512]="GroupMemberMuted",e[e.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",e[e.GroupMuted=1514]="GroupMuted",e[e.GroupCancelMuted=1515]="GroupCancelMuted",e[e.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",e[e.GroupNameUpdated=1520]="GroupNameUpdated",e[e.BurnMessageChange=1701]="BurnMessageChange",e[e.RevokeMessage=2101]="RevokeMessage"}(f||(f={})),function(e){e[e.Single=1]="Single",e[e.Group=3]="Group",e[e.WorkingGroup=3]="WorkingGroup",e[e.Notification=4]="Notification"}(G||(G={})),function(e){e[e.Nomal=0]="Nomal",e[e.Baned=1]="Baned",e[e.Dismissed=2]="Dismissed",e[e.Muted=3]="Muted"}(h||(h={})),function(e){e[e.AtNormal=0]="AtNormal",e[e.AtMe=1]="AtMe",e[e.AtAll=2]="AtAll",e[e.AtAllAtMe=3]="AtAllAtMe",e[e.AtGroupNotice=4]="AtGroupNotice"}(S||(S={})),function(e){e[e.All=0]="All",e[e.Owner=1]="Owner",e[e.Admin=2]="Admin",e[e.Nomal=3]="Nomal",e[e.AdminAndNomal=4]="AdminAndNomal",e[e.AdminAndOwner=5]="AdminAndOwner"}(C||(C={})),function(e){e[e.isBlack=0]="isBlack",e[e.isFriend=1]="isFriend"}(O||(O={})),function(e){e[e.Logout=1]="Logout",e[e.Logging=2]="Logging",e[e.Logged=3]="Logged"}(F||(F={})),function(e){e[e.Online=1]="Online",e[e.Offline=0]="Offline"}(R||(R={})),function(e){e[e.Readed=0]="Readed",e[e.UnRead=1]="UnRead"}(y||(y={}));export{c as AllowType,A as ApplicationHandleResult,s as CbEvents,o as ErrorCode,S as GroupAtType,l as GroupJoinSource,C as GroupMemberFilter,p as GroupMemberRole,y as GroupMessageReaderFilter,h as GroupStatus,u as GroupType,g as GroupVerificationType,m as LogLevel,F as LoginStatus,d as MessageReceiveOptType,v as MessageStatus,f as MessageType,R as OnlineState,M as Platform,O as Relationship,r as RequestApi,U as SIMSDK,G as SessionType};
1
+ import{EventSourcePolyfill as e}from"event-source-polyfill";function t(){return t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},t.apply(null,arguments)}function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function o(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var r,i,s=/*#__PURE__*/function(){function t(e){this.url=void 0,this.token=void 0,this.eventSource=null,this.reconnectAttempts=0,this.maxReconnectAttempts=5,this.reconnectTimeout=5e3,this.reconnectTimer=null,this.handlers=new Map,this.connected=!1,this.onMessageCallback=void 0,this.onReconnectSuccessCallback=void 0,this.url=e.url,this.token=e.token,this.reconnectTimeout=e.retryInterval||5e3,this.maxReconnectAttempts=e.maxRetries||5,this.onMessageCallback=e.onMessage,this.onReconnectSuccessCallback=e.onReconnectSuccess}var n=t.prototype;return n.removeAllEventListeners=function(){var e=this;this.eventSource&&(this.eventSource.removeEventListener("open",this.onOpen),this.handlers.forEach(function(t,n){var o;null==(o=e.eventSource)||o.removeEventListener(n,t)}),this.eventSource.removeEventListener("error",this.onError))},n.subscribe=function(e,t){this.handlers.set(e,t),this.connect()},n.connect=function(){var t=this;return this.connected&&this.eventSource?Promise.reject(new Error("SSE is already connected!")):new Promise(function(n,o){try{t.eventSource=new e(t.url,{heartbeatTimeout:36e5,withCredentials:!1,headers:{Authorization:"Bearer "+t.token}}),t.eventSource.addEventListener("open",function(e){t.onOpen(e),n("SSE connect successful!")}),t.eventSource.addEventListener("message",function(e){t.handleMessage(e.data)}),t.handlers.forEach(function(e,n){var o;null==(o=t.eventSource)||o.addEventListener(n,t.onMessage(e))}),t.eventSource.addEventListener("error",function(e){t.onError(e),t.connected||o("SSE connect error.")})}catch(e){console.error("Failed to create EventSource:",e),t.handleReconnect(),o(e)}})},n.onOpen=function(e){console.log("SSE connection established"),this.connected=!0,this.reconnectAttempts>0&&this.onReconnectSuccessCallback&&this.onReconnectSuccessCallback(),this.reconnectAttempts=0,this.reconnectTimeout=5e3},n.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessageCallback&&this.onMessageCallback(t)}catch(e){console.error("数据解析错误:",e)}},n.onMessage=function(e){return function(t){try{var n=JSON.parse(t.data);console.log("Received SSE message:",n),"function"==typeof e&&e(n)}catch(e){console.error("Failed to parse SSE message:",e)}}},n.onError=function(e){console.error("SSE connection error:",e),this.connected=!1,401===e.status||e.statusText&&e.statusText.includes("Unauthorized")?this.cleanup():this.handleReconnect()},n.handleReconnect=function(){var e=this;if(null===this.reconnectTimer){if(this.reconnectAttempts>=this.maxReconnectAttempts)return console.error("Max reconnection attempts reached"),void this.destroySse();console.log("Attempting to reconnect in "+this.reconnectTimeout/1e3+" seconds..."),this.cleanup(),this.reconnectTimer=window.setTimeout(function(){e.reconnectAttempts++,e.reconnectTimeout=Math.min(2*e.reconnectTimeout,3e4),e.reconnectTimer=null,e.connect()},this.reconnectTimeout)}},n.cleanup=function(){this.eventSource&&(this.removeAllEventListeners(),this.eventSource.close(),this.eventSource=null),this.connected=!1},n.unsubscribe=function(){this.cleanup(),this.handlers.clear(),null!==this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)},n.destroySse=function(){this.unsubscribe(),this.reconnectAttempts=this.maxReconnectAttempts},n.close=function(){this.destroySse(),console.log("SSE 连接已关闭")},n.isConnected=function(){return this.connected},t}();!function(e){e[e.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",e[e.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",e[e.UnknownError=10005]="UnknownError",e[e.LoginRepeatError=10102]="LoginRepeatError"}(r||(r={})),function(e){e.Login="/chat/member/login",e.Logout="Logout",e.CreateGroup="CreateGroup",e.GetGroupInfo="/chat/group/info",e.GetAllConversationList="/chat/group/list",e.CreateTextMessage="/chat/message/push",e.GetHistoryMessageList="/chat/message/pull"}(i||(i={}));var a,c,u,d,l,v,g,h,p,m,f,M,S,A,E,y,T,O,b=/*#__PURE__*/function(){function e(e){this.simSDK=void 0,this.simSDK=e}var t=e.prototype;return t.createGroup=function(e){try{return Promise.resolve(this.simSDK.sendRequest({data:e,url:i.CreateGroup,method:"POST"}))}catch(e){return Promise.reject(e)}},t.getGroupInfo=function(e){try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:e},url:i.GetGroupInfo,method:"GET"}))}catch(e){return Promise.reject(e)}},e}();!function(e){e[e.Nomal=0]="Nomal",e[e.NotReceive=1]="NotReceive",e[e.NotNotify=2]="NotNotify"}(a||(a={})),function(e){e[e.Allowed=0]="Allowed",e[e.NotAllowed=1]="NotAllowed"}(c||(c={})),function(e){e[e.Group=2]="Group",e[e.WorkingGroup=2]="WorkingGroup"}(u||(u={})),function(e){e[e.Invitation=2]="Invitation",e[e.Search=3]="Search",e[e.QrCode=4]="QrCode"}(d||(d={})),function(e){e[e.Nomal=20]="Nomal",e[e.Admin=60]="Admin",e[e.Owner=100]="Owner"}(l||(l={})),function(e){e[e.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",e[e.AllNeed=1]="AllNeed",e[e.AllNot=2]="AllNot"}(v||(v={})),function(e){e[e.iOS=1]="iOS",e[e.Android=2]="Android",e[e.Windows=3]="Windows",e[e.MacOSX=4]="MacOSX",e[e.Web=5]="Web",e[e.Linux=7]="Linux",e[e.AndroidPad=8]="AndroidPad",e[e.iPad=9]="iPad"}(g||(g={})),function(e){e[e.Debug=5]="Debug",e[e.Info=4]="Info",e[e.Warn=3]="Warn",e[e.Error=2]="Error",e[e.Fatal=1]="Fatal",e[e.Panic=0]="Panic"}(h||(h={})),function(e){e[e.Unprocessed=0]="Unprocessed",e[e.Agree=1]="Agree",e[e.Reject=-1]="Reject"}(p||(p={})),function(e){e[e.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",e[e.TextMessage=101]="TextMessage",e[e.PictureMessage=102]="PictureMessage",e[e.VoiceMessage=103]="VoiceMessage",e[e.VideoMessage=104]="VideoMessage",e[e.FileMessage=105]="FileMessage",e[e.AtTextMessage=106]="AtTextMessage",e[e.MergeMessage=107]="MergeMessage",e[e.CardMessage=108]="CardMessage",e[e.LocationMessage=109]="LocationMessage",e[e.CustomMessage=110]="CustomMessage",e[e.TypingMessage=113]="TypingMessage",e[e.QuoteMessage=114]="QuoteMessage",e[e.FaceMessage=115]="FaceMessage",e[e.FriendAdded=1201]="FriendAdded",e[e.OANotification=1400]="OANotification",e[e.GroupCreated=1501]="GroupCreated",e[e.MemberQuit=1504]="MemberQuit",e[e.GroupOwnerTransferred=1507]="GroupOwnerTransferred",e[e.MemberKicked=1508]="MemberKicked",e[e.MemberInvited=1509]="MemberInvited",e[e.MemberEnter=1510]="MemberEnter",e[e.GroupDismissed=1511]="GroupDismissed",e[e.GroupMemberMuted=1512]="GroupMemberMuted",e[e.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",e[e.GroupMuted=1514]="GroupMuted",e[e.GroupCancelMuted=1515]="GroupCancelMuted",e[e.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",e[e.GroupNameUpdated=1520]="GroupNameUpdated",e[e.BurnMessageChange=1701]="BurnMessageChange",e[e.RevokeMessage=2101]="RevokeMessage"}(m||(m={})),function(e){e[e.Single=1]="Single",e[e.Group=3]="Group",e[e.WorkingGroup=3]="WorkingGroup",e[e.Notification=4]="Notification"}(f||(f={})),function(e){e[e.Nomal=0]="Nomal",e[e.Baned=1]="Baned",e[e.Dismissed=2]="Dismissed",e[e.Muted=3]="Muted"}(M||(M={})),function(e){e[e.AtNormal=0]="AtNormal",e[e.AtMe=1]="AtMe",e[e.AtAll=2]="AtAll",e[e.AtAllAtMe=3]="AtAllAtMe",e[e.AtGroupNotice=4]="AtGroupNotice"}(S||(S={})),function(e){e[e.All=0]="All",e[e.Owner=1]="Owner",e[e.Admin=2]="Admin",e[e.Nomal=3]="Nomal",e[e.AdminAndNomal=4]="AdminAndNomal",e[e.AdminAndOwner=5]="AdminAndOwner"}(A||(A={})),function(e){e[e.isBlack=0]="isBlack",e[e.isFriend=1]="isFriend"}(E||(E={})),function(e){e[e.Logout=1]="Logout",e[e.Logging=2]="Logging",e[e.Logged=3]="Logged"}(y||(y={})),function(e){e[e.Online=1]="Online",e[e.Offline=0]="Offline"}(T||(T={})),function(e){e[e.Readed=0]="Readed",e[e.UnRead=1]="UnRead"}(O||(O={}));var C,N,G,P={ONE_ON_ONE:0,GROUP_CHAT:1,CUSTOMER_SERVICE:2};!function(e){e[e.TEXT=0]="TEXT",e[e.IMAGE=1]="IMAGE",e[e.FILE=2]="FILE",e[e.VIDEO=3]="VIDEO",e[e.LINK=4]="LINK",e[e.GIF=5]="GIF"}(C||(C={})),function(e){e[e.EVENT_PONG_CONN=0]="EVENT_PONG_CONN",e[e.EVENT_PONG_RE_CONN=1]="EVENT_PONG_RE_CONN",e[e.EVENT_PONG_IDLE=2]="EVENT_PONG_IDLE",e[e.EVENT_MESSAGE_PUSH=3]="EVENT_MESSAGE_PUSH"}(N||(N={})),function(e){e[e.Sending=1]="Sending",e[e.Succeed=2]="Succeed",e[e.Failed=3]="Failed"}(G||(G={}));var R,k={NORMAL:0,EDITED:1,DELETED:2},L=/*#__PURE__*/function(){function e(e){this.simSDK=void 0,this.simSDK=e}var n=e.prototype;return n.sendMessage=function(e,t){try{var n=this;return Promise.resolve(function(o,r){try{var i=Promise.resolve(n.simSDK.sendRequest({data:e,url:t,method:"POST"}))}catch(e){return r(e)}return i&&i.then?i.then(void 0,r):i}(0,function(e){throw console.error("Failed to send message",e),e}))}catch(e){return Promise.reject(e)}},n.createMessage=function(e,n,o,r,i){var s;void 0===o&&(o={});var a=t({},o,((s={msgType:e})[r]=i,s.status=0,s));return this.sendMessage(a,n)},n.createTextMessage=function(e,t){void 0===t&&(t={});try{return Promise.resolve(this.createMessage(C.TEXT,i.CreateTextMessage,t,"text",e))}catch(e){return Promise.reject(e)}},n.createImageMessage=function(e,t){void 0===t&&(t={});try{return Promise.resolve(this.createMessage(C.IMAGE,i.CreateTextMessage,t,"snapshot",e))}catch(e){return Promise.reject(e)}},n.getHistoryMessageList=function(e){var t=e.groupId,n=e.lastId,o=e.size,r=void 0===o?20:o;try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:t,lastId:n,size:r},url:i.GetHistoryMessageList,method:"POST"}))}catch(e){return Promise.reject(e)}},e}();!function(e){e.onReceiveMessage="onReceiveMessage",e.onReceiveMessages="onReceiveMessages",e.OnKickedOffline="OnKickedOffline",e.OnUserTokenInvalid="OnUserTokenInvalid",e.OnUserTokenExpired="OnUserTokenExpired"}(R||(R={}));var F="undefined"!=typeof uni,I="undefined"!=typeof window,w=/*#__PURE__*/function(e){function t(t){var n;return void 0===t&&(t=!0),(n=e.call(this)||this).username=void 0,n.token=void 0,n.appKey=void 0,n.apiAddr=void 0,n.sseClient=void 0,n.debug=void 0,n.messageService=void 0,n.groupService=void 0,n.sendRequest=function(e){return n.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(F?new Promise(function(t,n){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return n(e)}})}):function(){if(I)return console.log("isBrowser ",I),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:n.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json",Authorization:"Bearer "+n.token},data:e.data})},n.createRequestFunction=function(e,t){return function(o){return n.sendRequest({data:o,url:e,method:t})}},n.createRequestFunctionWithoutParams=function(e,t){return function(){return n.sendRequest({data:void 0,method:t,username:n.username,url:e})}},n.handleMessage=function(e){console.log("handleMessage response",e)},n.handleReconnectSuccess=function(){},n.login=function(e){try{return n.sseClient?Promise.resolve("login repeat"):(console.log("login params ",e),n.apiAddr=e.apiAddr,n.token=e.token,console.log("this.apiAddr ",n.apiAddr),Promise.resolve(n.sendRequest({data:e,url:i.Login,method:"POST"})).then(function(t){var o=t.code,r=t.data;if(0!=o)return console.log("code ",o),Promise.resolve("Login failed, Server error, error code is "+o);var i=n.apiAddr+"/chat/sse/conn?username="+e.username+"&token="+e.token+"&appKey="+e.appKey+"&random="+r;n.username=e.username,n.token=e.token,n.appKey=e.appKey,n.sseClient=new s({url:i,onMessage:n.handleMessage,onReconnectSuccess:n.handleReconnectSuccess,token:e.token});try{return n.sseClient.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},n.logout=n.createRequestFunctionWithoutParams(i.Logout,"DELETE"),n.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},n.uploadFile=function(e){var t=e.file;try{return Promise.resolve(n.internalUploadFile(t)).then(function(e){var t,n=e.url,o=e.error;return{data:{url:void 0===n?"":n},msg:null!=(t=null==o?void 0:o.message)?t:"",code:o?r.UnknownError:0}})}catch(e){return Promise.reject(e)}},n.getSelfUserInfo=void 0,n.setSelfInfo=void 0,n.getUsersInfoWithCache=void 0,n.subscribeUsersStatus=void 0,n.unsubscribeUsersStatus=void 0,n.getSubscribeUsersStatus=void 0,n.setAppBackgroundStatus=void 0,n.networkStatusChanged=void 0,n.setGlobalRecvMessageOpt=void 0,n.acceptFriendApplication=void 0,n.addBlack=void 0,n.addFriend=void 0,n.checkFriend=void 0,n.deleteFriend=void 0,n.getBlackList=void 0,n.getFriendApplicationListAsApplicant=void 0,n.getFriendApplicationListAsRecipient=void 0,n.getFriendList=void 0,n.getFriendListPage=void 0,n.getSpecifiedFriendsInfo=void 0,n.refuseFriendApplication=void 0,n.removeBlack=void 0,n.searchFriends=void 0,n.setFriendRemark=void 0,n.getAllConversationList=void 0,n.getConversationListSplit=void 0,n.getOneConversation=void 0,n.getMultipleConversation=void 0,n.getConversationIDBySessionType=void 0,n.getTotalUnreadMsgCount=void 0,n.markConversationMessageAsRead=void 0,n.setConversationDraft=void 0,n.pinConversation=void 0,n.setConversationRecvMessageOpt=void 0,n.setConversationPrivateChat=void 0,n.setConversationBurnDuration=void 0,n.resetConversationGroupAtType=void 0,n.hideConversation=void 0,n.hideAllConversation=void 0,n.clearConversationAndDeleteAllMsg=void 0,n.deleteConversationAndDeleteAllMsg=void 0,n.debug=t,Object.assign(n,{}),Object.assign(n,{}),Object.assign(n,{getAllConversationList:n.createRequestFunctionWithoutParams(i.GetAllConversationList,"GET")}),n.messageService=new L(n),n.groupService=new b(n),n}var a,c,u,d;return c=e,(a=t).prototype=Object.create(c.prototype),a.prototype.constructor=a,n(a,c),t.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},u=t,(d=[{key:"createGroup",get:function(){var e=this;return function(t){return e.groupService.createGroup(t)}}},{key:"getGroupInfo",get:function(){var e=this;return function(t){return e.groupService.getGroupInfo(t)}}},{key:"createTextMessage",get:function(){return this.messageService.createTextMessage.bind(this.messageService)}},{key:"getHistoryMessageList",get:function(){var e=this;return console.log("sdk getHistoryMessageList"),function(t){return e.messageService.getHistoryMessageList(t)}}},{key:"uuid",get:function(){return(36*Math.random()).toString(36).slice(2)+(new Date).getTime().toString()}}])&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,o(r.key),r)}}(u.prototype,d),Object.defineProperty(u,"prototype",{writable:!1}),u}(/*#__PURE__*/function(){function e(){var e;this.events=((e={})[R.onReceiveMessage]=[],e[R.onReceiveMessages]=[],e)}var t=e.prototype;return t.emit=function(e,t){var n=this.events[e];return n&&n.forEach(function(e){return e(t)}),this},t.on=function(e,t){var n;return this.events[e]||(this.events[e]=[]),null==(n=this.events[e])||n.push(t),this},t.off=function(e,t){var n=this.events[e];if(n){var o=n.indexOf(t);o>-1&&(n.splice(o,1),0===n.length&&delete this.events[e])}return this},e}());export{c as AllowType,p as ApplicationHandleResult,R as CbEvents,r as ErrorCode,P as GROUP_TYPE,S as GroupAtType,d as GroupJoinSource,A as GroupMemberFilter,l as GroupMemberRole,O as GroupMessageReaderFilter,M as GroupStatus,u as GroupType,v as GroupVerificationType,h as LogLevel,y as LoginStatus,C as MSG_TYPE,a as MessageReceiveOptType,G as MessageSendStatus,k as MessageStatus,m as MessageType,T as OnlineState,g as Platform,E as Relationship,i as RequestApi,w as SIMSDK,N as SSE_RESPONSE_TYPE,f as SessionType};
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=/*#__PURE__*/e(require("eventsource"));function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},o.apply(null,arguments)}function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}var n,s,i=/*#__PURE__*/function(){function e(e){var o=this;this.url=void 0,this.authorizationToken=void 0,this.retryInterval=void 0,this.maxRetries=void 0,this.reconnectAttempts=void 0,this.eventSource=void 0,this.connected=void 0,this.onMessage=void 0,this.onReconnectSuccess=void 0,this.connect=function(){return o.connected?Promise.reject(new Error("sse is connected!")):new Promise(function(e,r){o.eventSource=new t.default(o.url,{headers:{Authorization:"Bearer "+o.authorizationToken}}),o.eventSource&&(o.eventSource.onopen=function(){o.connected=!0,o.reconnectAttempts&&o.onReconnectSuccess(),o.reconnectAttempts=0,e("sse connect successful!")},o.eventSource.onmessage=function(e){o.handleMessage(e.data)},o.eventSource.onerror=function(){o.connected=!1,console.error("SSE 连接出错,准备重试..."),o.reconnect(),r("sse connect err.")})})},this.url=e.url,this.authorizationToken=e.authorizationToken,this.retryInterval=e.retryInterval||5e3,this.maxRetries=e.maxRetries||5,this.reconnectAttempts=0,this.eventSource=null,this.connected=!1,this.onMessage=e.onMessage,this.onReconnectSuccess=e.onReconnectSuccess}var o=e.prototype;return o.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessage(t)}catch(e){console.error("数据解析错误:",e)}},o.reconnect=function(){var e=this;if(this.eventSource&&this.eventSource.close(),this.reconnectAttempts>=this.maxRetries)console.error("已达到最大重试次数,停止重试");else{var t=this.retryInterval*Math.pow(2,this.reconnectAttempts);setTimeout(function(){e.reconnectAttempts++,console.log("第 "+e.reconnectAttempts+" 次重试连接 SSE...(延迟 "+t+"ms)"),e.connect()},t)}},o.close=function(){this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.connected=!1,console.log("SSE 连接已关闭")},o.isConnected=function(){return this.connected},e}();exports.ErrorCode=void 0,(n=exports.ErrorCode||(exports.ErrorCode={}))[n.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",n[n.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",n[n.UnknownError=10005]="UnknownError",n[n.LoginRepeatError=10102]="LoginRepeatError",exports.RequestApi=void 0,(s=exports.RequestApi||(exports.RequestApi={})).Login="/chat/member/login",s.Logout="Logout",s.GetLoginStatus="GetLoginStatus",s.GetLoginUserID="GetLoginUserID",s.GetSelfUserInfo="GetSelfUserInfo",s.SetSelfInfo="SetSelfInfo",s.GetUsersInfoWithCache="GetUsersInfoWithCache",s.SubscribeUsersStatus="SubscribeUsersStatus",s.UnsubscribeUsersStatus="UnsubscribeUsersStatus",s.GetSubscribeUsersStatus="GetSubscribeUsersStatus",s.SetAppBackgroundStatus="SetAppBackgroundStatus",s.NetworkStatusChanged="NetworkStatusChanged",s.SetGlobalRecvMessageOpt="SetGlobalRecvMessageOpt",s.AcceptFriendApplication="AcceptFriendApplication",s.AddBlack="AddBlack",s.AddFriend="AddFriend",s.CheckFriend="CheckFriend",s.DeleteFriend="DeleteFriend",s.GetBlackList="GetBlackList",s.GetFriendApplicationListAsApplicant="GetFriendApplicationListAsApplicant",s.GetFriendApplicationListAsRecipient="GetFriendApplicationListAsRecipient",s.GetFriendList="GetFriendList",s.GetFriendListPage="GetFriendListPage",s.GetSpecifiedFriendsInfo="GetSpecifiedFriendsInfo",s.RefuseFriendApplication="RefuseFriendApplication",s.RemoveBlack="RemoveBlack",s.SearchFriends="SearchFriends",s.SetFriendRemark="SetFriendRemark",s.CreateGroup="CreateGroup",s.JoinGroup="JoinGroup",s.InviteUserToGroup="InviteUserToGroup",s.GetJoinedGroupList="GetJoinedGroupList",s.GetJoinedGroupListPage="GetJoinedGroupListPage",s.SearchGroups="SearchGroups",s.GetSpecifiedGroupsInfo="GetSpecifiedGroupsInfo",s.SetGroupInfo="SetGroupInfo",s.GetGroupApplicationListAsRecipient="GetGroupApplicationListAsRecipient",s.GetGroupApplicationListAsApplicant="GetGroupApplicationListAsApplicant",s.AcceptGroupApplication="AcceptGroupApplication",s.RefuseGroupApplication="RefuseGroupApplication",s.GetGroupMemberList="GetGroupMemberList",s.GetSpecifiedGroupMembersInfo="GetSpecifiedGroupMembersInfo",s.SearchGroupMembers="SearchGroupMembers",s.SetGroupMemberInfo="SetGroupMemberInfo",s.GetGroupMemberOwnerAndAdmin="GetGroupMemberOwnerAndAdmin",s.GetGroupMemberListByJoinTimeFilter="GetGroupMemberListByJoinTimeFilter",s.KickGroupMember="KickGroupMember",s.ChangeGroupMemberMute="ChangeGroupMemberMute",s.ChangeGroupMute="ChangeGroupMute",s.TransferGroupOwner="TransferGroupOwner",s.DismissGroup="DismissGroup",s.QuitGroup="QuitGroup",s.GetAllConversationList="GetAllConversationList",s.GetConversationListSplit="GetConversationListSplit",s.GetOneConversation="GetOneConversation",s.GetMultipleConversation="GetMultipleConversation",s.GetConversationIDBySessionType="GetConversationIDBySessionType",s.GetTotalUnreadMsgCount="GetTotalUnreadMsgCount",s.MarkConversationMessageAsRead="MarkConversationMessageAsRead",s.SetConversationDraft="SetConversationDraft",s.PinConversation="PinConversation",s.SetConversationRecvMessageOpt="SetConversationRecvMessageOpt",s.SetConversationPrivateChat="SetConversationPrivateChat",s.SetConversationBurnDuration="SetConversationBurnDuration",s.ResetConversationGroupAtType="ResetConversationGroupAtType",s.HideConversation="HideConversation",s.HideAllConversation="HideAllConversation",s.ClearConversationAndDeleteAllMsg="ClearConversationAndDeleteAllMsg",s.DeleteConversationAndDeleteAllMsg="DeleteConversationAndDeleteAllMsg",s.CreateTextMessage="CreateTextMessage",s.CreateTextAtMessage="CreateTextAtMessage",s.CreateImageMessageByFile="CreateImageMessageByFile",s.CreateImageMessageByURL="CreateImageMessageByURL",s.CreateSoundMessageByFile="CreateSoundMessageByFile",s.CreateSoundMessageByURL="CreateSoundMessageByURL",s.CreateVideoMessageByFile="CreateVideoMessageByFile",s.CreateVideoMessageByURL="CreateVideoMessageByURL",s.CreateFileMessageByFile="CreateFileMessageByFile",s.CreateFileMessageByURL="CreateFileMessageByURL",s.CreateMergerMessage="CreateMergerMessage",s.CreateForwardMessage="CreateForwardMessage",s.CreateLocationMessage="CreateLocationMessage",s.CreateQuoteMessage="CreateQuoteMessage",s.CreateCardMessage="CreateCardMessage",s.CreateCustomMessage="CreateCustomMessage",s.CreateFaceMessage="CreateFaceMessage",s.SendMessage="SendMessage",s.SendMessageNotOss="SendMessageNotOss",s.UploadFile="UploadFile",s.TypingStatusUpdate="TypingStatusUpdate",s.RevokeMessage="RevokeMessage",s.DeleteMessage="DeleteMessage",s.DeleteMessageFromLocalStorage="DeleteMessageFromLocalStorage",s.DeleteAllMsgFromLocal="DeleteAllMsgFromLocal",s.DeleteAllMsgFromLocalAndSvr="DeleteAllMsgFromLocalAndSvr",s.SearchLocalMessages="SearchLocalMessages",s.GetAdvancedHistoryMessageList="GetAdvancedHistoryMessageList",s.GetAdvancedHistoryMessageListReverse="GetAdvancedHistoryMessageListReverse",s.FindMessageList="FindMessageList",s.InsertGroupMessageToLocalStorage="InsertGroupMessageToLocalStorage",s.InsertSingleMessageToLocalStorage="InsertSingleMessageToLocalStorage",s.SetMessageLocalEx="SetMessageLocalEx";var a,d=/*#__PURE__*/function(){function e(){this.events=void 0,this.events={}}var t=e.prototype;return t.emit=function(e,t){return this.events[e]&&this.events[e].forEach(function(e){return e(t)}),this},t.on=function(e,t){return this.events[e]?this.events[e].push(t):this.events[e]=[t],this},t.off=function(e,t){if(e&&"function"==typeof t&&this.events[e]){var o=this.events[e];if(!o||0===o.length)return;var r=o.findIndex(function(e){return e===t});-1!==r&&o.splice(r,1)}return this},e}();exports.CbEvents=void 0,(a=exports.CbEvents||(exports.CbEvents={})).onReceiveMessages="onReceiveMessages",a.OnConnectFailed="OnConnectFailed",a.OnConnectSuccess="OnConnectSuccess",a.OnConnecting="OnConnecting",a.OnKickedOffline="OnKickedOffline",a.OnUserTokenInvalid="OnUserTokenInvalid",a.OnSelfInfoUpdated="OnSelfInfoUpdated",a.OnUserTokenExpired="OnUserTokenExpired",a.OnProgress="OnProgress",a.OnRecvNewMessage="OnRecvNewMessage",a.OnRecvNewMessages="OnRecvNewMessages",a.OnRecvMessageRevoked="OnRecvMessageRevoked",a.OnNewRecvMessageRevoked="OnNewRecvMessageRevoked",a.OnRecvC2CReadReceipt="OnRecvC2CReadReceipt",a.OnRecvGroupReadReceipt="OnRecvGroupReadReceipt",a.OnConversationChanged="OnConversationChanged",a.OnNewConversation="OnNewConversation",a.OnSyncServerFailed="OnSyncServerFailed",a.OnSyncServerFinish="OnSyncServerFinish",a.OnSyncServerStart="OnSyncServerStart",a.OnSyncServerProgress="OnSyncServerProgress",a.OnTotalUnreadMessageCountChanged="OnTotalUnreadMessageCountChanged",a.OnBlackAdded="OnBlackAdded",a.OnBlackDeleted="OnBlackDeleted",a.OnFriendApplicationAccepted="OnFriendApplicationAccepted",a.OnFriendApplicationAdded="OnFriendApplicationAdded",a.OnFriendApplicationDeleted="OnFriendApplicationDeleted",a.OnFriendApplicationRejected="OnFriendApplicationRejected",a.OnFriendInfoChanged="OnFriendInfoChanged",a.OnFriendAdded="OnFriendAdded",a.OnFriendDeleted="OnFriendDeleted",a.OnJoinedGroupAdded="OnJoinedGroupAdded",a.OnJoinedGroupDeleted="OnJoinedGroupDeleted",a.OnGroupDismissed="OnGroupDismissed",a.OnGroupMemberAdded="OnGroupMemberAdded",a.OnGroupMemberDeleted="OnGroupMemberDeleted",a.OnGroupApplicationAdded="OnGroupApplicationAdded",a.OnGroupApplicationDeleted="OnGroupApplicationDeleted",a.OnGroupInfoChanged="OnGroupInfoChanged",a.OnGroupMemberInfoChanged="OnGroupMemberInfoChanged",a.OnGroupApplicationAccepted="OnGroupApplicationAccepted",a.OnGroupApplicationRejected="OnGroupApplicationRejected",a.UploadComplete="UploadComplete",a.OnRecvCustomBusinessMessage="OnRecvCustomBusinessMessage",a.OnUserStatusChanged="OnUserStatusChanged",a.OnReceiveNewInvitation="OnReceiveNewInvitation",a.OnInviteeAccepted="OnInviteeAccepted",a.OnInviteeRejected="OnInviteeRejected",a.OnInvitationCancelled="OnInvitationCancelled",a.OnHangUp="OnHangUp",a.OnInvitationTimeout="OnInvitationTimeout",a.OnInviteeAcceptedByOtherDevice="OnInviteeAcceptedByOtherDevice",a.OnInviteeRejectedByOtherDevice="OnInviteeRejectedByOtherDevice",a.OnStreamChange="OnStreamChange",a.OnRoomParticipantConnected="OnRoomParticipantConnected",a.OnRoomParticipantDisconnected="OnRoomParticipantDisconnected",a.OnReceiveCustomSignal="OnReceiveCustomSignal";var c,p,u,l,g,v,M,A,G,m,S,h,C,f,O,R,F,y,L,x="undefined"!=typeof uni,b="undefined"!=typeof window,T=/*#__PURE__*/function(e){function t(t){var r;return void 0===t&&(t=!0),(r=e.call(this)||this).username=void 0,r.token=void 0,r.appKey=void 0,r.apiAddr=void 0,r.sseManager=void 0,r.debug=void 0,r.sendRequest=function(e){return r.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(x?new Promise(function(t,o){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return o(e)}})}):function(){if(b)return console.log("isBrowser ",b),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:r.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json"},data:e.data})},r.defaultDataFormatter=function(e){return"object"==typeof e&&(e=JSON.stringify(e)),JSON.stringify([e])},r.createRequestFunction=function(e,t){return function(o){return r.sendRequest({data:o,url:e,method:t})}},r.createRequestFunctionWithoutParams=function(e,t){return function(){return r.sendRequest({data:void 0,method:t,username:r.username,url:e})}},r.handleMessage=function(e){try{e.data=JSON.parse(e.data)}catch(e){}},r.handleReconnectSuccess=function(){},r.login=function(e){try{return r.sseManager?Promise.resolve("login repeat"):(console.log("login params ",e),r.apiAddr=e.apiAddr,console.log("this.apiAddr ",r.apiAddr),Promise.resolve(r.sendRequest({data:e,url:exports.RequestApi.Login,method:"POST"})).then(function(t){var o=t.code,n=t.data;if(0!=o)return console.log("code ",o),Promise.resolve("Login failed, Server error, error code is "+o);var s=r.apiAddr+"/chat/sse?username="+e.username+"&token="+e.token+"&appKey="+e.appKey+"&random="+n;r.username=e.username,r.token=e.token,r.appKey=e.appKey,r.sseManager=new i({url:s,onMessage:r.handleMessage,onReconnectSuccess:r.handleReconnectSuccess,authorizationToken:e.token});try{return r.sseManager.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},r.logout=r.createRequestFunctionWithoutParams(exports.RequestApi.Logout,"DELETE"),r.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},r.uploadFile=function(e){var t=e.file;try{return Promise.resolve(r.internalUploadFile(t)).then(function(e){var t,o=e.url,r=e.error;return{data:{url:void 0===o?"":o},msg:null!=(t=null==r?void 0:r.message)?t:"",code:r?exports.ErrorCode.UnknownError:0}})}catch(e){return Promise.reject(e)}},r.createImageMessageByFile=function(e){try{return Promise.resolve(r.internalUploadFile(e.file)).then(function(t){var n=t.url,s=t.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:exports.ErrorCode.UnknownError,event:exports.RequestApi.CreateImageMessageByFile});e.sourcePicture.url=n,e.bigPicture.url=n,e.snapshotPicture.url=n+"?type=image&width="+e.snapshotPicture.width+"&height="+e.snapshotPicture.height;var i=o({},e);return delete i.file,r.createImageMessageByURL(i)})}catch(e){return Promise.reject(e)}},r.createVideoMessageByFile=function(e){try{return Promise.resolve(function(t,n){try{var s=Promise.resolve(Promise.all([r.internalUploadFile(e.snapshotFile),r.internalUploadFile(e.videoFile)])).then(function(t){var n=t[0].url;e.videoUrl=t[1].url,e.snapshotUrl=n+"?type=image&width="+e.snapshotWidth+"&height="+e.snapshotHeight;var s=o({},e);return delete s.videoFile,delete s.snapshotFile,r.createVideoMessageByURL(s)})}catch(e){return n(e)}return s&&s.then?s.then(void 0,n):s}(0,function(e){return Promise.reject({data:"",errMsg:e.message,errCode:exports.ErrorCode.UnknownError,event:exports.RequestApi.CreateVideoMessageByFile})}))}catch(e){return Promise.reject(e)}},r.createSoundMessageByFile=function(e){try{return Promise.resolve(r.internalUploadFile(e.file)).then(function(t){var n=t.url,s=t.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:exports.ErrorCode.UnknownError,event:exports.RequestApi.CreateSoundMessageByFile});e.sourceUrl=n;var i=o({},e);return delete i.file,r.createSoundMessageByURL(i)})}catch(e){return Promise.reject(e)}},r.createFileMessageByFile=function(e){try{return Promise.resolve(r.internalUploadFile(e.file)).then(function(t){var n=t.url,s=t.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:exports.ErrorCode.UnknownError,event:exports.RequestApi.CreateFileMessageByFile});e.sourceUrl=n;var i=o({},e);return delete i.file,r.createFileMessageByURL(i)})}catch(e){return Promise.reject(e)}},r.getSelfUserInfo=void 0,r.setSelfInfo=void 0,r.getUsersInfoWithCache=void 0,r.subscribeUsersStatus=void 0,r.unsubscribeUsersStatus=void 0,r.getSubscribeUsersStatus=void 0,r.setAppBackgroundStatus=void 0,r.networkStatusChanged=void 0,r.setGlobalRecvMessageOpt=void 0,r.acceptFriendApplication=void 0,r.addBlack=void 0,r.addFriend=void 0,r.checkFriend=void 0,r.deleteFriend=void 0,r.getBlackList=void 0,r.getFriendApplicationListAsApplicant=void 0,r.getFriendApplicationListAsRecipient=void 0,r.getFriendList=void 0,r.getFriendListPage=void 0,r.getSpecifiedFriendsInfo=void 0,r.refuseFriendApplication=void 0,r.removeBlack=void 0,r.searchFriends=void 0,r.setFriendRemark=void 0,r.createGroup=void 0,r.joinGroup=void 0,r.inviteUserToGroup=void 0,r.getJoinedGroupList=void 0,r.getJoinedGroupListPage=void 0,r.searchGroups=void 0,r.getSpecifiedGroupsInfo=void 0,r.setGroupInfo=void 0,r.getGroupApplicationListAsRecipient=void 0,r.getGroupApplicationListAsApplicant=void 0,r.acceptGroupApplication=void 0,r.refuseGroupApplication=void 0,r.getGroupMemberList=void 0,r.getSpecifiedGroupMembersInfo=void 0,r.searchGroupMembers=void 0,r.setGroupMemberInfo=void 0,r.getGroupMemberOwnerAndAdmin=void 0,r.getGroupMemberListByJoinTimeFilter=void 0,r.kickGroupMember=void 0,r.changeGroupMemberMute=void 0,r.changeGroupMute=void 0,r.transferGroupOwner=void 0,r.dismissGroup=void 0,r.quitGroup=void 0,r.createTextMessage=void 0,r.createTextAtMessage=void 0,r.createImageMessageByURL=void 0,r.createSoundMessageByURL=void 0,r.createVideoMessageByURL=void 0,r.createFileMessageByURL=void 0,r.createMergerMessage=void 0,r.createForwardMessage=void 0,r.createLocationMessage=void 0,r.createQuoteMessage=void 0,r.createCardMessage=void 0,r.createCustomMessage=void 0,r.createFaceMessage=void 0,r.sendMessage=void 0,r.sendMessageNotOss=void 0,r.typingStatusUpdate=void 0,r.revokeMessage=void 0,r.deleteMessage=void 0,r.deleteMessageFromLocalStorage=void 0,r.deleteAllMsgFromLocal=void 0,r.deleteAllMsgFromLocalAndSvr=void 0,r.searchLocalMessages=void 0,r.getAdvancedHistoryMessageList=void 0,r.getAdvancedHistoryMessageListReverse=void 0,r.findMessageList=void 0,r.insertGroupMessageToLocalStorage=void 0,r.insertSingleMessageToLocalStorage=void 0,r.setMessageLocalEx=void 0,r.getAllConversationList=void 0,r.getConversationListSplit=void 0,r.getOneConversation=void 0,r.getMultipleConversation=void 0,r.getConversationIDBySessionType=void 0,r.getTotalUnreadMsgCount=void 0,r.markConversationMessageAsRead=void 0,r.setConversationDraft=void 0,r.pinConversation=void 0,r.setConversationRecvMessageOpt=void 0,r.setConversationPrivateChat=void 0,r.setConversationBurnDuration=void 0,r.resetConversationGroupAtType=void 0,r.hideConversation=void 0,r.hideAllConversation=void 0,r.clearConversationAndDeleteAllMsg=void 0,r.deleteConversationAndDeleteAllMsg=void 0,r.debug=t,Object.assign(r,{}),Object.assign(r,{}),Object.assign(r,{createGroup:r.createRequestFunction(exports.RequestApi.CreateGroup,"POST")}),Object.assign(r,{createTextMessage:r.createRequestFunction(exports.RequestApi.CreateTextMessage,"POST")}),Object.assign(r,{getAllConversationList:r.createRequestFunctionWithoutParams(exports.RequestApi.GetAllConversationList,"GET")}),r}var n,s;return s=e,(n=t).prototype=Object.create(s.prototype),n.prototype.constructor=n,r(n,s),t.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},t}(d);exports.MessageReceiveOptType=void 0,(c=exports.MessageReceiveOptType||(exports.MessageReceiveOptType={}))[c.Nomal=0]="Nomal",c[c.NotReceive=1]="NotReceive",c[c.NotNotify=2]="NotNotify",exports.AllowType=void 0,(p=exports.AllowType||(exports.AllowType={}))[p.Allowed=0]="Allowed",p[p.NotAllowed=1]="NotAllowed",exports.GroupType=void 0,(u=exports.GroupType||(exports.GroupType={}))[u.Group=2]="Group",u[u.WorkingGroup=2]="WorkingGroup",exports.GroupJoinSource=void 0,(l=exports.GroupJoinSource||(exports.GroupJoinSource={}))[l.Invitation=2]="Invitation",l[l.Search=3]="Search",l[l.QrCode=4]="QrCode",exports.GroupMemberRole=void 0,(g=exports.GroupMemberRole||(exports.GroupMemberRole={}))[g.Nomal=20]="Nomal",g[g.Admin=60]="Admin",g[g.Owner=100]="Owner",exports.GroupVerificationType=void 0,(v=exports.GroupVerificationType||(exports.GroupVerificationType={}))[v.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",v[v.AllNeed=1]="AllNeed",v[v.AllNot=2]="AllNot",exports.MessageStatus=void 0,(M=exports.MessageStatus||(exports.MessageStatus={}))[M.Sending=1]="Sending",M[M.Succeed=2]="Succeed",M[M.Failed=3]="Failed",exports.Platform=void 0,(A=exports.Platform||(exports.Platform={}))[A.iOS=1]="iOS",A[A.Android=2]="Android",A[A.Windows=3]="Windows",A[A.MacOSX=4]="MacOSX",A[A.Web=5]="Web",A[A.Linux=7]="Linux",A[A.AndroidPad=8]="AndroidPad",A[A.iPad=9]="iPad",exports.LogLevel=void 0,(G=exports.LogLevel||(exports.LogLevel={}))[G.Debug=5]="Debug",G[G.Info=4]="Info",G[G.Warn=3]="Warn",G[G.Error=2]="Error",G[G.Fatal=1]="Fatal",G[G.Panic=0]="Panic",exports.ApplicationHandleResult=void 0,(m=exports.ApplicationHandleResult||(exports.ApplicationHandleResult={}))[m.Unprocessed=0]="Unprocessed",m[m.Agree=1]="Agree",m[m.Reject=-1]="Reject",exports.MessageType=void 0,(S=exports.MessageType||(exports.MessageType={}))[S.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",S[S.TextMessage=101]="TextMessage",S[S.PictureMessage=102]="PictureMessage",S[S.VoiceMessage=103]="VoiceMessage",S[S.VideoMessage=104]="VideoMessage",S[S.FileMessage=105]="FileMessage",S[S.AtTextMessage=106]="AtTextMessage",S[S.MergeMessage=107]="MergeMessage",S[S.CardMessage=108]="CardMessage",S[S.LocationMessage=109]="LocationMessage",S[S.CustomMessage=110]="CustomMessage",S[S.TypingMessage=113]="TypingMessage",S[S.QuoteMessage=114]="QuoteMessage",S[S.FaceMessage=115]="FaceMessage",S[S.FriendAdded=1201]="FriendAdded",S[S.OANotification=1400]="OANotification",S[S.GroupCreated=1501]="GroupCreated",S[S.MemberQuit=1504]="MemberQuit",S[S.GroupOwnerTransferred=1507]="GroupOwnerTransferred",S[S.MemberKicked=1508]="MemberKicked",S[S.MemberInvited=1509]="MemberInvited",S[S.MemberEnter=1510]="MemberEnter",S[S.GroupDismissed=1511]="GroupDismissed",S[S.GroupMemberMuted=1512]="GroupMemberMuted",S[S.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",S[S.GroupMuted=1514]="GroupMuted",S[S.GroupCancelMuted=1515]="GroupCancelMuted",S[S.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",S[S.GroupNameUpdated=1520]="GroupNameUpdated",S[S.BurnMessageChange=1701]="BurnMessageChange",S[S.RevokeMessage=2101]="RevokeMessage",exports.SessionType=void 0,(h=exports.SessionType||(exports.SessionType={}))[h.Single=1]="Single",h[h.Group=3]="Group",h[h.WorkingGroup=3]="WorkingGroup",h[h.Notification=4]="Notification",exports.GroupStatus=void 0,(C=exports.GroupStatus||(exports.GroupStatus={}))[C.Nomal=0]="Nomal",C[C.Baned=1]="Baned",C[C.Dismissed=2]="Dismissed",C[C.Muted=3]="Muted",exports.GroupAtType=void 0,(f=exports.GroupAtType||(exports.GroupAtType={}))[f.AtNormal=0]="AtNormal",f[f.AtMe=1]="AtMe",f[f.AtAll=2]="AtAll",f[f.AtAllAtMe=3]="AtAllAtMe",f[f.AtGroupNotice=4]="AtGroupNotice",exports.GroupMemberFilter=void 0,(O=exports.GroupMemberFilter||(exports.GroupMemberFilter={}))[O.All=0]="All",O[O.Owner=1]="Owner",O[O.Admin=2]="Admin",O[O.Nomal=3]="Nomal",O[O.AdminAndNomal=4]="AdminAndNomal",O[O.AdminAndOwner=5]="AdminAndOwner",exports.Relationship=void 0,(R=exports.Relationship||(exports.Relationship={}))[R.isBlack=0]="isBlack",R[R.isFriend=1]="isFriend",exports.LoginStatus=void 0,(F=exports.LoginStatus||(exports.LoginStatus={}))[F.Logout=1]="Logout",F[F.Logging=2]="Logging",F[F.Logged=3]="Logged",exports.OnlineState=void 0,(y=exports.OnlineState||(exports.OnlineState={}))[y.Online=1]="Online",y[y.Offline=0]="Offline",exports.GroupMessageReaderFilter=void 0,(L=exports.GroupMessageReaderFilter||(exports.GroupMessageReaderFilter={}))[L.Readed=0]="Readed",L[L.UnRead=1]="UnRead",exports.SIMSDK=T;
1
+ var e=require("event-source-polyfill");function t(){return t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},t.apply(null,arguments)}function o(e,t){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},o(e,t)}function r(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var n,s,i=/*#__PURE__*/function(){function t(e){this.url=void 0,this.token=void 0,this.eventSource=null,this.reconnectAttempts=0,this.maxReconnectAttempts=5,this.reconnectTimeout=5e3,this.reconnectTimer=null,this.handlers=new Map,this.connected=!1,this.onMessageCallback=void 0,this.onReconnectSuccessCallback=void 0,this.url=e.url,this.token=e.token,this.reconnectTimeout=e.retryInterval||5e3,this.maxReconnectAttempts=e.maxRetries||5,this.onMessageCallback=e.onMessage,this.onReconnectSuccessCallback=e.onReconnectSuccess}var o=t.prototype;return o.removeAllEventListeners=function(){var e=this;this.eventSource&&(this.eventSource.removeEventListener("open",this.onOpen),this.handlers.forEach(function(t,o){var r;null==(r=e.eventSource)||r.removeEventListener(o,t)}),this.eventSource.removeEventListener("error",this.onError))},o.subscribe=function(e,t){this.handlers.set(e,t),this.connect()},o.connect=function(){var t=this;return this.connected&&this.eventSource?Promise.reject(new Error("SSE is already connected!")):new Promise(function(o,r){try{t.eventSource=new e.EventSourcePolyfill(t.url,{heartbeatTimeout:36e5,withCredentials:!1,headers:{Authorization:"Bearer "+t.token}}),t.eventSource.addEventListener("open",function(e){t.onOpen(e),o("SSE connect successful!")}),t.eventSource.addEventListener("message",function(e){t.handleMessage(e.data)}),t.handlers.forEach(function(e,o){var r;null==(r=t.eventSource)||r.addEventListener(o,t.onMessage(e))}),t.eventSource.addEventListener("error",function(e){t.onError(e),t.connected||r("SSE connect error.")})}catch(e){console.error("Failed to create EventSource:",e),t.handleReconnect(),r(e)}})},o.onOpen=function(e){console.log("SSE connection established"),this.connected=!0,this.reconnectAttempts>0&&this.onReconnectSuccessCallback&&this.onReconnectSuccessCallback(),this.reconnectAttempts=0,this.reconnectTimeout=5e3},o.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessageCallback&&this.onMessageCallback(t)}catch(e){console.error("数据解析错误:",e)}},o.onMessage=function(e){return function(t){try{var o=JSON.parse(t.data);console.log("Received SSE message:",o),"function"==typeof e&&e(o)}catch(e){console.error("Failed to parse SSE message:",e)}}},o.onError=function(e){console.error("SSE connection error:",e),this.connected=!1,401===e.status||e.statusText&&e.statusText.includes("Unauthorized")?this.cleanup():this.handleReconnect()},o.handleReconnect=function(){var e=this;if(null===this.reconnectTimer){if(this.reconnectAttempts>=this.maxReconnectAttempts)return console.error("Max reconnection attempts reached"),void this.destroySse();console.log("Attempting to reconnect in "+this.reconnectTimeout/1e3+" seconds..."),this.cleanup(),this.reconnectTimer=window.setTimeout(function(){e.reconnectAttempts++,e.reconnectTimeout=Math.min(2*e.reconnectTimeout,3e4),e.reconnectTimer=null,e.connect()},this.reconnectTimeout)}},o.cleanup=function(){this.eventSource&&(this.removeAllEventListeners(),this.eventSource.close(),this.eventSource=null),this.connected=!1},o.unsubscribe=function(){this.cleanup(),this.handlers.clear(),null!==this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)},o.destroySse=function(){this.unsubscribe(),this.reconnectAttempts=this.maxReconnectAttempts},o.close=function(){this.destroySse(),console.log("SSE 连接已关闭")},o.isConnected=function(){return this.connected},t}();exports.ErrorCode=void 0,(n=exports.ErrorCode||(exports.ErrorCode={}))[n.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",n[n.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",n[n.UnknownError=10005]="UnknownError",n[n.LoginRepeatError=10102]="LoginRepeatError",exports.RequestApi=void 0,(s=exports.RequestApi||(exports.RequestApi={})).Login="/chat/member/login",s.Logout="Logout",s.CreateGroup="CreateGroup",s.GetGroupInfo="/chat/group/info",s.GetAllConversationList="/chat/group/list",s.CreateTextMessage="/chat/message/push",s.GetHistoryMessageList="/chat/message/pull";var a,c,u,d,l,p,v,g,h,m,f,S,M,E,A,x,T,y,G,R,O,P=/*#__PURE__*/function(){function e(e){this.simSDK=void 0,this.simSDK=e}var t=e.prototype;return t.createGroup=function(e){try{return Promise.resolve(this.simSDK.sendRequest({data:e,url:exports.RequestApi.CreateGroup,method:"POST"}))}catch(e){return Promise.reject(e)}},t.getGroupInfo=function(e){try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:e},url:exports.RequestApi.GetGroupInfo,method:"GET"}))}catch(e){return Promise.reject(e)}},e}();exports.MessageReceiveOptType=void 0,(a=exports.MessageReceiveOptType||(exports.MessageReceiveOptType={}))[a.Nomal=0]="Nomal",a[a.NotReceive=1]="NotReceive",a[a.NotNotify=2]="NotNotify",exports.AllowType=void 0,(c=exports.AllowType||(exports.AllowType={}))[c.Allowed=0]="Allowed",c[c.NotAllowed=1]="NotAllowed",exports.GroupType=void 0,(u=exports.GroupType||(exports.GroupType={}))[u.Group=2]="Group",u[u.WorkingGroup=2]="WorkingGroup",exports.GroupJoinSource=void 0,(d=exports.GroupJoinSource||(exports.GroupJoinSource={}))[d.Invitation=2]="Invitation",d[d.Search=3]="Search",d[d.QrCode=4]="QrCode",exports.GroupMemberRole=void 0,(l=exports.GroupMemberRole||(exports.GroupMemberRole={}))[l.Nomal=20]="Nomal",l[l.Admin=60]="Admin",l[l.Owner=100]="Owner",exports.GroupVerificationType=void 0,(p=exports.GroupVerificationType||(exports.GroupVerificationType={}))[p.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",p[p.AllNeed=1]="AllNeed",p[p.AllNot=2]="AllNot",exports.Platform=void 0,(v=exports.Platform||(exports.Platform={}))[v.iOS=1]="iOS",v[v.Android=2]="Android",v[v.Windows=3]="Windows",v[v.MacOSX=4]="MacOSX",v[v.Web=5]="Web",v[v.Linux=7]="Linux",v[v.AndroidPad=8]="AndroidPad",v[v.iPad=9]="iPad",exports.LogLevel=void 0,(g=exports.LogLevel||(exports.LogLevel={}))[g.Debug=5]="Debug",g[g.Info=4]="Info",g[g.Warn=3]="Warn",g[g.Error=2]="Error",g[g.Fatal=1]="Fatal",g[g.Panic=0]="Panic",exports.ApplicationHandleResult=void 0,(h=exports.ApplicationHandleResult||(exports.ApplicationHandleResult={}))[h.Unprocessed=0]="Unprocessed",h[h.Agree=1]="Agree",h[h.Reject=-1]="Reject",exports.MessageType=void 0,(m=exports.MessageType||(exports.MessageType={}))[m.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",m[m.TextMessage=101]="TextMessage",m[m.PictureMessage=102]="PictureMessage",m[m.VoiceMessage=103]="VoiceMessage",m[m.VideoMessage=104]="VideoMessage",m[m.FileMessage=105]="FileMessage",m[m.AtTextMessage=106]="AtTextMessage",m[m.MergeMessage=107]="MergeMessage",m[m.CardMessage=108]="CardMessage",m[m.LocationMessage=109]="LocationMessage",m[m.CustomMessage=110]="CustomMessage",m[m.TypingMessage=113]="TypingMessage",m[m.QuoteMessage=114]="QuoteMessage",m[m.FaceMessage=115]="FaceMessage",m[m.FriendAdded=1201]="FriendAdded",m[m.OANotification=1400]="OANotification",m[m.GroupCreated=1501]="GroupCreated",m[m.MemberQuit=1504]="MemberQuit",m[m.GroupOwnerTransferred=1507]="GroupOwnerTransferred",m[m.MemberKicked=1508]="MemberKicked",m[m.MemberInvited=1509]="MemberInvited",m[m.MemberEnter=1510]="MemberEnter",m[m.GroupDismissed=1511]="GroupDismissed",m[m.GroupMemberMuted=1512]="GroupMemberMuted",m[m.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",m[m.GroupMuted=1514]="GroupMuted",m[m.GroupCancelMuted=1515]="GroupCancelMuted",m[m.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",m[m.GroupNameUpdated=1520]="GroupNameUpdated",m[m.BurnMessageChange=1701]="BurnMessageChange",m[m.RevokeMessage=2101]="RevokeMessage",exports.SessionType=void 0,(f=exports.SessionType||(exports.SessionType={}))[f.Single=1]="Single",f[f.Group=3]="Group",f[f.WorkingGroup=3]="WorkingGroup",f[f.Notification=4]="Notification",exports.GroupStatus=void 0,(S=exports.GroupStatus||(exports.GroupStatus={}))[S.Nomal=0]="Nomal",S[S.Baned=1]="Baned",S[S.Dismissed=2]="Dismissed",S[S.Muted=3]="Muted",exports.GroupAtType=void 0,(M=exports.GroupAtType||(exports.GroupAtType={}))[M.AtNormal=0]="AtNormal",M[M.AtMe=1]="AtMe",M[M.AtAll=2]="AtAll",M[M.AtAllAtMe=3]="AtAllAtMe",M[M.AtGroupNotice=4]="AtGroupNotice",exports.GroupMemberFilter=void 0,(E=exports.GroupMemberFilter||(exports.GroupMemberFilter={}))[E.All=0]="All",E[E.Owner=1]="Owner",E[E.Admin=2]="Admin",E[E.Nomal=3]="Nomal",E[E.AdminAndNomal=4]="AdminAndNomal",E[E.AdminAndOwner=5]="AdminAndOwner",exports.Relationship=void 0,(A=exports.Relationship||(exports.Relationship={}))[A.isBlack=0]="isBlack",A[A.isFriend=1]="isFriend",exports.LoginStatus=void 0,(x=exports.LoginStatus||(exports.LoginStatus={}))[x.Logout=1]="Logout",x[x.Logging=2]="Logging",x[x.Logged=3]="Logged",exports.OnlineState=void 0,(T=exports.OnlineState||(exports.OnlineState={}))[T.Online=1]="Online",T[T.Offline=0]="Offline",exports.GroupMessageReaderFilter=void 0,(y=exports.GroupMessageReaderFilter||(exports.GroupMessageReaderFilter={}))[y.Readed=0]="Readed",y[y.UnRead=1]="UnRead",exports.MSG_TYPE=void 0,(G=exports.MSG_TYPE||(exports.MSG_TYPE={}))[G.TEXT=0]="TEXT",G[G.IMAGE=1]="IMAGE",G[G.FILE=2]="FILE",G[G.VIDEO=3]="VIDEO",G[G.LINK=4]="LINK",G[G.GIF=5]="GIF",exports.SSE_RESPONSE_TYPE=void 0,(R=exports.SSE_RESPONSE_TYPE||(exports.SSE_RESPONSE_TYPE={}))[R.EVENT_PONG_CONN=0]="EVENT_PONG_CONN",R[R.EVENT_PONG_RE_CONN=1]="EVENT_PONG_RE_CONN",R[R.EVENT_PONG_IDLE=2]="EVENT_PONG_IDLE",R[R.EVENT_MESSAGE_PUSH=3]="EVENT_MESSAGE_PUSH",exports.MessageSendStatus=void 0,(O=exports.MessageSendStatus||(exports.MessageSendStatus={}))[O.Sending=1]="Sending",O[O.Succeed=2]="Succeed",O[O.Failed=3]="Failed";var b,C=/*#__PURE__*/function(){function e(e){this.simSDK=void 0,this.simSDK=e}var o=e.prototype;return o.sendMessage=function(e,t){try{var o=this;return Promise.resolve(function(r,n){try{var s=Promise.resolve(o.simSDK.sendRequest({data:e,url:t,method:"POST"}))}catch(e){return n(e)}return s&&s.then?s.then(void 0,n):s}(0,function(e){throw console.error("Failed to send message",e),e}))}catch(e){return Promise.reject(e)}},o.createMessage=function(e,o,r,n,s){var i;void 0===r&&(r={});var a=t({},r,((i={msgType:e})[n]=s,i.status=0,i));return this.sendMessage(a,o)},o.createTextMessage=function(e,t){void 0===t&&(t={});try{return Promise.resolve(this.createMessage(exports.MSG_TYPE.TEXT,exports.RequestApi.CreateTextMessage,t,"text",e))}catch(e){return Promise.reject(e)}},o.createImageMessage=function(e,t){void 0===t&&(t={});try{return Promise.resolve(this.createMessage(exports.MSG_TYPE.IMAGE,exports.RequestApi.CreateTextMessage,t,"snapshot",e))}catch(e){return Promise.reject(e)}},o.getHistoryMessageList=function(e){var t=e.groupId,o=e.lastId,r=e.size,n=void 0===r?20:r;try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:t,lastId:o,size:n},url:exports.RequestApi.GetHistoryMessageList,method:"POST"}))}catch(e){return Promise.reject(e)}},e}();exports.CbEvents=void 0,(b=exports.CbEvents||(exports.CbEvents={})).onReceiveMessage="onReceiveMessage",b.onReceiveMessages="onReceiveMessages",b.OnKickedOffline="OnKickedOffline",b.OnUserTokenInvalid="OnUserTokenInvalid",b.OnUserTokenExpired="OnUserTokenExpired";var N="undefined"!=typeof uni,L="undefined"!=typeof window,k=/*#__PURE__*/function(e){function t(t){var o;return void 0===t&&(t=!0),(o=e.call(this)||this).username=void 0,o.token=void 0,o.appKey=void 0,o.apiAddr=void 0,o.sseClient=void 0,o.debug=void 0,o.messageService=void 0,o.groupService=void 0,o.sendRequest=function(e){return o.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(N?new Promise(function(t,o){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return o(e)}})}):function(){if(L)return console.log("isBrowser ",L),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:o.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token},data:e.data})},o.createRequestFunction=function(e,t){return function(r){return o.sendRequest({data:r,url:e,method:t})}},o.createRequestFunctionWithoutParams=function(e,t){return function(){return o.sendRequest({data:void 0,method:t,username:o.username,url:e})}},o.handleMessage=function(e){console.log("handleMessage response",e)},o.handleReconnectSuccess=function(){},o.login=function(e){try{return o.sseClient?Promise.resolve("login repeat"):(console.log("login params ",e),o.apiAddr=e.apiAddr,o.token=e.token,console.log("this.apiAddr ",o.apiAddr),Promise.resolve(o.sendRequest({data:e,url:exports.RequestApi.Login,method:"POST"})).then(function(t){var r=t.code,n=t.data;if(0!=r)return console.log("code ",r),Promise.resolve("Login failed, Server error, error code is "+r);var s=o.apiAddr+"/chat/sse/conn?username="+e.username+"&token="+e.token+"&appKey="+e.appKey+"&random="+n;o.username=e.username,o.token=e.token,o.appKey=e.appKey,o.sseClient=new i({url:s,onMessage:o.handleMessage,onReconnectSuccess:o.handleReconnectSuccess,token:e.token});try{return o.sseClient.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},o.logout=o.createRequestFunctionWithoutParams(exports.RequestApi.Logout,"DELETE"),o.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},o.uploadFile=function(e){var t=e.file;try{return Promise.resolve(o.internalUploadFile(t)).then(function(e){var t,o=e.url,r=e.error;return{data:{url:void 0===o?"":o},msg:null!=(t=null==r?void 0:r.message)?t:"",code:r?exports.ErrorCode.UnknownError:0}})}catch(e){return Promise.reject(e)}},o.getSelfUserInfo=void 0,o.setSelfInfo=void 0,o.getUsersInfoWithCache=void 0,o.subscribeUsersStatus=void 0,o.unsubscribeUsersStatus=void 0,o.getSubscribeUsersStatus=void 0,o.setAppBackgroundStatus=void 0,o.networkStatusChanged=void 0,o.setGlobalRecvMessageOpt=void 0,o.acceptFriendApplication=void 0,o.addBlack=void 0,o.addFriend=void 0,o.checkFriend=void 0,o.deleteFriend=void 0,o.getBlackList=void 0,o.getFriendApplicationListAsApplicant=void 0,o.getFriendApplicationListAsRecipient=void 0,o.getFriendList=void 0,o.getFriendListPage=void 0,o.getSpecifiedFriendsInfo=void 0,o.refuseFriendApplication=void 0,o.removeBlack=void 0,o.searchFriends=void 0,o.setFriendRemark=void 0,o.getAllConversationList=void 0,o.getConversationListSplit=void 0,o.getOneConversation=void 0,o.getMultipleConversation=void 0,o.getConversationIDBySessionType=void 0,o.getTotalUnreadMsgCount=void 0,o.markConversationMessageAsRead=void 0,o.setConversationDraft=void 0,o.pinConversation=void 0,o.setConversationRecvMessageOpt=void 0,o.setConversationPrivateChat=void 0,o.setConversationBurnDuration=void 0,o.resetConversationGroupAtType=void 0,o.hideConversation=void 0,o.hideAllConversation=void 0,o.clearConversationAndDeleteAllMsg=void 0,o.deleteConversationAndDeleteAllMsg=void 0,o.debug=t,Object.assign(o,{}),Object.assign(o,{}),Object.assign(o,{getAllConversationList:o.createRequestFunctionWithoutParams(exports.RequestApi.GetAllConversationList,"GET")}),o.messageService=new C(o),o.groupService=new P(o),o}var n,s,a,c;return s=e,(n=t).prototype=Object.create(s.prototype),n.prototype.constructor=n,o(n,s),t.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},a=t,(c=[{key:"createGroup",get:function(){var e=this;return function(t){return e.groupService.createGroup(t)}}},{key:"getGroupInfo",get:function(){var e=this;return function(t){return e.groupService.getGroupInfo(t)}}},{key:"createTextMessage",get:function(){return this.messageService.createTextMessage.bind(this.messageService)}},{key:"getHistoryMessageList",get:function(){var e=this;return console.log("sdk getHistoryMessageList"),function(t){return e.messageService.getHistoryMessageList(t)}}},{key:"uuid",get:function(){return(36*Math.random()).toString(36).slice(2)+(new Date).getTime().toString()}}])&&function(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,r(n.key),n)}}(a.prototype,c),Object.defineProperty(a,"prototype",{writable:!1}),a}(/*#__PURE__*/function(){function e(){var e;this.events=((e={})[exports.CbEvents.onReceiveMessage]=[],e[exports.CbEvents.onReceiveMessages]=[],e)}var t=e.prototype;return t.emit=function(e,t){var o=this.events[e];return o&&o.forEach(function(e){return e(t)}),this},t.on=function(e,t){var o;return this.events[e]||(this.events[e]=[]),null==(o=this.events[e])||o.push(t),this},t.off=function(e,t){var o=this.events[e];if(o){var r=o.indexOf(t);r>-1&&(o.splice(r,1),0===o.length&&delete this.events[e])}return this},e}());exports.GROUP_TYPE={ONE_ON_ONE:0,GROUP_CHAT:1,CUSTOMER_SERVICE:2},exports.MessageStatus={NORMAL:0,EDITED:1,DELETED:2},exports.SIMSDK=k;
package/lib/index.umd.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("eventsource")):"function"==typeof define&&define.amd?define(["exports","eventsource"],t):t((e||self).simSdkWeb={},e.eventsource)}(this,function(e,t){function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=/*#__PURE__*/o(t);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)({}).hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},r.apply(null,arguments)}function i(e,t){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},i(e,t)}var s,a,d=/*#__PURE__*/function(){function e(e){var t=this;this.url=void 0,this.authorizationToken=void 0,this.retryInterval=void 0,this.maxRetries=void 0,this.reconnectAttempts=void 0,this.eventSource=void 0,this.connected=void 0,this.onMessage=void 0,this.onReconnectSuccess=void 0,this.connect=function(){return t.connected?Promise.reject(new Error("sse is connected!")):new Promise(function(e,o){t.eventSource=new n.default(t.url,{headers:{Authorization:"Bearer "+t.authorizationToken}}),t.eventSource&&(t.eventSource.onopen=function(){t.connected=!0,t.reconnectAttempts&&t.onReconnectSuccess(),t.reconnectAttempts=0,e("sse connect successful!")},t.eventSource.onmessage=function(e){t.handleMessage(e.data)},t.eventSource.onerror=function(){t.connected=!1,console.error("SSE 连接出错,准备重试..."),t.reconnect(),o("sse connect err.")})})},this.url=e.url,this.authorizationToken=e.authorizationToken,this.retryInterval=e.retryInterval||5e3,this.maxRetries=e.maxRetries||5,this.reconnectAttempts=0,this.eventSource=null,this.connected=!1,this.onMessage=e.onMessage,this.onReconnectSuccess=e.onReconnectSuccess}var t=e.prototype;return t.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessage(t)}catch(e){console.error("数据解析错误:",e)}},t.reconnect=function(){var e=this;if(this.eventSource&&this.eventSource.close(),this.reconnectAttempts>=this.maxRetries)console.error("已达到最大重试次数,停止重试");else{var t=this.retryInterval*Math.pow(2,this.reconnectAttempts);setTimeout(function(){e.reconnectAttempts++,console.log("第 "+e.reconnectAttempts+" 次重试连接 SSE...(延迟 "+t+"ms)"),e.connect()},t)}},t.close=function(){this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.connected=!1,console.log("SSE 连接已关闭")},t.isConnected=function(){return this.connected},e}();e.ErrorCode=void 0,(s=e.ErrorCode||(e.ErrorCode={}))[s.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",s[s.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",s[s.UnknownError=10005]="UnknownError",s[s.LoginRepeatError=10102]="LoginRepeatError",e.RequestApi=void 0,(a=e.RequestApi||(e.RequestApi={})).Login="/chat/member/login",a.Logout="Logout",a.GetLoginStatus="GetLoginStatus",a.GetLoginUserID="GetLoginUserID",a.GetSelfUserInfo="GetSelfUserInfo",a.SetSelfInfo="SetSelfInfo",a.GetUsersInfoWithCache="GetUsersInfoWithCache",a.SubscribeUsersStatus="SubscribeUsersStatus",a.UnsubscribeUsersStatus="UnsubscribeUsersStatus",a.GetSubscribeUsersStatus="GetSubscribeUsersStatus",a.SetAppBackgroundStatus="SetAppBackgroundStatus",a.NetworkStatusChanged="NetworkStatusChanged",a.SetGlobalRecvMessageOpt="SetGlobalRecvMessageOpt",a.AcceptFriendApplication="AcceptFriendApplication",a.AddBlack="AddBlack",a.AddFriend="AddFriend",a.CheckFriend="CheckFriend",a.DeleteFriend="DeleteFriend",a.GetBlackList="GetBlackList",a.GetFriendApplicationListAsApplicant="GetFriendApplicationListAsApplicant",a.GetFriendApplicationListAsRecipient="GetFriendApplicationListAsRecipient",a.GetFriendList="GetFriendList",a.GetFriendListPage="GetFriendListPage",a.GetSpecifiedFriendsInfo="GetSpecifiedFriendsInfo",a.RefuseFriendApplication="RefuseFriendApplication",a.RemoveBlack="RemoveBlack",a.SearchFriends="SearchFriends",a.SetFriendRemark="SetFriendRemark",a.CreateGroup="CreateGroup",a.JoinGroup="JoinGroup",a.InviteUserToGroup="InviteUserToGroup",a.GetJoinedGroupList="GetJoinedGroupList",a.GetJoinedGroupListPage="GetJoinedGroupListPage",a.SearchGroups="SearchGroups",a.GetSpecifiedGroupsInfo="GetSpecifiedGroupsInfo",a.SetGroupInfo="SetGroupInfo",a.GetGroupApplicationListAsRecipient="GetGroupApplicationListAsRecipient",a.GetGroupApplicationListAsApplicant="GetGroupApplicationListAsApplicant",a.AcceptGroupApplication="AcceptGroupApplication",a.RefuseGroupApplication="RefuseGroupApplication",a.GetGroupMemberList="GetGroupMemberList",a.GetSpecifiedGroupMembersInfo="GetSpecifiedGroupMembersInfo",a.SearchGroupMembers="SearchGroupMembers",a.SetGroupMemberInfo="SetGroupMemberInfo",a.GetGroupMemberOwnerAndAdmin="GetGroupMemberOwnerAndAdmin",a.GetGroupMemberListByJoinTimeFilter="GetGroupMemberListByJoinTimeFilter",a.KickGroupMember="KickGroupMember",a.ChangeGroupMemberMute="ChangeGroupMemberMute",a.ChangeGroupMute="ChangeGroupMute",a.TransferGroupOwner="TransferGroupOwner",a.DismissGroup="DismissGroup",a.QuitGroup="QuitGroup",a.GetAllConversationList="GetAllConversationList",a.GetConversationListSplit="GetConversationListSplit",a.GetOneConversation="GetOneConversation",a.GetMultipleConversation="GetMultipleConversation",a.GetConversationIDBySessionType="GetConversationIDBySessionType",a.GetTotalUnreadMsgCount="GetTotalUnreadMsgCount",a.MarkConversationMessageAsRead="MarkConversationMessageAsRead",a.SetConversationDraft="SetConversationDraft",a.PinConversation="PinConversation",a.SetConversationRecvMessageOpt="SetConversationRecvMessageOpt",a.SetConversationPrivateChat="SetConversationPrivateChat",a.SetConversationBurnDuration="SetConversationBurnDuration",a.ResetConversationGroupAtType="ResetConversationGroupAtType",a.HideConversation="HideConversation",a.HideAllConversation="HideAllConversation",a.ClearConversationAndDeleteAllMsg="ClearConversationAndDeleteAllMsg",a.DeleteConversationAndDeleteAllMsg="DeleteConversationAndDeleteAllMsg",a.CreateTextMessage="CreateTextMessage",a.CreateTextAtMessage="CreateTextAtMessage",a.CreateImageMessageByFile="CreateImageMessageByFile",a.CreateImageMessageByURL="CreateImageMessageByURL",a.CreateSoundMessageByFile="CreateSoundMessageByFile",a.CreateSoundMessageByURL="CreateSoundMessageByURL",a.CreateVideoMessageByFile="CreateVideoMessageByFile",a.CreateVideoMessageByURL="CreateVideoMessageByURL",a.CreateFileMessageByFile="CreateFileMessageByFile",a.CreateFileMessageByURL="CreateFileMessageByURL",a.CreateMergerMessage="CreateMergerMessage",a.CreateForwardMessage="CreateForwardMessage",a.CreateLocationMessage="CreateLocationMessage",a.CreateQuoteMessage="CreateQuoteMessage",a.CreateCardMessage="CreateCardMessage",a.CreateCustomMessage="CreateCustomMessage",a.CreateFaceMessage="CreateFaceMessage",a.SendMessage="SendMessage",a.SendMessageNotOss="SendMessageNotOss",a.UploadFile="UploadFile",a.TypingStatusUpdate="TypingStatusUpdate",a.RevokeMessage="RevokeMessage",a.DeleteMessage="DeleteMessage",a.DeleteMessageFromLocalStorage="DeleteMessageFromLocalStorage",a.DeleteAllMsgFromLocal="DeleteAllMsgFromLocal",a.DeleteAllMsgFromLocalAndSvr="DeleteAllMsgFromLocalAndSvr",a.SearchLocalMessages="SearchLocalMessages",a.GetAdvancedHistoryMessageList="GetAdvancedHistoryMessageList",a.GetAdvancedHistoryMessageListReverse="GetAdvancedHistoryMessageListReverse",a.FindMessageList="FindMessageList",a.InsertGroupMessageToLocalStorage="InsertGroupMessageToLocalStorage",a.InsertSingleMessageToLocalStorage="InsertSingleMessageToLocalStorage",a.SetMessageLocalEx="SetMessageLocalEx";var c,u=/*#__PURE__*/function(){function e(){this.events=void 0,this.events={}}var t=e.prototype;return t.emit=function(e,t){return this.events[e]&&this.events[e].forEach(function(e){return e(t)}),this},t.on=function(e,t){return this.events[e]?this.events[e].push(t):this.events[e]=[t],this},t.off=function(e,t){if(e&&"function"==typeof t&&this.events[e]){var o=this.events[e];if(!o||0===o.length)return;var n=o.findIndex(function(e){return e===t});-1!==n&&o.splice(n,1)}return this},e}();e.CbEvents=void 0,(c=e.CbEvents||(e.CbEvents={})).onReceiveMessages="onReceiveMessages",c.OnConnectFailed="OnConnectFailed",c.OnConnectSuccess="OnConnectSuccess",c.OnConnecting="OnConnecting",c.OnKickedOffline="OnKickedOffline",c.OnUserTokenInvalid="OnUserTokenInvalid",c.OnSelfInfoUpdated="OnSelfInfoUpdated",c.OnUserTokenExpired="OnUserTokenExpired",c.OnProgress="OnProgress",c.OnRecvNewMessage="OnRecvNewMessage",c.OnRecvNewMessages="OnRecvNewMessages",c.OnRecvMessageRevoked="OnRecvMessageRevoked",c.OnNewRecvMessageRevoked="OnNewRecvMessageRevoked",c.OnRecvC2CReadReceipt="OnRecvC2CReadReceipt",c.OnRecvGroupReadReceipt="OnRecvGroupReadReceipt",c.OnConversationChanged="OnConversationChanged",c.OnNewConversation="OnNewConversation",c.OnSyncServerFailed="OnSyncServerFailed",c.OnSyncServerFinish="OnSyncServerFinish",c.OnSyncServerStart="OnSyncServerStart",c.OnSyncServerProgress="OnSyncServerProgress",c.OnTotalUnreadMessageCountChanged="OnTotalUnreadMessageCountChanged",c.OnBlackAdded="OnBlackAdded",c.OnBlackDeleted="OnBlackDeleted",c.OnFriendApplicationAccepted="OnFriendApplicationAccepted",c.OnFriendApplicationAdded="OnFriendApplicationAdded",c.OnFriendApplicationDeleted="OnFriendApplicationDeleted",c.OnFriendApplicationRejected="OnFriendApplicationRejected",c.OnFriendInfoChanged="OnFriendInfoChanged",c.OnFriendAdded="OnFriendAdded",c.OnFriendDeleted="OnFriendDeleted",c.OnJoinedGroupAdded="OnJoinedGroupAdded",c.OnJoinedGroupDeleted="OnJoinedGroupDeleted",c.OnGroupDismissed="OnGroupDismissed",c.OnGroupMemberAdded="OnGroupMemberAdded",c.OnGroupMemberDeleted="OnGroupMemberDeleted",c.OnGroupApplicationAdded="OnGroupApplicationAdded",c.OnGroupApplicationDeleted="OnGroupApplicationDeleted",c.OnGroupInfoChanged="OnGroupInfoChanged",c.OnGroupMemberInfoChanged="OnGroupMemberInfoChanged",c.OnGroupApplicationAccepted="OnGroupApplicationAccepted",c.OnGroupApplicationRejected="OnGroupApplicationRejected",c.UploadComplete="UploadComplete",c.OnRecvCustomBusinessMessage="OnRecvCustomBusinessMessage",c.OnUserStatusChanged="OnUserStatusChanged",c.OnReceiveNewInvitation="OnReceiveNewInvitation",c.OnInviteeAccepted="OnInviteeAccepted",c.OnInviteeRejected="OnInviteeRejected",c.OnInvitationCancelled="OnInvitationCancelled",c.OnHangUp="OnHangUp",c.OnInvitationTimeout="OnInvitationTimeout",c.OnInviteeAcceptedByOtherDevice="OnInviteeAcceptedByOtherDevice",c.OnInviteeRejectedByOtherDevice="OnInviteeRejectedByOtherDevice",c.OnStreamChange="OnStreamChange",c.OnRoomParticipantConnected="OnRoomParticipantConnected",c.OnRoomParticipantDisconnected="OnRoomParticipantDisconnected",c.OnReceiveCustomSignal="OnReceiveCustomSignal";var l,p,g,v,M,A,m,G,S,f,h,C,O,R,F,y,L,b,T,U="undefined"!=typeof uni,I="undefined"!=typeof window,P=/*#__PURE__*/function(t){function o(o){var n;return void 0===o&&(o=!0),(n=t.call(this)||this).username=void 0,n.token=void 0,n.appKey=void 0,n.apiAddr=void 0,n.sseManager=void 0,n.debug=void 0,n.sendRequest=function(e){return n.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(U?new Promise(function(t,o){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return o(e)}})}):function(){if(I)return console.log("isBrowser ",I),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:n.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json"},data:e.data})},n.defaultDataFormatter=function(e){return"object"==typeof e&&(e=JSON.stringify(e)),JSON.stringify([e])},n.createRequestFunction=function(e,t){return function(o){return n.sendRequest({data:o,url:e,method:t})}},n.createRequestFunctionWithoutParams=function(e,t){return function(){return n.sendRequest({data:void 0,method:t,username:n.username,url:e})}},n.handleMessage=function(e){try{e.data=JSON.parse(e.data)}catch(e){}},n.handleReconnectSuccess=function(){},n.login=function(t){try{return n.sseManager?Promise.resolve("login repeat"):(console.log("login params ",t),n.apiAddr=t.apiAddr,console.log("this.apiAddr ",n.apiAddr),Promise.resolve(n.sendRequest({data:t,url:e.RequestApi.Login,method:"POST"})).then(function(e){var o=e.code,r=e.data;if(0!=o)return console.log("code ",o),Promise.resolve("Login failed, Server error, error code is "+o);var i=n.apiAddr+"/chat/sse?username="+t.username+"&token="+t.token+"&appKey="+t.appKey+"&random="+r;n.username=t.username,n.token=t.token,n.appKey=t.appKey,n.sseManager=new d({url:i,onMessage:n.handleMessage,onReconnectSuccess:n.handleReconnectSuccess,authorizationToken:t.token});try{return n.sseManager.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},n.logout=n.createRequestFunctionWithoutParams(e.RequestApi.Logout,"DELETE"),n.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},n.uploadFile=function(t){var o=t.file;try{return Promise.resolve(n.internalUploadFile(o)).then(function(t){var o,n=t.url,r=t.error;return{data:{url:void 0===n?"":n},msg:null!=(o=null==r?void 0:r.message)?o:"",code:r?e.ErrorCode.UnknownError:0}})}catch(e){return Promise.reject(e)}},n.createImageMessageByFile=function(t){try{return Promise.resolve(n.internalUploadFile(t.file)).then(function(o){var i=o.url,s=o.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:e.ErrorCode.UnknownError,event:e.RequestApi.CreateImageMessageByFile});t.sourcePicture.url=i,t.bigPicture.url=i,t.snapshotPicture.url=i+"?type=image&width="+t.snapshotPicture.width+"&height="+t.snapshotPicture.height;var a=r({},t);return delete a.file,n.createImageMessageByURL(a)})}catch(e){return Promise.reject(e)}},n.createVideoMessageByFile=function(t){try{return Promise.resolve(function(e,o){try{var i=Promise.resolve(Promise.all([n.internalUploadFile(t.snapshotFile),n.internalUploadFile(t.videoFile)])).then(function(e){var o=e[0].url;t.videoUrl=e[1].url,t.snapshotUrl=o+"?type=image&width="+t.snapshotWidth+"&height="+t.snapshotHeight;var i=r({},t);return delete i.videoFile,delete i.snapshotFile,n.createVideoMessageByURL(i)})}catch(e){return o(e)}return i&&i.then?i.then(void 0,o):i}(0,function(t){return Promise.reject({data:"",errMsg:t.message,errCode:e.ErrorCode.UnknownError,event:e.RequestApi.CreateVideoMessageByFile})}))}catch(e){return Promise.reject(e)}},n.createSoundMessageByFile=function(t){try{return Promise.resolve(n.internalUploadFile(t.file)).then(function(o){var i=o.url,s=o.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:e.ErrorCode.UnknownError,event:e.RequestApi.CreateSoundMessageByFile});t.sourceUrl=i;var a=r({},t);return delete a.file,n.createSoundMessageByURL(a)})}catch(e){return Promise.reject(e)}},n.createFileMessageByFile=function(t){try{return Promise.resolve(n.internalUploadFile(t.file)).then(function(o){var i=o.url,s=o.error;if(s)return Promise.reject({data:"",errMsg:s.message,errCode:e.ErrorCode.UnknownError,event:e.RequestApi.CreateFileMessageByFile});t.sourceUrl=i;var a=r({},t);return delete a.file,n.createFileMessageByURL(a)})}catch(e){return Promise.reject(e)}},n.getSelfUserInfo=void 0,n.setSelfInfo=void 0,n.getUsersInfoWithCache=void 0,n.subscribeUsersStatus=void 0,n.unsubscribeUsersStatus=void 0,n.getSubscribeUsersStatus=void 0,n.setAppBackgroundStatus=void 0,n.networkStatusChanged=void 0,n.setGlobalRecvMessageOpt=void 0,n.acceptFriendApplication=void 0,n.addBlack=void 0,n.addFriend=void 0,n.checkFriend=void 0,n.deleteFriend=void 0,n.getBlackList=void 0,n.getFriendApplicationListAsApplicant=void 0,n.getFriendApplicationListAsRecipient=void 0,n.getFriendList=void 0,n.getFriendListPage=void 0,n.getSpecifiedFriendsInfo=void 0,n.refuseFriendApplication=void 0,n.removeBlack=void 0,n.searchFriends=void 0,n.setFriendRemark=void 0,n.createGroup=void 0,n.joinGroup=void 0,n.inviteUserToGroup=void 0,n.getJoinedGroupList=void 0,n.getJoinedGroupListPage=void 0,n.searchGroups=void 0,n.getSpecifiedGroupsInfo=void 0,n.setGroupInfo=void 0,n.getGroupApplicationListAsRecipient=void 0,n.getGroupApplicationListAsApplicant=void 0,n.acceptGroupApplication=void 0,n.refuseGroupApplication=void 0,n.getGroupMemberList=void 0,n.getSpecifiedGroupMembersInfo=void 0,n.searchGroupMembers=void 0,n.setGroupMemberInfo=void 0,n.getGroupMemberOwnerAndAdmin=void 0,n.getGroupMemberListByJoinTimeFilter=void 0,n.kickGroupMember=void 0,n.changeGroupMemberMute=void 0,n.changeGroupMute=void 0,n.transferGroupOwner=void 0,n.dismissGroup=void 0,n.quitGroup=void 0,n.createTextMessage=void 0,n.createTextAtMessage=void 0,n.createImageMessageByURL=void 0,n.createSoundMessageByURL=void 0,n.createVideoMessageByURL=void 0,n.createFileMessageByURL=void 0,n.createMergerMessage=void 0,n.createForwardMessage=void 0,n.createLocationMessage=void 0,n.createQuoteMessage=void 0,n.createCardMessage=void 0,n.createCustomMessage=void 0,n.createFaceMessage=void 0,n.sendMessage=void 0,n.sendMessageNotOss=void 0,n.typingStatusUpdate=void 0,n.revokeMessage=void 0,n.deleteMessage=void 0,n.deleteMessageFromLocalStorage=void 0,n.deleteAllMsgFromLocal=void 0,n.deleteAllMsgFromLocalAndSvr=void 0,n.searchLocalMessages=void 0,n.getAdvancedHistoryMessageList=void 0,n.getAdvancedHistoryMessageListReverse=void 0,n.findMessageList=void 0,n.insertGroupMessageToLocalStorage=void 0,n.insertSingleMessageToLocalStorage=void 0,n.setMessageLocalEx=void 0,n.getAllConversationList=void 0,n.getConversationListSplit=void 0,n.getOneConversation=void 0,n.getMultipleConversation=void 0,n.getConversationIDBySessionType=void 0,n.getTotalUnreadMsgCount=void 0,n.markConversationMessageAsRead=void 0,n.setConversationDraft=void 0,n.pinConversation=void 0,n.setConversationRecvMessageOpt=void 0,n.setConversationPrivateChat=void 0,n.setConversationBurnDuration=void 0,n.resetConversationGroupAtType=void 0,n.hideConversation=void 0,n.hideAllConversation=void 0,n.clearConversationAndDeleteAllMsg=void 0,n.deleteConversationAndDeleteAllMsg=void 0,n.debug=o,Object.assign(n,{}),Object.assign(n,{}),Object.assign(n,{createGroup:n.createRequestFunction(e.RequestApi.CreateGroup,"POST")}),Object.assign(n,{createTextMessage:n.createRequestFunction(e.RequestApi.CreateTextMessage,"POST")}),Object.assign(n,{getAllConversationList:n.createRequestFunctionWithoutParams(e.RequestApi.GetAllConversationList,"GET")}),n}var n,s;return s=t,(n=o).prototype=Object.create(s.prototype),n.prototype.constructor=n,i(n,s),o.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},o}(u);e.MessageReceiveOptType=void 0,(l=e.MessageReceiveOptType||(e.MessageReceiveOptType={}))[l.Nomal=0]="Nomal",l[l.NotReceive=1]="NotReceive",l[l.NotNotify=2]="NotNotify",e.AllowType=void 0,(p=e.AllowType||(e.AllowType={}))[p.Allowed=0]="Allowed",p[p.NotAllowed=1]="NotAllowed",e.GroupType=void 0,(g=e.GroupType||(e.GroupType={}))[g.Group=2]="Group",g[g.WorkingGroup=2]="WorkingGroup",e.GroupJoinSource=void 0,(v=e.GroupJoinSource||(e.GroupJoinSource={}))[v.Invitation=2]="Invitation",v[v.Search=3]="Search",v[v.QrCode=4]="QrCode",e.GroupMemberRole=void 0,(M=e.GroupMemberRole||(e.GroupMemberRole={}))[M.Nomal=20]="Nomal",M[M.Admin=60]="Admin",M[M.Owner=100]="Owner",e.GroupVerificationType=void 0,(A=e.GroupVerificationType||(e.GroupVerificationType={}))[A.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",A[A.AllNeed=1]="AllNeed",A[A.AllNot=2]="AllNot",e.MessageStatus=void 0,(m=e.MessageStatus||(e.MessageStatus={}))[m.Sending=1]="Sending",m[m.Succeed=2]="Succeed",m[m.Failed=3]="Failed",e.Platform=void 0,(G=e.Platform||(e.Platform={}))[G.iOS=1]="iOS",G[G.Android=2]="Android",G[G.Windows=3]="Windows",G[G.MacOSX=4]="MacOSX",G[G.Web=5]="Web",G[G.Linux=7]="Linux",G[G.AndroidPad=8]="AndroidPad",G[G.iPad=9]="iPad",e.LogLevel=void 0,(S=e.LogLevel||(e.LogLevel={}))[S.Debug=5]="Debug",S[S.Info=4]="Info",S[S.Warn=3]="Warn",S[S.Error=2]="Error",S[S.Fatal=1]="Fatal",S[S.Panic=0]="Panic",e.ApplicationHandleResult=void 0,(f=e.ApplicationHandleResult||(e.ApplicationHandleResult={}))[f.Unprocessed=0]="Unprocessed",f[f.Agree=1]="Agree",f[f.Reject=-1]="Reject",e.MessageType=void 0,(h=e.MessageType||(e.MessageType={}))[h.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",h[h.TextMessage=101]="TextMessage",h[h.PictureMessage=102]="PictureMessage",h[h.VoiceMessage=103]="VoiceMessage",h[h.VideoMessage=104]="VideoMessage",h[h.FileMessage=105]="FileMessage",h[h.AtTextMessage=106]="AtTextMessage",h[h.MergeMessage=107]="MergeMessage",h[h.CardMessage=108]="CardMessage",h[h.LocationMessage=109]="LocationMessage",h[h.CustomMessage=110]="CustomMessage",h[h.TypingMessage=113]="TypingMessage",h[h.QuoteMessage=114]="QuoteMessage",h[h.FaceMessage=115]="FaceMessage",h[h.FriendAdded=1201]="FriendAdded",h[h.OANotification=1400]="OANotification",h[h.GroupCreated=1501]="GroupCreated",h[h.MemberQuit=1504]="MemberQuit",h[h.GroupOwnerTransferred=1507]="GroupOwnerTransferred",h[h.MemberKicked=1508]="MemberKicked",h[h.MemberInvited=1509]="MemberInvited",h[h.MemberEnter=1510]="MemberEnter",h[h.GroupDismissed=1511]="GroupDismissed",h[h.GroupMemberMuted=1512]="GroupMemberMuted",h[h.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",h[h.GroupMuted=1514]="GroupMuted",h[h.GroupCancelMuted=1515]="GroupCancelMuted",h[h.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",h[h.GroupNameUpdated=1520]="GroupNameUpdated",h[h.BurnMessageChange=1701]="BurnMessageChange",h[h.RevokeMessage=2101]="RevokeMessage",e.SessionType=void 0,(C=e.SessionType||(e.SessionType={}))[C.Single=1]="Single",C[C.Group=3]="Group",C[C.WorkingGroup=3]="WorkingGroup",C[C.Notification=4]="Notification",e.GroupStatus=void 0,(O=e.GroupStatus||(e.GroupStatus={}))[O.Nomal=0]="Nomal",O[O.Baned=1]="Baned",O[O.Dismissed=2]="Dismissed",O[O.Muted=3]="Muted",e.GroupAtType=void 0,(R=e.GroupAtType||(e.GroupAtType={}))[R.AtNormal=0]="AtNormal",R[R.AtMe=1]="AtMe",R[R.AtAll=2]="AtAll",R[R.AtAllAtMe=3]="AtAllAtMe",R[R.AtGroupNotice=4]="AtGroupNotice",e.GroupMemberFilter=void 0,(F=e.GroupMemberFilter||(e.GroupMemberFilter={}))[F.All=0]="All",F[F.Owner=1]="Owner",F[F.Admin=2]="Admin",F[F.Nomal=3]="Nomal",F[F.AdminAndNomal=4]="AdminAndNomal",F[F.AdminAndOwner=5]="AdminAndOwner",e.Relationship=void 0,(y=e.Relationship||(e.Relationship={}))[y.isBlack=0]="isBlack",y[y.isFriend=1]="isFriend",e.LoginStatus=void 0,(L=e.LoginStatus||(e.LoginStatus={}))[L.Logout=1]="Logout",L[L.Logging=2]="Logging",L[L.Logged=3]="Logged",e.OnlineState=void 0,(b=e.OnlineState||(e.OnlineState={}))[b.Online=1]="Online",b[b.Offline=0]="Offline",e.GroupMessageReaderFilter=void 0,(T=e.GroupMessageReaderFilter||(e.GroupMessageReaderFilter={}))[T.Readed=0]="Readed",T[T.UnRead=1]="UnRead",e.SIMSDK=P});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("event-source-polyfill")):"function"==typeof define&&define.amd?define(["exports","event-source-polyfill"],t):t((e||self).simSdkWeb={},e.eventSourcePolyfill)}(this,function(e,t){function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)({}).hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},o.apply(null,arguments)}function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function r(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var i,s,a=/*#__PURE__*/function(){function e(e){this.url=void 0,this.token=void 0,this.eventSource=null,this.reconnectAttempts=0,this.maxReconnectAttempts=5,this.reconnectTimeout=5e3,this.reconnectTimer=null,this.handlers=new Map,this.connected=!1,this.onMessageCallback=void 0,this.onReconnectSuccessCallback=void 0,this.url=e.url,this.token=e.token,this.reconnectTimeout=e.retryInterval||5e3,this.maxReconnectAttempts=e.maxRetries||5,this.onMessageCallback=e.onMessage,this.onReconnectSuccessCallback=e.onReconnectSuccess}var o=e.prototype;return o.removeAllEventListeners=function(){var e=this;this.eventSource&&(this.eventSource.removeEventListener("open",this.onOpen),this.handlers.forEach(function(t,o){var n;null==(n=e.eventSource)||n.removeEventListener(o,t)}),this.eventSource.removeEventListener("error",this.onError))},o.subscribe=function(e,t){this.handlers.set(e,t),this.connect()},o.connect=function(){var e=this;return this.connected&&this.eventSource?Promise.reject(new Error("SSE is already connected!")):new Promise(function(o,n){try{e.eventSource=new t.EventSourcePolyfill(e.url,{heartbeatTimeout:36e5,withCredentials:!1,headers:{Authorization:"Bearer "+e.token}}),e.eventSource.addEventListener("open",function(t){e.onOpen(t),o("SSE connect successful!")}),e.eventSource.addEventListener("message",function(t){e.handleMessage(t.data)}),e.handlers.forEach(function(t,o){var n;null==(n=e.eventSource)||n.addEventListener(o,e.onMessage(t))}),e.eventSource.addEventListener("error",function(t){e.onError(t),e.connected||n("SSE connect error.")})}catch(t){console.error("Failed to create EventSource:",t),e.handleReconnect(),n(t)}})},o.onOpen=function(e){console.log("SSE connection established"),this.connected=!0,this.reconnectAttempts>0&&this.onReconnectSuccessCallback&&this.onReconnectSuccessCallback(),this.reconnectAttempts=0,this.reconnectTimeout=5e3},o.handleMessage=function(e){try{console.log("SSE handleMessage ",e);var t=JSON.parse(e);this.onMessageCallback&&this.onMessageCallback(t)}catch(e){console.error("数据解析错误:",e)}},o.onMessage=function(e){return function(t){try{var o=JSON.parse(t.data);console.log("Received SSE message:",o),"function"==typeof e&&e(o)}catch(e){console.error("Failed to parse SSE message:",e)}}},o.onError=function(e){console.error("SSE connection error:",e),this.connected=!1,401===e.status||e.statusText&&e.statusText.includes("Unauthorized")?this.cleanup():this.handleReconnect()},o.handleReconnect=function(){var e=this;if(null===this.reconnectTimer){if(this.reconnectAttempts>=this.maxReconnectAttempts)return console.error("Max reconnection attempts reached"),void this.destroySse();console.log("Attempting to reconnect in "+this.reconnectTimeout/1e3+" seconds..."),this.cleanup(),this.reconnectTimer=window.setTimeout(function(){e.reconnectAttempts++,e.reconnectTimeout=Math.min(2*e.reconnectTimeout,3e4),e.reconnectTimer=null,e.connect()},this.reconnectTimeout)}},o.cleanup=function(){this.eventSource&&(this.removeAllEventListeners(),this.eventSource.close(),this.eventSource=null),this.connected=!1},o.unsubscribe=function(){this.cleanup(),this.handlers.clear(),null!==this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)},o.destroySse=function(){this.unsubscribe(),this.reconnectAttempts=this.maxReconnectAttempts},o.close=function(){this.destroySse(),console.log("SSE 连接已关闭")},o.isConnected=function(){return this.connected},e}();e.ErrorCode=void 0,(i=e.ErrorCode||(e.ErrorCode={}))[i.ConnectionEstablishmentFailed=1e4]="ConnectionEstablishmentFailed",i[i.ResourceLoadNotCompleteError=10004]="ResourceLoadNotCompleteError",i[i.UnknownError=10005]="UnknownError",i[i.LoginRepeatError=10102]="LoginRepeatError",e.RequestApi=void 0,(s=e.RequestApi||(e.RequestApi={})).Login="/chat/member/login",s.Logout="Logout",s.CreateGroup="CreateGroup",s.GetGroupInfo="/chat/group/info",s.GetAllConversationList="/chat/group/list",s.CreateTextMessage="/chat/message/push",s.GetHistoryMessageList="/chat/message/pull";var c,u,d,l,p,v,g,h,m,f,S,M,E,A,T,y,G,R,b,P,O,C=/*#__PURE__*/function(){function t(e){this.simSDK=void 0,this.simSDK=e}var o=t.prototype;return o.createGroup=function(t){try{return Promise.resolve(this.simSDK.sendRequest({data:t,url:e.RequestApi.CreateGroup,method:"POST"}))}catch(e){return Promise.reject(e)}},o.getGroupInfo=function(t){try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:t},url:e.RequestApi.GetGroupInfo,method:"GET"}))}catch(e){return Promise.reject(e)}},t}();e.MessageReceiveOptType=void 0,(c=e.MessageReceiveOptType||(e.MessageReceiveOptType={}))[c.Nomal=0]="Nomal",c[c.NotReceive=1]="NotReceive",c[c.NotNotify=2]="NotNotify",e.AllowType=void 0,(u=e.AllowType||(e.AllowType={}))[u.Allowed=0]="Allowed",u[u.NotAllowed=1]="NotAllowed",e.GroupType=void 0,(d=e.GroupType||(e.GroupType={}))[d.Group=2]="Group",d[d.WorkingGroup=2]="WorkingGroup",e.GroupJoinSource=void 0,(l=e.GroupJoinSource||(e.GroupJoinSource={}))[l.Invitation=2]="Invitation",l[l.Search=3]="Search",l[l.QrCode=4]="QrCode",e.GroupMemberRole=void 0,(p=e.GroupMemberRole||(e.GroupMemberRole={}))[p.Nomal=20]="Nomal",p[p.Admin=60]="Admin",p[p.Owner=100]="Owner",e.GroupVerificationType=void 0,(v=e.GroupVerificationType||(e.GroupVerificationType={}))[v.ApplyNeedInviteNot=0]="ApplyNeedInviteNot",v[v.AllNeed=1]="AllNeed",v[v.AllNot=2]="AllNot",e.Platform=void 0,(g=e.Platform||(e.Platform={}))[g.iOS=1]="iOS",g[g.Android=2]="Android",g[g.Windows=3]="Windows",g[g.MacOSX=4]="MacOSX",g[g.Web=5]="Web",g[g.Linux=7]="Linux",g[g.AndroidPad=8]="AndroidPad",g[g.iPad=9]="iPad",e.LogLevel=void 0,(h=e.LogLevel||(e.LogLevel={}))[h.Debug=5]="Debug",h[h.Info=4]="Info",h[h.Warn=3]="Warn",h[h.Error=2]="Error",h[h.Fatal=1]="Fatal",h[h.Panic=0]="Panic",e.ApplicationHandleResult=void 0,(m=e.ApplicationHandleResult||(e.ApplicationHandleResult={}))[m.Unprocessed=0]="Unprocessed",m[m.Agree=1]="Agree",m[m.Reject=-1]="Reject",e.MessageType=void 0,(f=e.MessageType||(e.MessageType={}))[f.MESSAGE_TYPE_TEXT=0]="MESSAGE_TYPE_TEXT",f[f.TextMessage=101]="TextMessage",f[f.PictureMessage=102]="PictureMessage",f[f.VoiceMessage=103]="VoiceMessage",f[f.VideoMessage=104]="VideoMessage",f[f.FileMessage=105]="FileMessage",f[f.AtTextMessage=106]="AtTextMessage",f[f.MergeMessage=107]="MergeMessage",f[f.CardMessage=108]="CardMessage",f[f.LocationMessage=109]="LocationMessage",f[f.CustomMessage=110]="CustomMessage",f[f.TypingMessage=113]="TypingMessage",f[f.QuoteMessage=114]="QuoteMessage",f[f.FaceMessage=115]="FaceMessage",f[f.FriendAdded=1201]="FriendAdded",f[f.OANotification=1400]="OANotification",f[f.GroupCreated=1501]="GroupCreated",f[f.MemberQuit=1504]="MemberQuit",f[f.GroupOwnerTransferred=1507]="GroupOwnerTransferred",f[f.MemberKicked=1508]="MemberKicked",f[f.MemberInvited=1509]="MemberInvited",f[f.MemberEnter=1510]="MemberEnter",f[f.GroupDismissed=1511]="GroupDismissed",f[f.GroupMemberMuted=1512]="GroupMemberMuted",f[f.GroupMemberCancelMuted=1513]="GroupMemberCancelMuted",f[f.GroupMuted=1514]="GroupMuted",f[f.GroupCancelMuted=1515]="GroupCancelMuted",f[f.GroupAnnouncementUpdated=1519]="GroupAnnouncementUpdated",f[f.GroupNameUpdated=1520]="GroupNameUpdated",f[f.BurnMessageChange=1701]="BurnMessageChange",f[f.RevokeMessage=2101]="RevokeMessage",e.SessionType=void 0,(S=e.SessionType||(e.SessionType={}))[S.Single=1]="Single",S[S.Group=3]="Group",S[S.WorkingGroup=3]="WorkingGroup",S[S.Notification=4]="Notification",e.GroupStatus=void 0,(M=e.GroupStatus||(e.GroupStatus={}))[M.Nomal=0]="Nomal",M[M.Baned=1]="Baned",M[M.Dismissed=2]="Dismissed",M[M.Muted=3]="Muted",e.GroupAtType=void 0,(E=e.GroupAtType||(e.GroupAtType={}))[E.AtNormal=0]="AtNormal",E[E.AtMe=1]="AtMe",E[E.AtAll=2]="AtAll",E[E.AtAllAtMe=3]="AtAllAtMe",E[E.AtGroupNotice=4]="AtGroupNotice",e.GroupMemberFilter=void 0,(A=e.GroupMemberFilter||(e.GroupMemberFilter={}))[A.All=0]="All",A[A.Owner=1]="Owner",A[A.Admin=2]="Admin",A[A.Nomal=3]="Nomal",A[A.AdminAndNomal=4]="AdminAndNomal",A[A.AdminAndOwner=5]="AdminAndOwner",e.Relationship=void 0,(T=e.Relationship||(e.Relationship={}))[T.isBlack=0]="isBlack",T[T.isFriend=1]="isFriend",e.LoginStatus=void 0,(y=e.LoginStatus||(e.LoginStatus={}))[y.Logout=1]="Logout",y[y.Logging=2]="Logging",y[y.Logged=3]="Logged",e.OnlineState=void 0,(G=e.OnlineState||(e.OnlineState={}))[G.Online=1]="Online",G[G.Offline=0]="Offline",e.GroupMessageReaderFilter=void 0,(R=e.GroupMessageReaderFilter||(e.GroupMessageReaderFilter={}))[R.Readed=0]="Readed",R[R.UnRead=1]="UnRead",e.MSG_TYPE=void 0,(b=e.MSG_TYPE||(e.MSG_TYPE={}))[b.TEXT=0]="TEXT",b[b.IMAGE=1]="IMAGE",b[b.FILE=2]="FILE",b[b.VIDEO=3]="VIDEO",b[b.LINK=4]="LINK",b[b.GIF=5]="GIF",e.SSE_RESPONSE_TYPE=void 0,(P=e.SSE_RESPONSE_TYPE||(e.SSE_RESPONSE_TYPE={}))[P.EVENT_PONG_CONN=0]="EVENT_PONG_CONN",P[P.EVENT_PONG_RE_CONN=1]="EVENT_PONG_RE_CONN",P[P.EVENT_PONG_IDLE=2]="EVENT_PONG_IDLE",P[P.EVENT_MESSAGE_PUSH=3]="EVENT_MESSAGE_PUSH",e.MessageSendStatus=void 0,(O=e.MessageSendStatus||(e.MessageSendStatus={}))[O.Sending=1]="Sending",O[O.Succeed=2]="Succeed",O[O.Failed=3]="Failed";var N,L=/*#__PURE__*/function(){function t(e){this.simSDK=void 0,this.simSDK=e}var n=t.prototype;return n.sendMessage=function(e,t){try{var o=this;return Promise.resolve(function(n,r){try{var i=Promise.resolve(o.simSDK.sendRequest({data:e,url:t,method:"POST"}))}catch(e){return r(e)}return i&&i.then?i.then(void 0,r):i}(0,function(e){throw console.error("Failed to send message",e),e}))}catch(e){return Promise.reject(e)}},n.createMessage=function(e,t,n,r,i){var s;void 0===n&&(n={});var a=o({},n,((s={msgType:e})[r]=i,s.status=0,s));return this.sendMessage(a,t)},n.createTextMessage=function(t,o){void 0===o&&(o={});try{return Promise.resolve(this.createMessage(e.MSG_TYPE.TEXT,e.RequestApi.CreateTextMessage,o,"text",t))}catch(e){return Promise.reject(e)}},n.createImageMessage=function(t,o){void 0===o&&(o={});try{return Promise.resolve(this.createMessage(e.MSG_TYPE.IMAGE,e.RequestApi.CreateTextMessage,o,"snapshot",t))}catch(e){return Promise.reject(e)}},n.getHistoryMessageList=function(t){var o=t.groupId,n=t.lastId,r=t.size,i=void 0===r?20:r;try{return Promise.resolve(this.simSDK.sendRequest({data:{groupId:o,lastId:n,size:i},url:e.RequestApi.GetHistoryMessageList,method:"POST"}))}catch(e){return Promise.reject(e)}},t}();e.CbEvents=void 0,(N=e.CbEvents||(e.CbEvents={})).onReceiveMessage="onReceiveMessage",N.onReceiveMessages="onReceiveMessages",N.OnKickedOffline="OnKickedOffline",N.OnUserTokenInvalid="OnUserTokenInvalid",N.OnUserTokenExpired="OnUserTokenExpired";var k="undefined"!=typeof uni,F="undefined"!=typeof window,I=/*#__PURE__*/function(t){function o(o){var n;return void 0===o&&(o=!0),(n=t.call(this)||this).username=void 0,n.token=void 0,n.appKey=void 0,n.apiAddr=void 0,n.sseClient=void 0,n.debug=void 0,n.messageService=void 0,n.groupService=void 0,n.sendRequest=function(e){return n.log("%cSDK =>%c [sendRequest] url:"+e.url+" [method]: "+e.method+" args "+JSON.stringify(e.data),"font-size:14px; background:#7CAEFF; border-radius:4px; padding-inline:4px;",""),function(e){try{return Promise.resolve(k?new Promise(function(t,o){uni.request({url:e.url,method:e.method||"GET",header:e.headers,data:e.data,success:function(e){return t(e.data)},fail:function(e){return o(e)}})}):function(){if(F)return console.log("isBrowser ",F),console.log("options ",e),Promise.resolve(fetch(e.url,{method:e.method||"GET",headers:e.headers,body:e.data?JSON.stringify(e.data):null})).then(function(e){return Promise.resolve(e.json())})}())}catch(e){return Promise.reject(e)}}({url:n.apiAddr+e.url,method:e.method,headers:{"Content-Type":"application/json",Authorization:"Bearer "+n.token},data:e.data})},n.createRequestFunction=function(e,t){return function(o){return n.sendRequest({data:o,url:e,method:t})}},n.createRequestFunctionWithoutParams=function(e,t){return function(){return n.sendRequest({data:void 0,method:t,username:n.username,url:e})}},n.handleMessage=function(e){console.log("handleMessage response",e)},n.handleReconnectSuccess=function(){},n.login=function(t){try{return n.sseClient?Promise.resolve("login repeat"):(console.log("login params ",t),n.apiAddr=t.apiAddr,n.token=t.token,console.log("this.apiAddr ",n.apiAddr),Promise.resolve(n.sendRequest({data:t,url:e.RequestApi.Login,method:"POST"})).then(function(e){var o=e.code,r=e.data;if(0!=o)return console.log("code ",o),Promise.resolve("Login failed, Server error, error code is "+o);var i=n.apiAddr+"/chat/sse/conn?username="+t.username+"&token="+t.token+"&appKey="+t.appKey+"&random="+r;n.username=t.username,n.token=t.token,n.appKey=t.appKey,n.sseClient=new a({url:i,onMessage:n.handleMessage,onReconnectSuccess:n.handleReconnectSuccess,token:t.token});try{return n.sseClient.connect()}catch(e){return Promise.reject(e.message)}}))}catch(e){return Promise.reject(e)}},n.logout=n.createRequestFunctionWithoutParams(e.RequestApi.Logout,"DELETE"),n.internalUploadFile=function(e){try{try{return Promise.resolve({})}catch(e){return console.error("Upload failed:",e),Promise.resolve({error:e})}}catch(e){return Promise.reject(e)}},n.uploadFile=function(t){var o=t.file;try{return Promise.resolve(n.internalUploadFile(o)).then(function(t){var o,n=t.url,r=t.error;return{data:{url:void 0===n?"":n},msg:null!=(o=null==r?void 0:r.message)?o:"",code:r?e.ErrorCode.UnknownError:0}})}catch(e){return Promise.reject(e)}},n.getSelfUserInfo=void 0,n.setSelfInfo=void 0,n.getUsersInfoWithCache=void 0,n.subscribeUsersStatus=void 0,n.unsubscribeUsersStatus=void 0,n.getSubscribeUsersStatus=void 0,n.setAppBackgroundStatus=void 0,n.networkStatusChanged=void 0,n.setGlobalRecvMessageOpt=void 0,n.acceptFriendApplication=void 0,n.addBlack=void 0,n.addFriend=void 0,n.checkFriend=void 0,n.deleteFriend=void 0,n.getBlackList=void 0,n.getFriendApplicationListAsApplicant=void 0,n.getFriendApplicationListAsRecipient=void 0,n.getFriendList=void 0,n.getFriendListPage=void 0,n.getSpecifiedFriendsInfo=void 0,n.refuseFriendApplication=void 0,n.removeBlack=void 0,n.searchFriends=void 0,n.setFriendRemark=void 0,n.getAllConversationList=void 0,n.getConversationListSplit=void 0,n.getOneConversation=void 0,n.getMultipleConversation=void 0,n.getConversationIDBySessionType=void 0,n.getTotalUnreadMsgCount=void 0,n.markConversationMessageAsRead=void 0,n.setConversationDraft=void 0,n.pinConversation=void 0,n.setConversationRecvMessageOpt=void 0,n.setConversationPrivateChat=void 0,n.setConversationBurnDuration=void 0,n.resetConversationGroupAtType=void 0,n.hideConversation=void 0,n.hideAllConversation=void 0,n.clearConversationAndDeleteAllMsg=void 0,n.deleteConversationAndDeleteAllMsg=void 0,n.debug=o,Object.assign(n,{}),Object.assign(n,{}),Object.assign(n,{getAllConversationList:n.createRequestFunctionWithoutParams(e.RequestApi.GetAllConversationList,"GET")}),n.messageService=new L(n),n.groupService=new C(n),n}var i,s,c,u;return s=t,(i=o).prototype=Object.create(s.prototype),i.prototype.constructor=i,n(i,s),o.prototype.log=function(){var e;this.debug&&(e=console).info.apply(e,[].slice.call(arguments))},c=o,(u=[{key:"createGroup",get:function(){var e=this;return function(t){return e.groupService.createGroup(t)}}},{key:"getGroupInfo",get:function(){var e=this;return function(t){return e.groupService.getGroupInfo(t)}}},{key:"createTextMessage",get:function(){return this.messageService.createTextMessage.bind(this.messageService)}},{key:"getHistoryMessageList",get:function(){var e=this;return console.log("sdk getHistoryMessageList"),function(t){return e.messageService.getHistoryMessageList(t)}}},{key:"uuid",get:function(){return(36*Math.random()).toString(36).slice(2)+(new Date).getTime().toString()}}])&&function(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,r(n.key),n)}}(c.prototype,u),Object.defineProperty(c,"prototype",{writable:!1}),c}(/*#__PURE__*/function(){function t(){var t;this.events=((t={})[e.CbEvents.onReceiveMessage]=[],t[e.CbEvents.onReceiveMessages]=[],t)}var o=t.prototype;return o.emit=function(e,t){var o=this.events[e];return o&&o.forEach(function(e){return e(t)}),this},o.on=function(e,t){var o;return this.events[e]||(this.events[e]=[]),null==(o=this.events[e])||o.push(t),this},o.off=function(e,t){var o=this.events[e];if(o){var n=o.indexOf(t);n>-1&&(o.splice(n,1),0===o.length&&delete this.events[e])}return this},t}());e.GROUP_TYPE={ONE_ON_ONE:0,GROUP_CHAT:1,CUSTOMER_SERVICE:2},e.MessageStatus={NORMAL:0,EDITED:1,DELETED:2},e.SIMSDK=I});
@@ -1,13 +1,21 @@
1
1
  import { RequestApi } from '../constant/api';
2
- import type { AllowType, ApplicationHandleResult, GroupJoinSource, GroupMemberRole, GroupStatus, GroupType, GroupVerificationType, MessageReceiveOptType, MessageType, OnlineState, Platform, Relationship, SessionType } from './enum';
2
+ import { AllowType, ApplicationHandleResult, GroupJoinSource, GroupMemberRole, GroupStatus, GroupType, GroupVerificationType, MessageReceiveOptType, MessageType, OnlineState, Platform, Relationship, SessionType, SSE_RESPONSE_TYPE } from './enum';
3
3
  import { HttpMethod } from '../utils/request';
4
- export interface WsRequest {
4
+ export interface Request {
5
5
  url: RequestApi;
6
6
  username?: string;
7
7
  data: Record<string, any> | undefined;
8
8
  method: HttpMethod;
9
9
  }
10
- export interface SseResponse<T = unknown> {
10
+ export interface SseResponse {
11
+ type: SSE_RESPONSE_TYPE;
12
+ content: MessageReceiveOptType[];
13
+ }
14
+ export interface SseData {
15
+ ev: number;
16
+ dt: string;
17
+ }
18
+ export interface ServerResponse<T = unknown> {
11
19
  type?: MessageType;
12
20
  code: number;
13
21
  msg: string;
@@ -15,8 +23,8 @@ export interface SseResponse<T = unknown> {
15
23
  timestamp?: number;
16
24
  }
17
25
  export interface PromiseMap {
18
- resolve: (response: SseResponse) => void;
19
- reject: (response: SseResponse) => void;
26
+ resolve: (response: ServerResponse) => void;
27
+ reject: (response: ServerResponse) => void;
20
28
  }
21
29
  export type Pagination = {
22
30
  offset: number;
@@ -177,8 +185,23 @@ export type ConversationItem = {
177
185
  status: number;
178
186
  latest: MessageItem;
179
187
  };
188
+ export type HistoryMessageParam = {
189
+ groupId: string;
190
+ lastId: string;
191
+ size?: number;
192
+ };
193
+ export type PageParam<T> = {
194
+ current: number;
195
+ pages: number;
196
+ size?: number;
197
+ total?: number;
198
+ records: T[];
199
+ };
200
+ interface AvatarMap {
201
+ [username: string]: string;
202
+ }
180
203
  export type MessageItem = {
181
- id: number;
204
+ id: number | null;
182
205
  msgId: string;
183
206
  groupType: number;
184
207
  groupId: number;
@@ -194,7 +217,85 @@ export type MessageItem = {
194
217
  createTime: Date;
195
218
  updateTime?: Date;
196
219
  status: number;
220
+ avatar?: string;
197
221
  };
222
+ export interface GroupInfoVO {
223
+ /**
224
+ * 群名称
225
+ */
226
+ name: string;
227
+ /**
228
+ * 聊天群类型: 0:一对一私聊 ,1:群聊,2:客服聊天
229
+ */
230
+ groupType: number;
231
+ createTime: number;
232
+ updateTime: number;
233
+ /**
234
+ * 创建人
235
+ */
236
+ createBy: number;
237
+ /**
238
+ * 群头像
239
+ */
240
+ avatar: string;
241
+ /**
242
+ * 群公告
243
+ */
244
+ announcement: string;
245
+ /**
246
+ * 群二维码
247
+ */
248
+ qrCode: string;
249
+ /**
250
+ * pin消息列表
251
+ */
252
+ pinMsg: string;
253
+ /**
254
+ * 群成员人数
255
+ */
256
+ membersCount: number;
257
+ memberVOList: GroupMemberVO[];
258
+ /**
259
+ * 人数上限
260
+ */
261
+ memberLimit: number;
262
+ imagesCount: number;
263
+ videosCount: number;
264
+ filesCount: number;
265
+ linksCount: number;
266
+ gifsCount: number;
267
+ /**
268
+ * 群状态: 0:正常,1禁止发言,2解散
269
+ */
270
+ status: number;
271
+ }
272
+ export interface GroupMemberVO {
273
+ username: string;
274
+ /**
275
+ * 群成员状态: 0:正常, 1:禁言, 2:删除
276
+ */
277
+ status: number;
278
+ /**
279
+ * 群身份: 0: owner, 1: admin, 2: user
280
+ */
281
+ identity: number;
282
+ remark: string;
283
+ /**
284
+ * 最后查看消息的时间
285
+ */
286
+ lastSeenTime: number;
287
+ /**
288
+ * 是否已经添加了好友
289
+ */
290
+ contact: boolean;
291
+ }
292
+ export interface HistoryMessageResponse {
293
+ groupChatList: MessageItem[];
294
+ groupId: number;
295
+ latest: MessageItem;
296
+ avatarMap: AvatarMap;
297
+ userId: number | null;
298
+ }
198
299
  export type TextElem = {
199
300
  content: string;
200
301
  };
@@ -398,3 +499,4 @@ export type GroupMessageReadInfo = {
398
499
  unreadCount: number;
399
500
  readMembers: GroupMemberItem[];
400
501
  };
502
+ export {};
@@ -26,11 +26,6 @@ export declare enum GroupVerificationType {
26
26
  AllNeed = 1,
27
27
  AllNot = 2
28
28
  }
29
- export declare enum MessageStatus {
30
- Sending = 1,
31
- Succeed = 2,
32
- Failed = 3
33
- }
34
29
  export declare enum Platform {
35
30
  iOS = 1,
36
31
  Android = 2,
@@ -131,3 +126,32 @@ export declare enum GroupMessageReaderFilter {
131
126
  Readed = 0,
132
127
  UnRead = 1
133
128
  }
129
+ export declare const GROUP_TYPE: {
130
+ ONE_ON_ONE: number;
131
+ GROUP_CHAT: number;
132
+ CUSTOMER_SERVICE: number;
133
+ };
134
+ export declare enum MSG_TYPE {
135
+ TEXT = 0,
136
+ IMAGE = 1,
137
+ FILE = 2,
138
+ VIDEO = 3,
139
+ LINK = 4,
140
+ GIF = 5
141
+ }
142
+ export declare enum SSE_RESPONSE_TYPE {
143
+ EVENT_PONG_CONN = 0,
144
+ EVENT_PONG_RE_CONN = 1,
145
+ EVENT_PONG_IDLE = 2,
146
+ EVENT_MESSAGE_PUSH = 3
147
+ }
148
+ export declare enum MessageSendStatus {
149
+ Sending = 1,
150
+ Succeed = 2,
151
+ Failed = 3
152
+ }
153
+ export declare const MessageStatus: {
154
+ NORMAL: number;
155
+ EDITED: number;
156
+ DELETED: number;
157
+ };
@@ -0,0 +1,37 @@
1
+ import { SseData } from '../types/entity';
2
+ interface SseOptions {
3
+ url: string;
4
+ token: string;
5
+ retryInterval?: number;
6
+ maxRetries?: number;
7
+ onMessage?: (response: SseData) => void;
8
+ onReconnectSuccess?: () => void;
9
+ }
10
+ declare class SseClient {
11
+ private url;
12
+ private token;
13
+ private eventSource;
14
+ private reconnectAttempts;
15
+ private maxReconnectAttempts;
16
+ private reconnectTimeout;
17
+ private reconnectTimer;
18
+ private handlers;
19
+ private connected;
20
+ private onMessageCallback?;
21
+ private onReconnectSuccessCallback?;
22
+ constructor(options: SseOptions);
23
+ private removeAllEventListeners;
24
+ subscribe(type: string, handler: Function): void;
25
+ connect(): Promise<string>;
26
+ private onOpen;
27
+ private handleMessage;
28
+ private onMessage;
29
+ private onError;
30
+ private handleReconnect;
31
+ private cleanup;
32
+ unsubscribe(): void;
33
+ destroySse(): void;
34
+ close(): void;
35
+ isConnected(): boolean;
36
+ }
37
+ export default SseClient;
@@ -1,11 +1,10 @@
1
1
  import { CbEvents } from '../constant/callback';
2
- import type { SseResponse } from '../types/entity';
3
- type Cbfn = (data: SseResponse) => void;
2
+ type Cbfn<T> = (data: T) => void;
4
3
  declare class Emitter {
5
4
  private events;
6
5
  constructor();
7
- emit(event: CbEvents, data: SseResponse): this;
8
- on(event: CbEvents, fn: Cbfn): this;
9
- off(event: CbEvents, fn: Cbfn): this | undefined;
6
+ emit<T>(event: CbEvents, data?: T): this;
7
+ on<T>(event: CbEvents, fn: Cbfn<T>): this;
8
+ off<T>(event: CbEvents, fn: Cbfn<T>): this;
10
9
  }
11
10
  export default Emitter;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sim-sdk-web",
3
- "version": "v1.0.15",
3
+ "version": "v1.0.17",
4
4
  "description": "Sim SDK for Web",
5
5
  "source": "src/index.ts",
6
6
  "main": "lib/index.js",
@@ -33,7 +33,7 @@
33
33
  ],
34
34
  "license": "Apache-2.0",
35
35
  "devDependencies": {
36
- "@types/eventsource": "^1.1.15",
36
+ "@types/event-source-polyfill": "^1.0.5",
37
37
  "@typescript-eslint/parser": "^6.9.1",
38
38
  "microbundle": "^0.15.1",
39
39
  "prettier": "^3.0.3",
@@ -42,6 +42,6 @@
42
42
  "typescript": "^5.2.2"
43
43
  },
44
44
  "dependencies": {
45
- "eventsource": "^2.0.2"
45
+ "event-source-polyfill": "^1.0.31"
46
46
  }
47
47
  }
@@ -1,27 +0,0 @@
1
- import type { SseResponse } from '../types/entity';
2
- interface SseOptions {
3
- url: string;
4
- authorizationToken: string;
5
- retryInterval?: number;
6
- maxRetries?: number;
7
- onMessage: (response: SseResponse) => void;
8
- onReconnectSuccess: () => void;
9
- }
10
- declare class SseManager {
11
- private url;
12
- private authorizationToken;
13
- private retryInterval;
14
- private maxRetries;
15
- private reconnectAttempts;
16
- private eventSource;
17
- private connected;
18
- private onMessage;
19
- private onReconnectSuccess;
20
- constructor(options: SseOptions);
21
- connect: () => Promise<string>;
22
- private handleMessage;
23
- private reconnect;
24
- close(): void;
25
- isConnected(): boolean;
26
- }
27
- export default SseManager;