@sendbird/sendbird-platform-sdk-typescript 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. package/.env.test +2 -0
  2. package/.openapi-generator/FILES +158 -0
  3. package/.openapi-generator/VERSION +1 -0
  4. package/.openapi-generator-ignore +23 -0
  5. package/AnnouncementApi.md +100 -0
  6. package/BotApi.md +401 -0
  7. package/CHANGELOG +83 -0
  8. package/GroupChannelApi.md +1429 -0
  9. package/MessageApi.md +826 -0
  10. package/MetadataApi.md +274 -0
  11. package/ModerationApi.md +338 -0
  12. package/OpenChannelApi.md +540 -0
  13. package/PinAMessageApi.md +73 -0
  14. package/PollApi.md +787 -0
  15. package/PrivacyApi.md +251 -0
  16. package/PushNotificationsApi.md +124 -0
  17. package/README.md +104 -0
  18. package/ReportApi.md +554 -0
  19. package/ScheduledMessageApi.md +524 -0
  20. package/StatisticsApi.md +125 -0
  21. package/UserApi.md +1868 -0
  22. package/WebhookApi.md +132 -0
  23. package/apis/AnnouncementApi.ts +96 -0
  24. package/apis/BotApi.ts +471 -0
  25. package/apis/GroupChannelApi.ts +1865 -0
  26. package/apis/MessageApi.ts +1150 -0
  27. package/apis/MetadataApi.ts +365 -0
  28. package/apis/ModerationApi.ts +449 -0
  29. package/apis/OpenChannelApi.ts +676 -0
  30. package/apis/StatisticsApi.ts +155 -0
  31. package/apis/UserApi.ts +2454 -0
  32. package/apis/baseapi.ts +37 -0
  33. package/apis/exception.ts +15 -0
  34. package/auth/auth.ts +54 -0
  35. package/catalog-info.yaml +12 -0
  36. package/configuration.ts +66 -0
  37. package/dist/apis/AnnouncementApi.d.ts +11 -0
  38. package/dist/apis/AnnouncementApi.js +54 -0
  39. package/dist/apis/AnnouncementApi.js.map +1 -0
  40. package/dist/apis/BotApi.d.ts +26 -0
  41. package/dist/apis/BotApi.js +237 -0
  42. package/dist/apis/BotApi.js.map +1 -0
  43. package/dist/apis/GroupChannelApi.d.ts +63 -0
  44. package/dist/apis/GroupChannelApi.js +897 -0
  45. package/dist/apis/GroupChannelApi.js.map +1 -0
  46. package/dist/apis/MessageApi.d.ts +40 -0
  47. package/dist/apis/MessageApi.js +562 -0
  48. package/dist/apis/MessageApi.js.map +1 -0
  49. package/dist/apis/MetadataApi.d.ts +18 -0
  50. package/dist/apis/MetadataApi.js +186 -0
  51. package/dist/apis/MetadataApi.js.map +1 -0
  52. package/dist/apis/ModerationApi.d.ts +24 -0
  53. package/dist/apis/ModerationApi.js +224 -0
  54. package/dist/apis/ModerationApi.js.map +1 -0
  55. package/dist/apis/OpenChannelApi.d.ts +29 -0
  56. package/dist/apis/OpenChannelApi.js +335 -0
  57. package/dist/apis/OpenChannelApi.js.map +1 -0
  58. package/dist/apis/StatisticsApi.d.ts +13 -0
  59. package/dist/apis/StatisticsApi.js +83 -0
  60. package/dist/apis/StatisticsApi.js.map +1 -0
  61. package/dist/apis/UserApi.d.ts +92 -0
  62. package/dist/apis/UserApi.js +1185 -0
  63. package/dist/apis/UserApi.js.map +1 -0
  64. package/dist/apis/baseapi.d.ts +18 -0
  65. package/dist/apis/baseapi.js +22 -0
  66. package/dist/apis/baseapi.js.map +1 -0
  67. package/dist/apis/exception.d.ts +10 -0
  68. package/dist/apis/exception.js +10 -0
  69. package/dist/apis/exception.js.map +1 -0
  70. package/dist/auth/auth.d.ts +26 -0
  71. package/dist/auth/auth.js +9 -0
  72. package/dist/auth/auth.js.map +1 -0
  73. package/dist/configuration.d.ts +18 -0
  74. package/dist/configuration.js +17 -0
  75. package/dist/configuration.js.map +1 -0
  76. package/dist/http/http.d.ts +83 -0
  77. package/dist/http/http.js +145 -0
  78. package/dist/http/http.js.map +1 -0
  79. package/dist/http/isomorphic-fetch.d.ts +5 -0
  80. package/dist/http/isomorphic-fetch.js +27 -0
  81. package/dist/http/isomorphic-fetch.js.map +1 -0
  82. package/dist/index.d.ts +10 -0
  83. package/dist/index.js +9 -0
  84. package/dist/index.js.map +1 -0
  85. package/dist/jest.config.d.ts +3 -0
  86. package/dist/jest.config.js +9 -0
  87. package/dist/jest.config.js.map +1 -0
  88. package/dist/jest.setup.d.ts +1 -0
  89. package/dist/jest.setup.js +3 -0
  90. package/dist/jest.setup.js.map +1 -0
  91. package/dist/middleware.d.ts +16 -0
  92. package/dist/middleware.js +13 -0
  93. package/dist/middleware.js.map +1 -0
  94. package/dist/models/AcceptAnInvitationRequest.d.ts +18 -0
  95. package/dist/models/AcceptAnInvitationRequest.js +23 -0
  96. package/dist/models/AcceptAnInvitationRequest.js.map +1 -0
  97. package/dist/models/AddARegistrationOrDeviceTokenRequest.d.ts +19 -0
  98. package/dist/models/AddARegistrationOrDeviceTokenRequest.js +29 -0
  99. package/dist/models/AddARegistrationOrDeviceTokenRequest.js.map +1 -0
  100. package/dist/models/AddARegistrationOrDeviceTokenResponse.d.ts +20 -0
  101. package/dist/models/AddARegistrationOrDeviceTokenResponse.js +29 -0
  102. package/dist/models/AddARegistrationOrDeviceTokenResponse.js.map +1 -0
  103. package/dist/models/AddExtraDataToAMessageRequest.d.ts +18 -0
  104. package/dist/models/AddExtraDataToAMessageRequest.js +17 -0
  105. package/dist/models/AddExtraDataToAMessageRequest.js.map +1 -0
  106. package/dist/models/AddExtraDataToAMessageResponse.d.ts +18 -0
  107. package/dist/models/AddExtraDataToAMessageResponse.js +17 -0
  108. package/dist/models/AddExtraDataToAMessageResponse.js.map +1 -0
  109. package/dist/models/BlockAUserRequest.d.ts +18 -0
  110. package/dist/models/BlockAUserRequest.js +23 -0
  111. package/dist/models/BlockAUserRequest.js.map +1 -0
  112. package/dist/models/BlockAUserResponse.d.ts +19 -0
  113. package/dist/models/BlockAUserResponse.js +23 -0
  114. package/dist/models/BlockAUserResponse.js.map +1 -0
  115. package/dist/models/CheckIfMemberResponse.d.ts +19 -0
  116. package/dist/models/CheckIfMemberResponse.js +23 -0
  117. package/dist/models/CheckIfMemberResponse.js.map +1 -0
  118. package/dist/models/ChooseAPushNotificationContentTemplateRequest.d.ts +18 -0
  119. package/dist/models/ChooseAPushNotificationContentTemplateRequest.js +17 -0
  120. package/dist/models/ChooseAPushNotificationContentTemplateRequest.js.map +1 -0
  121. package/dist/models/ChooseAPushNotificationContentTemplateResponse.d.ts +17 -0
  122. package/dist/models/ChooseAPushNotificationContentTemplateResponse.js +17 -0
  123. package/dist/models/ChooseAPushNotificationContentTemplateResponse.js.map +1 -0
  124. package/dist/models/CreateABotRequest.d.ts +25 -0
  125. package/dist/models/CreateABotRequest.js +65 -0
  126. package/dist/models/CreateABotRequest.js.map +1 -0
  127. package/dist/models/CreateABotResponse.d.ts +26 -0
  128. package/dist/models/CreateABotResponse.js +59 -0
  129. package/dist/models/CreateABotResponse.js.map +1 -0
  130. package/dist/models/CreateABotResponseBot.d.ts +25 -0
  131. package/dist/models/CreateABotResponseBot.js +65 -0
  132. package/dist/models/CreateABotResponseBot.js.map +1 -0
  133. package/dist/models/CreateABotResponseBotStyle.d.ts +21 -0
  134. package/dist/models/CreateABotResponseBotStyle.js +35 -0
  135. package/dist/models/CreateABotResponseBotStyle.js.map +1 -0
  136. package/dist/models/CreateAChannelMetadataRequest.d.ts +18 -0
  137. package/dist/models/CreateAChannelMetadataRequest.js +23 -0
  138. package/dist/models/CreateAChannelMetadataRequest.js.map +1 -0
  139. package/dist/models/CreateAChannelMetadataResponse.d.ts +18 -0
  140. package/dist/models/CreateAChannelMetadataResponse.js +23 -0
  141. package/dist/models/CreateAChannelMetadataResponse.js.map +1 -0
  142. package/dist/models/CreateAGroupChannelRequest.d.ts +37 -0
  143. package/dist/models/CreateAGroupChannelRequest.js +125 -0
  144. package/dist/models/CreateAGroupChannelRequest.js.map +1 -0
  145. package/dist/models/CreateAUserRequest.d.ts +24 -0
  146. package/dist/models/CreateAUserRequest.js +53 -0
  147. package/dist/models/CreateAUserRequest.js.map +1 -0
  148. package/dist/models/CreateAnOpenChannelRequest.d.ts +26 -0
  149. package/dist/models/CreateAnOpenChannelRequest.js +65 -0
  150. package/dist/models/CreateAnOpenChannelRequest.js.map +1 -0
  151. package/dist/models/CreateUserTokenRequest.d.ts +17 -0
  152. package/dist/models/CreateUserTokenRequest.js +17 -0
  153. package/dist/models/CreateUserTokenRequest.js.map +1 -0
  154. package/dist/models/CreateUserTokenResponse.d.ts +18 -0
  155. package/dist/models/CreateUserTokenResponse.js +23 -0
  156. package/dist/models/CreateUserTokenResponse.js.map +1 -0
  157. package/dist/models/FreezeAGroupChannelRequest.d.ts +17 -0
  158. package/dist/models/FreezeAGroupChannelRequest.js +17 -0
  159. package/dist/models/FreezeAGroupChannelRequest.js.map +1 -0
  160. package/dist/models/FreezeAnOpenChannelRequest.d.ts +17 -0
  161. package/dist/models/FreezeAnOpenChannelRequest.js +17 -0
  162. package/dist/models/FreezeAnOpenChannelRequest.js.map +1 -0
  163. package/dist/models/GetAGroupChannelResponse.d.ts +75 -0
  164. package/dist/models/GetAGroupChannelResponse.js +287 -0
  165. package/dist/models/GetAGroupChannelResponse.js.map +1 -0
  166. package/dist/models/GetAGroupChannelResponseAllOf.d.ts +18 -0
  167. package/dist/models/GetAGroupChannelResponseAllOf.js +17 -0
  168. package/dist/models/GetAGroupChannelResponseAllOf.js.map +1 -0
  169. package/dist/models/GetChannelInvitationPreferenceResponse.d.ts +17 -0
  170. package/dist/models/GetChannelInvitationPreferenceResponse.js +17 -0
  171. package/dist/models/GetChannelInvitationPreferenceResponse.js.map +1 -0
  172. package/dist/models/GetTotalNumberOfMessagesInAChannelResponse.d.ts +17 -0
  173. package/dist/models/GetTotalNumberOfMessagesInAChannelResponse.js +17 -0
  174. package/dist/models/GetTotalNumberOfMessagesInAChannelResponse.js.map +1 -0
  175. package/dist/models/GroupChannelListMembersResponse.d.ts +19 -0
  176. package/dist/models/GroupChannelListMembersResponse.js +23 -0
  177. package/dist/models/GroupChannelListMembersResponse.js.map +1 -0
  178. package/dist/models/GroupChatListChannelsResponse.d.ts +20 -0
  179. package/dist/models/GroupChatListChannelsResponse.js +29 -0
  180. package/dist/models/GroupChatListChannelsResponse.js.map +1 -0
  181. package/dist/models/HideAChannelRequest.d.ts +20 -0
  182. package/dist/models/HideAChannelRequest.js +35 -0
  183. package/dist/models/HideAChannelRequest.js.map +1 -0
  184. package/dist/models/InviteAsMembersRequest.d.ts +20 -0
  185. package/dist/models/InviteAsMembersRequest.js +35 -0
  186. package/dist/models/InviteAsMembersRequest.js.map +1 -0
  187. package/dist/models/InviteAsMembersResponse.d.ts +75 -0
  188. package/dist/models/InviteAsMembersResponse.js +287 -0
  189. package/dist/models/InviteAsMembersResponse.js.map +1 -0
  190. package/dist/models/InviteAsMembersResponseAllOf.d.ts +18 -0
  191. package/dist/models/InviteAsMembersResponseAllOf.js +17 -0
  192. package/dist/models/InviteAsMembersResponseAllOf.js.map +1 -0
  193. package/dist/models/JoinAChannelRequest.d.ts +18 -0
  194. package/dist/models/JoinAChannelRequest.js +23 -0
  195. package/dist/models/JoinAChannelRequest.js.map +1 -0
  196. package/dist/models/JoinChannelsRequest.d.ts +17 -0
  197. package/dist/models/JoinChannelsRequest.js +17 -0
  198. package/dist/models/JoinChannelsRequest.js.map +1 -0
  199. package/dist/models/LeaveAChannelRequest.d.ts +21 -0
  200. package/dist/models/LeaveAChannelRequest.js +35 -0
  201. package/dist/models/LeaveAChannelRequest.js.map +1 -0
  202. package/dist/models/LeaveMyGroupChannelsRequest.d.ts +17 -0
  203. package/dist/models/LeaveMyGroupChannelsRequest.js +17 -0
  204. package/dist/models/LeaveMyGroupChannelsRequest.js.map +1 -0
  205. package/dist/models/ListBlockedUsersResponse.d.ts +19 -0
  206. package/dist/models/ListBlockedUsersResponse.js +23 -0
  207. package/dist/models/ListBlockedUsersResponse.js.map +1 -0
  208. package/dist/models/ListBotsResponse.d.ts +19 -0
  209. package/dist/models/ListBotsResponse.js +23 -0
  210. package/dist/models/ListBotsResponse.js.map +1 -0
  211. package/dist/models/ListBotsResponseBotsInner.d.ts +32 -0
  212. package/dist/models/ListBotsResponseBotsInner.js +77 -0
  213. package/dist/models/ListBotsResponseBotsInner.js.map +1 -0
  214. package/dist/models/ListBotsResponseBotsInnerAi.d.ts +28 -0
  215. package/dist/models/ListBotsResponseBotsInnerAi.js +83 -0
  216. package/dist/models/ListBotsResponseBotsInnerAi.js.map +1 -0
  217. package/dist/models/ListBotsResponseBotsInnerBot.d.ts +24 -0
  218. package/dist/models/ListBotsResponseBotsInnerBot.js +59 -0
  219. package/dist/models/ListBotsResponseBotsInnerBot.js.map +1 -0
  220. package/dist/models/ListBotsResponseBotsInnerBotStyle.d.ts +21 -0
  221. package/dist/models/ListBotsResponseBotsInnerBotStyle.js +35 -0
  222. package/dist/models/ListBotsResponseBotsInnerBotStyle.js.map +1 -0
  223. package/dist/models/ListBotsResponseBotsInnerBotStyleColor.d.ts +19 -0
  224. package/dist/models/ListBotsResponseBotsInnerBotStyleColor.js +29 -0
  225. package/dist/models/ListBotsResponseBotsInnerBotStyleColor.js.map +1 -0
  226. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInner.d.ts +19 -0
  227. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInner.js +23 -0
  228. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInner.js.map +1 -0
  229. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInnerData.d.ts +17 -0
  230. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInnerData.js +17 -0
  231. package/dist/models/ListBotsResponseBotsInnerFirstMessagesInnerData.js.map +1 -0
  232. package/dist/models/ListBotsResponseBotsInnerSafeguard.d.ts +20 -0
  233. package/dist/models/ListBotsResponseBotsInnerSafeguard.js +35 -0
  234. package/dist/models/ListBotsResponseBotsInnerSafeguard.js.map +1 -0
  235. package/dist/models/ListMessagesResponse.d.ts +18 -0
  236. package/dist/models/ListMessagesResponse.js +17 -0
  237. package/dist/models/ListMessagesResponse.js.map +1 -0
  238. package/dist/models/ListMyGroupChannelsResponse.d.ts +20 -0
  239. package/dist/models/ListMyGroupChannelsResponse.js +29 -0
  240. package/dist/models/ListMyGroupChannelsResponse.js.map +1 -0
  241. package/dist/models/ListOpenChannelsResponse.d.ts +20 -0
  242. package/dist/models/ListOpenChannelsResponse.js +29 -0
  243. package/dist/models/ListOpenChannelsResponse.js.map +1 -0
  244. package/dist/models/ListOperatorsResponse.d.ts +19 -0
  245. package/dist/models/ListOperatorsResponse.js +23 -0
  246. package/dist/models/ListOperatorsResponse.js.map +1 -0
  247. package/dist/models/ListRegistrationOrDeviceTokensResponse.d.ts +21 -0
  248. package/dist/models/ListRegistrationOrDeviceTokensResponse.js +35 -0
  249. package/dist/models/ListRegistrationOrDeviceTokensResponse.js.map +1 -0
  250. package/dist/models/ListUsersResponse.d.ts +19 -0
  251. package/dist/models/ListUsersResponse.js +23 -0
  252. package/dist/models/ListUsersResponse.js.map +1 -0
  253. package/dist/models/MarkAllMessagesAsReadRequest.d.ts +17 -0
  254. package/dist/models/MarkAllMessagesAsReadRequest.js +17 -0
  255. package/dist/models/MarkAllMessagesAsReadRequest.js.map +1 -0
  256. package/dist/models/MarkChannelMessagesAsReadRequest.d.ts +17 -0
  257. package/dist/models/MarkChannelMessagesAsReadRequest.js +17 -0
  258. package/dist/models/MarkChannelMessagesAsReadRequest.js.map +1 -0
  259. package/dist/models/MigrateMessagesAdminMessageRequest.d.ts +26 -0
  260. package/dist/models/MigrateMessagesAdminMessageRequest.js +65 -0
  261. package/dist/models/MigrateMessagesAdminMessageRequest.js.map +1 -0
  262. package/dist/models/MigrateMessagesFileMessageRequest.d.ts +32 -0
  263. package/dist/models/MigrateMessagesFileMessageRequest.js +95 -0
  264. package/dist/models/MigrateMessagesFileMessageRequest.js.map +1 -0
  265. package/dist/models/MigrateMessagesFileMessageRequestThumbnailsInner.d.ts +16 -0
  266. package/dist/models/MigrateMessagesFileMessageRequestThumbnailsInner.js +10 -0
  267. package/dist/models/MigrateMessagesFileMessageRequestThumbnailsInner.js.map +1 -0
  268. package/dist/models/MigrateMessagesRequest.d.ts +20 -0
  269. package/dist/models/MigrateMessagesRequest.js +29 -0
  270. package/dist/models/MigrateMessagesRequest.js.map +1 -0
  271. package/dist/models/MigrateMessagesRequestMessagesInner.d.ts +35 -0
  272. package/dist/models/MigrateMessagesRequestMessagesInner.js +113 -0
  273. package/dist/models/MigrateMessagesRequestMessagesInner.js.map +1 -0
  274. package/dist/models/MigrateMessagesTextMessageRequest.d.ts +26 -0
  275. package/dist/models/MigrateMessagesTextMessageRequest.js +65 -0
  276. package/dist/models/MigrateMessagesTextMessageRequest.js.map +1 -0
  277. package/dist/models/ObjectSerializer.d.ts +128 -0
  278. package/dist/models/ObjectSerializer.js +576 -0
  279. package/dist/models/ObjectSerializer.js.map +1 -0
  280. package/dist/models/RegisterOperatorsToAGroupChannelRequest.d.ts +17 -0
  281. package/dist/models/RegisterOperatorsToAGroupChannelRequest.js +17 -0
  282. package/dist/models/RegisterOperatorsToAGroupChannelRequest.js.map +1 -0
  283. package/dist/models/RemoveARegistrationOrDeviceTokenResponse.d.ts +19 -0
  284. package/dist/models/RemoveARegistrationOrDeviceTokenResponse.js +23 -0
  285. package/dist/models/RemoveARegistrationOrDeviceTokenResponse.js.map +1 -0
  286. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringASpecificTokenResponse.d.ts +19 -0
  287. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringASpecificTokenResponse.js +23 -0
  288. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringASpecificTokenResponse.js.map +1 -0
  289. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringAllDeviceTokensResponse.d.ts +19 -0
  290. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringAllDeviceTokensResponse.js +23 -0
  291. package/dist/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringAllDeviceTokensResponse.js.map +1 -0
  292. package/dist/models/RemoveAllRegistrationOrDeviceTokenResponse.d.ts +19 -0
  293. package/dist/models/RemoveAllRegistrationOrDeviceTokenResponse.js +23 -0
  294. package/dist/models/RemoveAllRegistrationOrDeviceTokenResponse.js.map +1 -0
  295. package/dist/models/ResetChatHistoryRequest.d.ts +18 -0
  296. package/dist/models/ResetChatHistoryRequest.js +23 -0
  297. package/dist/models/ResetChatHistoryRequest.js.map +1 -0
  298. package/dist/models/ResetChatHistoryResponse.d.ts +17 -0
  299. package/dist/models/ResetChatHistoryResponse.js +17 -0
  300. package/dist/models/ResetChatHistoryResponse.js.map +1 -0
  301. package/dist/models/ScheduleAnAnnouncementRequest.d.ts +36 -0
  302. package/dist/models/ScheduleAnAnnouncementRequest.js +119 -0
  303. package/dist/models/ScheduleAnAnnouncementRequest.js.map +1 -0
  304. package/dist/models/ScheduleAnAnnouncementRequestCreateChannelOptions.d.ts +21 -0
  305. package/dist/models/ScheduleAnAnnouncementRequestCreateChannelOptions.js +41 -0
  306. package/dist/models/ScheduleAnAnnouncementRequestCreateChannelOptions.js.map +1 -0
  307. package/dist/models/ScheduleAnAnnouncementRequestMessage.d.ts +21 -0
  308. package/dist/models/ScheduleAnAnnouncementRequestMessage.js +41 -0
  309. package/dist/models/ScheduleAnAnnouncementRequestMessage.js.map +1 -0
  310. package/dist/models/ScheduleAnAnnouncementResponse.d.ts +42 -0
  311. package/dist/models/ScheduleAnAnnouncementResponse.js +155 -0
  312. package/dist/models/ScheduleAnAnnouncementResponse.js.map +1 -0
  313. package/dist/models/ScheduleAnAnnouncementResponseMessage.d.ts +22 -0
  314. package/dist/models/ScheduleAnAnnouncementResponseMessage.js +47 -0
  315. package/dist/models/ScheduleAnAnnouncementResponseMessage.js.map +1 -0
  316. package/dist/models/SendABotMessageRequest.d.ts +27 -0
  317. package/dist/models/SendABotMessageRequest.js +71 -0
  318. package/dist/models/SendABotMessageRequest.js.map +1 -0
  319. package/dist/models/SendAMessageRequest.d.ts +46 -0
  320. package/dist/models/SendAMessageRequest.js +161 -0
  321. package/dist/models/SendAMessageRequest.js.map +1 -0
  322. package/dist/models/SendAdminMessageRequestBody.d.ts +32 -0
  323. package/dist/models/SendAdminMessageRequestBody.js +83 -0
  324. package/dist/models/SendAdminMessageRequestBody.js.map +1 -0
  325. package/dist/models/SendFileMessageRequestBody.d.ts +41 -0
  326. package/dist/models/SendFileMessageRequestBody.js +137 -0
  327. package/dist/models/SendFileMessageRequestBody.js.map +1 -0
  328. package/dist/models/SendTextMessageRequestBody.d.ts +39 -0
  329. package/dist/models/SendTextMessageRequestBody.js +125 -0
  330. package/dist/models/SendTextMessageRequestBody.js.map +1 -0
  331. package/dist/models/SendTextMessageRequestBodyPushMessageTemplate.d.ts +18 -0
  332. package/dist/models/SendTextMessageRequestBodyPushMessageTemplate.js +23 -0
  333. package/dist/models/SendTextMessageRequestBodyPushMessageTemplate.js.map +1 -0
  334. package/dist/models/SendTextMessageRequestBodyPushMessageTemplateOneOf.d.ts +18 -0
  335. package/dist/models/SendTextMessageRequestBodyPushMessageTemplateOneOf.js +23 -0
  336. package/dist/models/SendTextMessageRequestBodyPushMessageTemplateOneOf.js.map +1 -0
  337. package/dist/models/SendbirdBasicUserInfo.d.ts +25 -0
  338. package/dist/models/SendbirdBasicUserInfo.js +59 -0
  339. package/dist/models/SendbirdBasicUserInfo.js.map +1 -0
  340. package/dist/models/SendbirdDisappearingMessage.d.ts +18 -0
  341. package/dist/models/SendbirdDisappearingMessage.js +23 -0
  342. package/dist/models/SendbirdDisappearingMessage.js.map +1 -0
  343. package/dist/models/SendbirdExtendedMessagePayload.d.ts +18 -0
  344. package/dist/models/SendbirdExtendedMessagePayload.js +23 -0
  345. package/dist/models/SendbirdExtendedMessagePayload.js.map +1 -0
  346. package/dist/models/SendbirdFile.d.ts +23 -0
  347. package/dist/models/SendbirdFile.js +47 -0
  348. package/dist/models/SendbirdFile.js.map +1 -0
  349. package/dist/models/SendbirdGroupChannel.d.ts +73 -0
  350. package/dist/models/SendbirdGroupChannel.js +281 -0
  351. package/dist/models/SendbirdGroupChannel.js.map +1 -0
  352. package/dist/models/SendbirdGroupChannelDetail.d.ts +60 -0
  353. package/dist/models/SendbirdGroupChannelDetail.js +209 -0
  354. package/dist/models/SendbirdGroupChannelDetail.js.map +1 -0
  355. package/dist/models/SendbirdGroupChannelDetailChannel.d.ts +24 -0
  356. package/dist/models/SendbirdGroupChannelDetailChannel.js +59 -0
  357. package/dist/models/SendbirdGroupChannelDetailChannel.js.map +1 -0
  358. package/dist/models/SendbirdMember.d.ts +41 -0
  359. package/dist/models/SendbirdMember.js +143 -0
  360. package/dist/models/SendbirdMember.js.map +1 -0
  361. package/dist/models/SendbirdMessageResponse.d.ts +53 -0
  362. package/dist/models/SendbirdMessageResponse.js +191 -0
  363. package/dist/models/SendbirdMessageResponse.js.map +1 -0
  364. package/dist/models/SendbirdMessageResponseMessageEvents.d.ts +20 -0
  365. package/dist/models/SendbirdMessageResponseMessageEvents.js +35 -0
  366. package/dist/models/SendbirdMessageResponseMessageEvents.js.map +1 -0
  367. package/dist/models/SendbirdOpenChannel.d.ts +30 -0
  368. package/dist/models/SendbirdOpenChannel.js +89 -0
  369. package/dist/models/SendbirdOpenChannel.js.map +1 -0
  370. package/dist/models/SendbirdParentMessageInfo.d.ts +25 -0
  371. package/dist/models/SendbirdParentMessageInfo.js +53 -0
  372. package/dist/models/SendbirdParentMessageInfo.js.map +1 -0
  373. package/dist/models/SendbirdPushTriggerOption.d.ts +1 -0
  374. package/dist/models/SendbirdPushTriggerOption.js +2 -0
  375. package/dist/models/SendbirdPushTriggerOption.js.map +1 -0
  376. package/dist/models/SendbirdReaction.d.ts +19 -0
  377. package/dist/models/SendbirdReaction.js +29 -0
  378. package/dist/models/SendbirdReaction.js.map +1 -0
  379. package/dist/models/SendbirdSmsFallback.d.ts +18 -0
  380. package/dist/models/SendbirdSmsFallback.js +23 -0
  381. package/dist/models/SendbirdSmsFallback.js.map +1 -0
  382. package/dist/models/SendbirdSortedMetaarrayInner.d.ts +18 -0
  383. package/dist/models/SendbirdSortedMetaarrayInner.js +23 -0
  384. package/dist/models/SendbirdSortedMetaarrayInner.js.map +1 -0
  385. package/dist/models/SendbirdThumbnail.d.ts +22 -0
  386. package/dist/models/SendbirdThumbnail.js +47 -0
  387. package/dist/models/SendbirdThumbnail.js.map +1 -0
  388. package/dist/models/SendbirdUser.d.ts +39 -0
  389. package/dist/models/SendbirdUser.js +143 -0
  390. package/dist/models/SendbirdUser.js.map +1 -0
  391. package/dist/models/StartTypingIndicatorsRequest.d.ts +17 -0
  392. package/dist/models/StartTypingIndicatorsRequest.js +17 -0
  393. package/dist/models/StartTypingIndicatorsRequest.js.map +1 -0
  394. package/dist/models/UpdateAChannelMetadataRequest.d.ts +18 -0
  395. package/dist/models/UpdateAChannelMetadataRequest.js +23 -0
  396. package/dist/models/UpdateAChannelMetadataRequest.js.map +1 -0
  397. package/dist/models/UpdateAGroupChannelRequest.d.ts +27 -0
  398. package/dist/models/UpdateAGroupChannelRequest.js +71 -0
  399. package/dist/models/UpdateAGroupChannelRequest.js.map +1 -0
  400. package/dist/models/UpdateAMessageRequest.d.ts +24 -0
  401. package/dist/models/UpdateAMessageRequest.js +53 -0
  402. package/dist/models/UpdateAMessageRequest.js.map +1 -0
  403. package/dist/models/UpdateAUserRequest.d.ts +26 -0
  404. package/dist/models/UpdateAUserRequest.js +65 -0
  405. package/dist/models/UpdateAUserRequest.js.map +1 -0
  406. package/dist/models/UpdateAnOpenChannelRequest.d.ts +23 -0
  407. package/dist/models/UpdateAnOpenChannelRequest.js +47 -0
  408. package/dist/models/UpdateAnOpenChannelRequest.js.map +1 -0
  409. package/dist/models/UpdateChannelInvitationPreferenceRequest.d.ts +17 -0
  410. package/dist/models/UpdateChannelInvitationPreferenceRequest.js +17 -0
  411. package/dist/models/UpdateChannelInvitationPreferenceRequest.js.map +1 -0
  412. package/dist/models/UpdateChannelInvitationPreferenceResponse.d.ts +17 -0
  413. package/dist/models/UpdateChannelInvitationPreferenceResponse.js +17 -0
  414. package/dist/models/UpdateChannelInvitationPreferenceResponse.js.map +1 -0
  415. package/dist/models/UpdateCountPreferenceOfAChannelRequest.d.ts +18 -0
  416. package/dist/models/UpdateCountPreferenceOfAChannelRequest.js +17 -0
  417. package/dist/models/UpdateCountPreferenceOfAChannelRequest.js.map +1 -0
  418. package/dist/models/UpdateCountPreferenceOfChannelByUrlResponse.d.ts +18 -0
  419. package/dist/models/UpdateCountPreferenceOfChannelByUrlResponse.js +17 -0
  420. package/dist/models/UpdateCountPreferenceOfChannelByUrlResponse.js.map +1 -0
  421. package/dist/models/UpdateExtraDataInAMessageRequest.d.ts +20 -0
  422. package/dist/models/UpdateExtraDataInAMessageRequest.js +29 -0
  423. package/dist/models/UpdateExtraDataInAMessageRequest.js.map +1 -0
  424. package/dist/models/UpdateExtraDataInAMessageResponse.d.ts +18 -0
  425. package/dist/models/UpdateExtraDataInAMessageResponse.js +17 -0
  426. package/dist/models/UpdateExtraDataInAMessageResponse.js.map +1 -0
  427. package/dist/models/UpdatePushPreferencesForAChannelRequest.d.ts +19 -0
  428. package/dist/models/UpdatePushPreferencesForAChannelRequest.js +23 -0
  429. package/dist/models/UpdatePushPreferencesForAChannelRequest.js.map +1 -0
  430. package/dist/models/UpdatePushPreferencesForAChannelResponse.d.ts +20 -0
  431. package/dist/models/UpdatePushPreferencesForAChannelResponse.js +29 -0
  432. package/dist/models/UpdatePushPreferencesForAChannelResponse.js.map +1 -0
  433. package/dist/models/UpdatePushPreferencesRequest.d.ts +31 -0
  434. package/dist/models/UpdatePushPreferencesRequest.js +95 -0
  435. package/dist/models/UpdatePushPreferencesRequest.js.map +1 -0
  436. package/dist/models/UpdatePushPreferencesResponse.d.ts +31 -0
  437. package/dist/models/UpdatePushPreferencesResponse.js +95 -0
  438. package/dist/models/UpdatePushPreferencesResponse.js.map +1 -0
  439. package/dist/models/ViewCountPreferenceOfAChannelResponse.d.ts +18 -0
  440. package/dist/models/ViewCountPreferenceOfAChannelResponse.js +17 -0
  441. package/dist/models/ViewCountPreferenceOfAChannelResponse.js.map +1 -0
  442. package/dist/models/ViewNumberOfChannelsWithUnreadMessagesResponse.d.ts +17 -0
  443. package/dist/models/ViewNumberOfChannelsWithUnreadMessagesResponse.js +17 -0
  444. package/dist/models/ViewNumberOfChannelsWithUnreadMessagesResponse.js.map +1 -0
  445. package/dist/models/ViewNumberOfDailyActiveUsersResponse.d.ts +17 -0
  446. package/dist/models/ViewNumberOfDailyActiveUsersResponse.js +17 -0
  447. package/dist/models/ViewNumberOfDailyActiveUsersResponse.js.map +1 -0
  448. package/dist/models/ViewNumberOfMonthlyActiveUsersResponse.d.ts +17 -0
  449. package/dist/models/ViewNumberOfMonthlyActiveUsersResponse.js +17 -0
  450. package/dist/models/ViewNumberOfMonthlyActiveUsersResponse.js.map +1 -0
  451. package/dist/models/ViewNumberOfUnreadMessagesResponse.d.ts +17 -0
  452. package/dist/models/ViewNumberOfUnreadMessagesResponse.js +17 -0
  453. package/dist/models/ViewNumberOfUnreadMessagesResponse.js.map +1 -0
  454. package/dist/models/ViewPushPreferencesForAChannelResponse.d.ts +20 -0
  455. package/dist/models/ViewPushPreferencesForAChannelResponse.js +29 -0
  456. package/dist/models/ViewPushPreferencesForAChannelResponse.js.map +1 -0
  457. package/dist/models/ViewPushPreferencesResponse.d.ts +31 -0
  458. package/dist/models/ViewPushPreferencesResponse.js +95 -0
  459. package/dist/models/ViewPushPreferencesResponse.js.map +1 -0
  460. package/dist/models/ViewWhoOwnsARegistrationOrDeviceTokenResponseInner.d.ts +17 -0
  461. package/dist/models/ViewWhoOwnsARegistrationOrDeviceTokenResponseInner.js +17 -0
  462. package/dist/models/ViewWhoOwnsARegistrationOrDeviceTokenResponseInner.js.map +1 -0
  463. package/dist/models/all.d.ts +119 -0
  464. package/dist/models/all.js +120 -0
  465. package/dist/models/all.js.map +1 -0
  466. package/dist/rxjsStub.d.ts +10 -0
  467. package/dist/rxjsStub.js +24 -0
  468. package/dist/rxjsStub.js.map +1 -0
  469. package/dist/servers.d.ts +21 -0
  470. package/dist/servers.js +27 -0
  471. package/dist/servers.js.map +1 -0
  472. package/dist/tests/integration/bot.test.d.ts +1 -0
  473. package/dist/tests/integration/bot.test.js +153 -0
  474. package/dist/tests/integration/bot.test.js.map +1 -0
  475. package/dist/tests/integration/constants.d.ts +5 -0
  476. package/dist/tests/integration/constants.js +9 -0
  477. package/dist/tests/integration/constants.js.map +1 -0
  478. package/dist/tests/integration/groupChannel.test.d.ts +1 -0
  479. package/dist/tests/integration/groupChannel.test.js +1238 -0
  480. package/dist/tests/integration/groupChannel.test.js.map +1 -0
  481. package/dist/tests/integration/helper.d.ts +1 -0
  482. package/dist/tests/integration/helper.js +4 -0
  483. package/dist/tests/integration/helper.js.map +1 -0
  484. package/dist/tests/integration/metadata.test.d.ts +1 -0
  485. package/dist/tests/integration/metadata.test.js +17 -0
  486. package/dist/tests/integration/metadata.test.js.map +1 -0
  487. package/dist/tests/integration/moderation.test.d.ts +1 -0
  488. package/dist/tests/integration/moderation.test.js +142 -0
  489. package/dist/tests/integration/moderation.test.js.map +1 -0
  490. package/dist/tests/integration/openChannel.test.d.ts +1 -0
  491. package/dist/tests/integration/openChannel.test.js +194 -0
  492. package/dist/tests/integration/openChannel.test.js.map +1 -0
  493. package/dist/tests/integration/statistics.test.d.ts +1 -0
  494. package/dist/tests/integration/statistics.test.js +43 -0
  495. package/dist/tests/integration/statistics.test.js.map +1 -0
  496. package/dist/tests/integration/user.test.d.ts +1 -0
  497. package/dist/tests/integration/user.test.js +444 -0
  498. package/dist/tests/integration/user.test.js.map +1 -0
  499. package/dist/types/ObjectParamAPI.d.ts +772 -0
  500. package/dist/types/ObjectParamAPI.js +304 -0
  501. package/dist/types/ObjectParamAPI.js.map +1 -0
  502. package/dist/types/ObservableAPI.d.ts +228 -0
  503. package/dist/types/ObservableAPI.js +1320 -0
  504. package/dist/types/ObservableAPI.js.map +1 -0
  505. package/dist/types/PromiseAPI.d.ts +209 -0
  506. package/dist/types/PromiseAPI.js +387 -0
  507. package/dist/types/PromiseAPI.js.map +1 -0
  508. package/dist/util.d.ts +2 -0
  509. package/dist/util.js +24 -0
  510. package/dist/util.js.map +1 -0
  511. package/git_push.sh +51 -0
  512. package/http/http.ts +231 -0
  513. package/http/isomorphic-fetch.ts +32 -0
  514. package/index.ts +12 -0
  515. package/jest.config.ts +11 -0
  516. package/jest.setup.ts +5 -0
  517. package/middleware.ts +66 -0
  518. package/models/AcceptAnInvitationRequest.ts +42 -0
  519. package/models/AddARegistrationOrDeviceTokenRequest.ts +49 -0
  520. package/models/AddARegistrationOrDeviceTokenResponse.ts +50 -0
  521. package/models/AddExtraDataToAMessageRequest.ts +36 -0
  522. package/models/AddExtraDataToAMessageResponse.ts +36 -0
  523. package/models/BlockAUserRequest.ts +45 -0
  524. package/models/BlockAUserResponse.ts +43 -0
  525. package/models/CheckIfMemberResponse.ts +45 -0
  526. package/models/ChooseAPushNotificationContentTemplateRequest.ts +41 -0
  527. package/models/ChooseAPushNotificationContentTemplateResponse.ts +35 -0
  528. package/models/CreateABotRequest.ts +100 -0
  529. package/models/CreateABotResponse.ts +86 -0
  530. package/models/CreateABotResponseBot.ts +91 -0
  531. package/models/CreateABotResponseBotStyle.ts +57 -0
  532. package/models/CreateAChannelMetadataRequest.ts +42 -0
  533. package/models/CreateAChannelMetadataResponse.ts +42 -0
  534. package/models/CreateAGroupChannelRequest.ts +171 -0
  535. package/models/CreateAUserRequest.ts +80 -0
  536. package/models/CreateAnOpenChannelRequest.ts +91 -0
  537. package/models/CreateUserTokenRequest.ts +35 -0
  538. package/models/CreateUserTokenResponse.ts +42 -0
  539. package/models/FreezeAGroupChannelRequest.ts +35 -0
  540. package/models/FreezeAnOpenChannelRequest.ts +38 -0
  541. package/models/GetAGroupChannelResponse.ts +365 -0
  542. package/models/GetAGroupChannelResponseAllOf.ts +36 -0
  543. package/models/GetChannelInvitationPreferenceResponse.ts +35 -0
  544. package/models/GetTotalNumberOfMessagesInAChannelResponse.ts +35 -0
  545. package/models/GroupChannelListMembersResponse.ts +43 -0
  546. package/models/GroupChatListChannelsResponse.ts +50 -0
  547. package/models/HideAChannelRequest.ts +68 -0
  548. package/models/InviteAsMembersRequest.ts +62 -0
  549. package/models/InviteAsMembersResponse.ts +365 -0
  550. package/models/InviteAsMembersResponseAllOf.ts +36 -0
  551. package/models/JoinAChannelRequest.ts +48 -0
  552. package/models/JoinChannelsRequest.ts +35 -0
  553. package/models/LeaveAChannelRequest.ts +71 -0
  554. package/models/LeaveMyGroupChannelsRequest.ts +35 -0
  555. package/models/ListBlockedUsersResponse.ts +43 -0
  556. package/models/ListBotsResponse.ts +43 -0
  557. package/models/ListBotsResponseBotsInner.ts +110 -0
  558. package/models/ListBotsResponseBotsInnerAi.ts +112 -0
  559. package/models/ListBotsResponseBotsInnerBot.ts +84 -0
  560. package/models/ListBotsResponseBotsInnerBotStyle.ts +57 -0
  561. package/models/ListBotsResponseBotsInnerBotStyleColor.ts +49 -0
  562. package/models/ListBotsResponseBotsInnerFirstMessagesInner.ts +43 -0
  563. package/models/ListBotsResponseBotsInnerFirstMessagesInnerData.ts +35 -0
  564. package/models/ListBotsResponseBotsInnerSafeguard.ts +56 -0
  565. package/models/ListMessagesResponse.ts +36 -0
  566. package/models/ListMyGroupChannelsResponse.ts +50 -0
  567. package/models/ListOpenChannelsResponse.ts +50 -0
  568. package/models/ListOperatorsResponse.ts +43 -0
  569. package/models/ListRegistrationOrDeviceTokensResponse.ts +57 -0
  570. package/models/ListUsersResponse.ts +43 -0
  571. package/models/MarkAllMessagesAsReadRequest.ts +38 -0
  572. package/models/MarkChannelMessagesAsReadRequest.ts +35 -0
  573. package/models/MigrateMessagesAdminMessageRequest.ts +94 -0
  574. package/models/MigrateMessagesFileMessageRequest.ts +130 -0
  575. package/models/MigrateMessagesFileMessageRequestThumbnailsInner.ts +29 -0
  576. package/models/MigrateMessagesRequest.ts +50 -0
  577. package/models/MigrateMessagesRequestMessagesInner.ts +154 -0
  578. package/models/MigrateMessagesTextMessageRequest.ts +94 -0
  579. package/models/ObjectSerializer.ts +611 -0
  580. package/models/RegisterOperatorsToAGroupChannelRequest.ts +35 -0
  581. package/models/RemoveARegistrationOrDeviceTokenResponse.ts +43 -0
  582. package/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringASpecificTokenResponse.ts +43 -0
  583. package/models/RemoveARegistrationOrDeviceTokenWhenUnregisteringAllDeviceTokensResponse.ts +43 -0
  584. package/models/RemoveAllRegistrationOrDeviceTokenResponse.ts +43 -0
  585. package/models/ResetChatHistoryRequest.ts +42 -0
  586. package/models/ResetChatHistoryResponse.ts +38 -0
  587. package/models/ScheduleAnAnnouncementRequest.ts +156 -0
  588. package/models/ScheduleAnAnnouncementRequestCreateChannelOptions.ts +63 -0
  589. package/models/ScheduleAnAnnouncementRequestMessage.ts +63 -0
  590. package/models/ScheduleAnAnnouncementResponse.ts +198 -0
  591. package/models/ScheduleAnAnnouncementResponseMessage.ts +70 -0
  592. package/models/SendABotMessageRequest.ts +99 -0
  593. package/models/SendAMessageRequest.ts +219 -0
  594. package/models/SendAdminMessageRequestBody.ts +121 -0
  595. package/models/SendBirdFile.ts +71 -0
  596. package/models/SendBirdGroupChannel.ts +355 -0
  597. package/models/SendBirdMember.ts +187 -0
  598. package/models/SendBirdMessageResponse.ts +245 -0
  599. package/models/SendBirdParentMessageInfo.ts +79 -0
  600. package/models/SendBirdUser.ts +188 -0
  601. package/models/SendFileMessageRequestBody.ts +187 -0
  602. package/models/SendTextMessageRequestBody.ts +170 -0
  603. package/models/SendTextMessageRequestBodyPushMessageTemplate.ts +52 -0
  604. package/models/SendTextMessageRequestBodyPushMessageTemplateOneOf.ts +48 -0
  605. package/models/SendbirdBasicUserInfo.ts +87 -0
  606. package/models/SendbirdDisappearingMessage.ts +42 -0
  607. package/models/SendbirdExtendedMessagePayload.ts +51 -0
  608. package/models/SendbirdGroupChannelDetail.ts +266 -0
  609. package/models/SendbirdGroupChannelDetailChannel.ts +84 -0
  610. package/models/SendbirdMessageResponseMessageEvents.ts +56 -0
  611. package/models/SendbirdOpenChannel.ts +120 -0
  612. package/models/SendbirdPushTriggerOption.ts +15 -0
  613. package/models/SendbirdReaction.ts +49 -0
  614. package/models/SendbirdSmsFallback.ts +42 -0
  615. package/models/SendbirdSortedMetaarrayInner.ts +42 -0
  616. package/models/SendbirdThumbnail.ts +70 -0
  617. package/models/StartTypingIndicatorsRequest.ts +35 -0
  618. package/models/UpdateAChannelMetadataRequest.ts +42 -0
  619. package/models/UpdateAGroupChannelRequest.ts +98 -0
  620. package/models/UpdateAMessageRequest.ts +80 -0
  621. package/models/UpdateAUserRequest.ts +91 -0
  622. package/models/UpdateAnOpenChannelRequest.ts +70 -0
  623. package/models/UpdateChannelInvitationPreferenceRequest.ts +35 -0
  624. package/models/UpdateChannelInvitationPreferenceResponse.ts +35 -0
  625. package/models/UpdateCountPreferenceOfAChannelRequest.ts +38 -0
  626. package/models/UpdateCountPreferenceOfChannelByUrlResponse.ts +38 -0
  627. package/models/UpdateExtraDataInAMessageRequest.ts +50 -0
  628. package/models/UpdateExtraDataInAMessageResponse.ts +36 -0
  629. package/models/UpdatePushPreferencesForAChannelRequest.ts +48 -0
  630. package/models/UpdatePushPreferencesForAChannelResponse.ts +50 -0
  631. package/models/UpdatePushPreferencesRequest.ts +127 -0
  632. package/models/UpdatePushPreferencesResponse.ts +127 -0
  633. package/models/ViewCountPreferenceOfAChannelResponse.ts +38 -0
  634. package/models/ViewNumberOfChannelsWithUnreadMessagesResponse.ts +35 -0
  635. package/models/ViewNumberOfDailyActiveUsersResponse.ts +35 -0
  636. package/models/ViewNumberOfMonthlyActiveUsersResponse.ts +35 -0
  637. package/models/ViewNumberOfUnreadMessagesResponse.ts +35 -0
  638. package/models/ViewPushPreferencesForAChannelResponse.ts +50 -0
  639. package/models/ViewPushPreferencesResponse.ts +127 -0
  640. package/models/ViewWhoOwnsARegistrationOrDeviceTokenResponseInner.ts +35 -0
  641. package/models/all.ts +119 -0
  642. package/package.json +50 -0
  643. package/rxjsStub.ts +27 -0
  644. package/servers.ts +53 -0
  645. package/tests/integration/bot.test.ts +186 -0
  646. package/tests/integration/constants.ts +10 -0
  647. package/tests/integration/groupChannel.test.ts +1624 -0
  648. package/tests/integration/helper.ts +8 -0
  649. package/tests/integration/metadata.test.ts +22 -0
  650. package/tests/integration/moderation.test.ts +172 -0
  651. package/tests/integration/openChannel.test.ts +239 -0
  652. package/tests/integration/statistics.test.ts +44 -0
  653. package/tests/integration/user.test.ts +585 -0
  654. package/tsconfig.json +29 -0
  655. package/types/ObjectParamAPI.ts +3609 -0
  656. package/types/ObservableAPI.ts +2592 -0
  657. package/types/PromiseAPI.ts +1438 -0
  658. package/util.ts +37 -0
@@ -0,0 +1,1238 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { SendbirdBasicUserInfo, SendbirdDisappearingMessage, SendbirdMessageResponse, SendbirdSmsFallback, SendbirdUser, SendbirdGroupChannelDetailChannel, } from "../../models/ObjectSerializer";
11
+ import { hasValidField } from "./helper";
12
+ import { ServerConfiguration } from "../../servers";
13
+ import { createConfiguration } from "../../configuration";
14
+ import { GroupChannelApi } from "../../index";
15
+ import { GLOBAL_GROUP_CHANNEL_ACCESS_CODE, MASTER_USER_ID, SECOND_USER_ID, USERS, } from "./constants";
16
+ describe("Group Channel API", () => {
17
+ const APP_ID = process.env.APP_ID || "";
18
+ const API_TOKEN = process.env.API_TOKEN || "";
19
+ let groupChannelApi;
20
+ const validSendbirdGroupChannelCountPreferenceEnum = [
21
+ "false",
22
+ "all",
23
+ "unread_message_count_only",
24
+ "unread_mentioned_count_only",
25
+ ];
26
+ const validSendbirdGroupChannelMemberStateEnum = ["invited", "joined", "none"];
27
+ const validSendbirdGroupChannelHiddenStateEnum = ["hidden_allow_auto_unhide", "hidden_prevent_auto_unhide", "unhidden"];
28
+ const validSendbirdGroupChannelMyRoleEnum = ["none", "operator", ""];
29
+ const validSendbirdMemberRoleEnum = [
30
+ "",
31
+ "none",
32
+ "operator",
33
+ ];
34
+ const validSendbirdMemberStateEnum = ["", "invited", "joined"];
35
+ beforeEach(() => {
36
+ const serverConfig = new ServerConfiguration(`https://api-${APP_ID}.sendbird.com`, { app_id: APP_ID });
37
+ const configuration = createConfiguration({
38
+ baseServer: serverConfig,
39
+ });
40
+ groupChannelApi = new GroupChannelApi(configuration);
41
+ });
42
+ it("call listChannels with positive query params", () => __awaiter(void 0, void 0, void 0, function* () {
43
+ var _a;
44
+ const CHANNEL_URL = "create-group-channel-before-call-list-channels-with-positive-params-test-channel-url";
45
+ try {
46
+ yield groupChannelApi.deleteAGroupChannel({
47
+ channelUrl: CHANNEL_URL,
48
+ apiToken: API_TOKEN,
49
+ });
50
+ }
51
+ catch (e) {
52
+ console.warn("ignore error in cleanup", e);
53
+ }
54
+ yield new Promise((resolve) => setTimeout(resolve, 500));
55
+ const request = {
56
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
57
+ blockSdkUserChannelJoin: true,
58
+ channelUrl: CHANNEL_URL,
59
+ coverUrl: "empty",
60
+ customType: "data",
61
+ data: "data",
62
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
63
+ inviterId: MASTER_USER_ID,
64
+ isDistinct: false,
65
+ isEphemeral: true,
66
+ isPublic: true,
67
+ isSuper: true,
68
+ name: "test",
69
+ operatorIds: [],
70
+ strict: true,
71
+ users: USERS.map((id) => ({ userId: id })),
72
+ };
73
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
74
+ apiToken: API_TOKEN,
75
+ createAGroupChannelRequest: request,
76
+ });
77
+ expect(createGroupChannelresponse).toBeDefined();
78
+ yield new Promise((resolve) => setTimeout(resolve, 100));
79
+ const response = yield groupChannelApi.listChannels({
80
+ apiToken: API_TOKEN,
81
+ limit: 10,
82
+ distinctMode: "all",
83
+ publicMode: "all",
84
+ superMode: "all",
85
+ showEmpty: true,
86
+ showMember: true,
87
+ showDeliveryReceipt: true,
88
+ showReadReceipt: true,
89
+ showMetadata: true,
90
+ showFrozen: true,
91
+ });
92
+ expect(response).toHaveProperty("channels");
93
+ expect(Array.isArray(response.channels)).toBe(true);
94
+ (_a = response.channels) === null || _a === void 0 ? void 0 : _a.forEach((channel) => {
95
+ expect(channel).toHaveProperty("channelUrl");
96
+ expect(typeof channel.channelUrl).toBe("string");
97
+ if ("countPreference" in channel) {
98
+ expect(typeof channel.countPreference).toBe("string");
99
+ expect(validSendbirdGroupChannelCountPreferenceEnum.includes(channel.countPreference)).toBe(true);
100
+ }
101
+ expect(channel).toHaveProperty("name");
102
+ expect(typeof channel.name).toBe("string");
103
+ expect(channel).toHaveProperty("coverUrl");
104
+ expect(typeof channel.coverUrl).toBe("string");
105
+ expect(channel).toHaveProperty("createdAt");
106
+ expect(typeof channel.createdAt).toBe("number");
107
+ if (hasValidField(channel, "createdBy")) {
108
+ expect(channel.createdBy).toBeInstanceOf(SendbirdBasicUserInfo);
109
+ }
110
+ expect(channel).toHaveProperty("customType");
111
+ expect(typeof channel.customType).toBe("string");
112
+ expect(channel).toHaveProperty("data");
113
+ expect(typeof channel.data).toBe("string");
114
+ expect(channel).toHaveProperty("deliveryReceipt");
115
+ expect(typeof channel.deliveryReceipt).toBe("object");
116
+ expect(channel).toHaveProperty("disappearingMessage");
117
+ expect(channel.disappearingMessage).toBeInstanceOf(SendbirdDisappearingMessage);
118
+ expect(channel).toHaveProperty("freeze");
119
+ expect(typeof channel.freeze).toBe("boolean");
120
+ expect(channel).toHaveProperty("hasAiBot");
121
+ expect(typeof channel.hasAiBot).toBe("boolean");
122
+ expect(channel).toHaveProperty("hasBot");
123
+ expect(typeof channel.hasBot).toBe("boolean");
124
+ if ("hiddenState" in channel) {
125
+ expect(validSendbirdGroupChannelHiddenStateEnum.includes(channel.hiddenState)).toBe(true);
126
+ expect(typeof channel.hiddenState).toBe("string");
127
+ }
128
+ expect(channel).toHaveProperty("ignoreProfanityFilter");
129
+ expect(typeof channel.ignoreProfanityFilter).toBe("boolean");
130
+ expect(channel).toHaveProperty("invitedAt");
131
+ expect(typeof channel.invitedAt).toBe("number");
132
+ if (hasValidField(channel, "inviter")) {
133
+ expect(channel.inviter).toBeInstanceOf(SendbirdUser);
134
+ }
135
+ expect(channel).toHaveProperty("isAccessCodeRequired");
136
+ expect(typeof channel.isAccessCodeRequired).toBe("boolean");
137
+ expect(channel).toHaveProperty("isBroadcast");
138
+ expect(typeof channel.isBroadcast).toBe("boolean");
139
+ expect(channel).toHaveProperty("isDiscoverable");
140
+ expect(typeof channel.isDiscoverable).toBe("boolean");
141
+ expect(channel).toHaveProperty("isDistinct");
142
+ expect(typeof channel.isDistinct).toBe("boolean");
143
+ expect(channel).toHaveProperty("isEphemeral");
144
+ expect(typeof channel.isEphemeral).toBe("boolean");
145
+ expect(channel).toHaveProperty("isExclusive");
146
+ expect(typeof channel.isExclusive).toBe("boolean");
147
+ if ("isHidden" in channel) {
148
+ expect(typeof channel.isHidden).toBe("boolean");
149
+ }
150
+ if ("isMuted" in channel) {
151
+ expect(typeof channel.isMuted).toBe("boolean");
152
+ }
153
+ if ("isPublic" in channel) {
154
+ expect(typeof channel.isPublic).toBe("boolean");
155
+ }
156
+ if ("isPushEnabled" in channel) {
157
+ expect(typeof channel.isPushEnabled).toBe("boolean");
158
+ }
159
+ expect(channel).toHaveProperty("isSuper");
160
+ expect(typeof channel.isSuper).toBe("boolean");
161
+ expect(channel).toHaveProperty("joinedMemberCount");
162
+ expect(typeof channel.joinedMemberCount).toBe("number");
163
+ if (hasValidField(channel, "joinedTs")) {
164
+ expect(typeof channel.joinedTs).toBe("number");
165
+ }
166
+ if (hasValidField(channel, "lastMessage")) {
167
+ expect(channel.lastMessage).toBeInstanceOf(SendbirdMessageResponse);
168
+ }
169
+ expect(channel).toHaveProperty("maxLengthMessage");
170
+ expect(typeof channel.maxLengthMessage).toBe("number");
171
+ expect(channel).toHaveProperty("memberCount");
172
+ expect(typeof channel.memberCount).toBe("number");
173
+ if (hasValidField(channel, "memberState")) {
174
+ expect(validSendbirdGroupChannelMemberStateEnum.includes(channel.memberState)).toBe(true);
175
+ expect(typeof channel.memberState).toBe("string");
176
+ }
177
+ expect(channel).toHaveProperty("members");
178
+ expect(Array.isArray(channel.members)).toBe(true);
179
+ expect(channel).toHaveProperty("messageSurvivalSeconds");
180
+ expect(typeof channel.messageSurvivalSeconds).toBe("number");
181
+ expect(channel).toHaveProperty("metadata");
182
+ expect(typeof channel.metadata).toBe("object");
183
+ if (hasValidField(channel, "myRole")) {
184
+ expect(validSendbirdGroupChannelMyRoleEnum.includes(channel.myRole)).toBe(true);
185
+ expect(typeof channel.myRole).toBe("string");
186
+ }
187
+ expect(channel).toHaveProperty("name");
188
+ expect(typeof channel.name).toBe("string");
189
+ expect(channel).toHaveProperty("readReceipt");
190
+ expect(typeof channel.readReceipt).toBe("object");
191
+ expect(channel).toHaveProperty("smsFallback");
192
+ expect(channel.smsFallback).toBeInstanceOf(SendbirdSmsFallback);
193
+ if (hasValidField(channel, "tsMessageOffset")) {
194
+ expect(typeof channel.tsMessageOffset).toBe("number");
195
+ }
196
+ expect(channel).toHaveProperty("unreadMentionCount");
197
+ expect(typeof channel.unreadMentionCount).toBe("number");
198
+ expect(channel).toHaveProperty("unreadMessageCount");
199
+ expect(typeof channel.unreadMessageCount).toBe("number");
200
+ if (hasValidField(channel, "userLastRead")) {
201
+ expect(typeof channel.userLastRead).toBe("number");
202
+ }
203
+ });
204
+ expect(response).toHaveProperty("next");
205
+ expect(typeof response.next).toBe("string");
206
+ try {
207
+ yield groupChannelApi.deleteAGroupChannel({
208
+ channelUrl: CHANNEL_URL,
209
+ apiToken: API_TOKEN,
210
+ });
211
+ }
212
+ catch (e) {
213
+ console.warn("ignore error in cleanup", e);
214
+ }
215
+ }));
216
+ it("call listChannels with negative query params", () => __awaiter(void 0, void 0, void 0, function* () {
217
+ var _b;
218
+ const CHANNEL_URL = "create-group-channel-before-call-list-channels-with-negative-params-test-channel-url";
219
+ try {
220
+ yield groupChannelApi.deleteAGroupChannel({
221
+ channelUrl: CHANNEL_URL,
222
+ apiToken: API_TOKEN,
223
+ });
224
+ }
225
+ catch (e) {
226
+ console.warn("ignore error in cleanup", e);
227
+ }
228
+ yield new Promise((resolve) => setTimeout(resolve, 500));
229
+ const request = {
230
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
231
+ blockSdkUserChannelJoin: true,
232
+ channelUrl: CHANNEL_URL,
233
+ coverUrl: "empty",
234
+ customType: "data",
235
+ data: "data",
236
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
237
+ inviterId: MASTER_USER_ID,
238
+ isDistinct: false,
239
+ isEphemeral: true,
240
+ isPublic: true,
241
+ isSuper: true,
242
+ name: "test",
243
+ operatorIds: [],
244
+ strict: true,
245
+ users: USERS.map((id) => ({ userId: id })),
246
+ };
247
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
248
+ apiToken: API_TOKEN,
249
+ createAGroupChannelRequest: request,
250
+ });
251
+ expect(createGroupChannelresponse).toBeDefined();
252
+ yield new Promise((resolve) => setTimeout(resolve, 100));
253
+ const response = yield groupChannelApi.listChannels({
254
+ apiToken: API_TOKEN,
255
+ limit: 10,
256
+ distinctMode: "all",
257
+ publicMode: "all",
258
+ superMode: "all",
259
+ showEmpty: false,
260
+ showMember: false,
261
+ showDeliveryReceipt: false,
262
+ showReadReceipt: false,
263
+ showMetadata: false,
264
+ showFrozen: false,
265
+ });
266
+ expect(response).toHaveProperty("channels");
267
+ expect(Array.isArray(response.channels)).toBe(true);
268
+ (_b = response.channels) === null || _b === void 0 ? void 0 : _b.forEach((channel) => {
269
+ expect(channel).toHaveProperty("channelUrl");
270
+ expect(typeof channel.channelUrl).toBe("string");
271
+ expect(channel).not.toHaveProperty("deliveryReceipt");
272
+ expect(channel).not.toHaveProperty("members");
273
+ expect(channel).not.toHaveProperty("metadata");
274
+ expect(channel).not.toHaveProperty("readReceipt");
275
+ expect(channel).toHaveProperty("name");
276
+ expect(typeof channel.name).toBe("string");
277
+ expect(channel).toHaveProperty("coverUrl");
278
+ expect(typeof channel.coverUrl).toBe("string");
279
+ expect(channel).toHaveProperty("createdAt");
280
+ expect(typeof channel.createdAt).toBe("number");
281
+ });
282
+ expect(response).toHaveProperty("next");
283
+ expect(typeof response.next).toBe("string");
284
+ try {
285
+ yield groupChannelApi.deleteAGroupChannel({
286
+ channelUrl: CHANNEL_URL,
287
+ apiToken: API_TOKEN,
288
+ });
289
+ }
290
+ catch (e) {
291
+ console.warn("ignore error in cleanup", e);
292
+ }
293
+ }));
294
+ it("call createAGroupChannel with Error", () => __awaiter(void 0, void 0, void 0, function* () {
295
+ const CHANNEL_URL = "create-group-channel-with-error-test-channel-url";
296
+ try {
297
+ yield groupChannelApi.deleteAGroupChannel({
298
+ channelUrl: CHANNEL_URL,
299
+ apiToken: API_TOKEN,
300
+ });
301
+ }
302
+ catch (e) {
303
+ console.warn("ignore error in cleanup", e);
304
+ }
305
+ yield new Promise((resolve) => setTimeout(resolve, 500));
306
+ const request = {
307
+ accessCode: "integration",
308
+ blockSdkUserChannelJoin: true,
309
+ channelUrl: CHANNEL_URL,
310
+ coverUrl: "empty",
311
+ customType: "data",
312
+ data: "data",
313
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
314
+ inviterId: MASTER_USER_ID,
315
+ isDistinct: true,
316
+ isEphemeral: true,
317
+ isPublic: true,
318
+ isSuper: true,
319
+ name: "test",
320
+ operatorIds: [],
321
+ strict: true,
322
+ users: USERS.map((id) => ({ userId: id })),
323
+ };
324
+ try {
325
+ yield groupChannelApi.createAGroupChannel({
326
+ apiToken: API_TOKEN,
327
+ createAGroupChannelRequest: request,
328
+ });
329
+ }
330
+ catch (error) {
331
+ expect(JSON.parse(error.body).code).toBe(400111);
332
+ }
333
+ }));
334
+ it("call createAGroupChannel and deleteAGroupChannel", () => __awaiter(void 0, void 0, void 0, function* () {
335
+ const CHANNEL_URL = "create-then-delete-group-channel-test-channel-url";
336
+ try {
337
+ yield groupChannelApi.deleteAGroupChannel({
338
+ channelUrl: CHANNEL_URL,
339
+ apiToken: API_TOKEN,
340
+ });
341
+ }
342
+ catch (e) {
343
+ console.warn("ignore error in cleanup", e);
344
+ }
345
+ yield new Promise((resolve) => setTimeout(resolve, 500));
346
+ const request = {
347
+ accessCode: "integration",
348
+ blockSdkUserChannelJoin: true,
349
+ channelUrl: CHANNEL_URL,
350
+ coverUrl: "empty",
351
+ customType: "data",
352
+ data: "data",
353
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
354
+ inviterId: MASTER_USER_ID,
355
+ isDistinct: false,
356
+ isEphemeral: true,
357
+ isPublic: true,
358
+ isSuper: true,
359
+ name: "test",
360
+ operatorIds: [],
361
+ strict: true,
362
+ users: USERS.map((id) => ({ userId: id })),
363
+ };
364
+ const response = yield groupChannelApi.createAGroupChannel({
365
+ apiToken: API_TOKEN,
366
+ createAGroupChannelRequest: request,
367
+ });
368
+ yield new Promise((resolve) => setTimeout(resolve, 100));
369
+ expect(response).toHaveProperty("channelUrl");
370
+ expect(response.channelUrl).toBe(CHANNEL_URL);
371
+ expect(typeof response.channelUrl).toBe("string");
372
+ expect(response).toHaveProperty("coverUrl");
373
+ expect(response.coverUrl).toBe("empty");
374
+ expect(typeof response.coverUrl).toBe("string");
375
+ expect(response).toHaveProperty("customType");
376
+ expect(response.customType).toBe("data");
377
+ expect(typeof response.customType).toBe("string");
378
+ try {
379
+ yield groupChannelApi.deleteAGroupChannel({
380
+ channelUrl: response.channelUrl,
381
+ apiToken: API_TOKEN,
382
+ });
383
+ }
384
+ catch (e) {
385
+ console.warn("ignore error in cleanup", e);
386
+ }
387
+ }));
388
+ it("call getAGroupChannel", () => __awaiter(void 0, void 0, void 0, function* () {
389
+ var _c, _d, _e, _f, _g, _h, _j, _k;
390
+ const CHANNEL_URL = "get-group-channel-test-channel-url";
391
+ try {
392
+ yield groupChannelApi.deleteAGroupChannel({
393
+ channelUrl: CHANNEL_URL,
394
+ apiToken: API_TOKEN,
395
+ });
396
+ }
397
+ catch (e) {
398
+ console.warn("ignore error in cleanup", e);
399
+ }
400
+ yield new Promise((resolve) => setTimeout(resolve, 500));
401
+ const request = {
402
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
403
+ blockSdkUserChannelJoin: true,
404
+ channelUrl: CHANNEL_URL,
405
+ coverUrl: "empty",
406
+ customType: "data",
407
+ data: "data",
408
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
409
+ inviterId: MASTER_USER_ID,
410
+ isDistinct: false,
411
+ isEphemeral: true,
412
+ isPublic: true,
413
+ isSuper: true,
414
+ name: "test",
415
+ operatorIds: [],
416
+ strict: true,
417
+ users: USERS.map((id) => ({ userId: id })),
418
+ };
419
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
420
+ apiToken: API_TOKEN,
421
+ createAGroupChannelRequest: request,
422
+ });
423
+ yield new Promise((resolve) => setTimeout(resolve, 100));
424
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
425
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
426
+ expect(typeof createGroupChannelresponse.channelUrl).toBe("string");
427
+ const groupChannelResponse = yield groupChannelApi.getAGroupChannel({
428
+ channelUrl: createGroupChannelresponse.channelUrl,
429
+ apiToken: API_TOKEN,
430
+ showDeliveryReceipt: true,
431
+ showReadReceipt: true,
432
+ showMember: true,
433
+ memberActiveMode: "all",
434
+ });
435
+ const channel = groupChannelResponse;
436
+ expect(channel).toHaveProperty("channelUrl");
437
+ expect(channel.channelUrl).toBe(CHANNEL_URL);
438
+ expect(channel).toHaveProperty("channel");
439
+ expect(channel.channel).toBeInstanceOf(SendbirdGroupChannelDetailChannel);
440
+ expect(channel.channel).toHaveProperty("channelUrl");
441
+ expect(typeof ((_c = channel.channel) === null || _c === void 0 ? void 0 : _c.channelUrl)).toBe("string");
442
+ expect(channel.channel).toHaveProperty("coverUrl");
443
+ expect(typeof ((_d = channel.channel) === null || _d === void 0 ? void 0 : _d.coverUrl)).toBe("string");
444
+ expect(channel.channel).toHaveProperty("createdAt");
445
+ expect(typeof ((_e = channel.channel) === null || _e === void 0 ? void 0 : _e.createdAt)).toBe("number");
446
+ expect(channel.channel).toHaveProperty("customType");
447
+ expect(typeof ((_f = channel.channel) === null || _f === void 0 ? void 0 : _f.customType)).toBe("string");
448
+ expect(channel.channel).toHaveProperty("data");
449
+ expect(typeof ((_g = channel.channel) === null || _g === void 0 ? void 0 : _g.data)).toBe("string");
450
+ expect(channel.channel).toHaveProperty("maxLengthMessage");
451
+ expect(typeof ((_h = channel.channel) === null || _h === void 0 ? void 0 : _h.maxLengthMessage)).toBe("number");
452
+ expect(channel.channel).toHaveProperty("memberCount");
453
+ expect(typeof ((_j = channel.channel) === null || _j === void 0 ? void 0 : _j.memberCount)).toBe("number");
454
+ expect(channel.channel).toHaveProperty("name");
455
+ expect(typeof ((_k = channel.channel) === null || _k === void 0 ? void 0 : _k.name)).toBe("string");
456
+ expect(channel).toHaveProperty("name");
457
+ expect(typeof channel.name).toBe("string");
458
+ expect(channel).toHaveProperty("coverUrl");
459
+ expect(typeof channel.coverUrl).toBe("string");
460
+ expect(channel).toHaveProperty("createdAt");
461
+ expect(typeof channel.createdAt).toBe("number");
462
+ if (hasValidField(channel, "createdBy")) {
463
+ expect(channel.createdBy).toBeInstanceOf(SendbirdBasicUserInfo);
464
+ }
465
+ expect(channel).toHaveProperty("customType");
466
+ expect(typeof channel.customType).toBe("string");
467
+ expect(channel).toHaveProperty("data");
468
+ expect(typeof channel.data).toBe("string");
469
+ expect(channel).toHaveProperty("deliveryReceipt");
470
+ expect(typeof channel.deliveryReceipt).toBe("object");
471
+ expect(channel).toHaveProperty("disappearingMessage");
472
+ expect(channel.disappearingMessage).toBeInstanceOf(SendbirdDisappearingMessage);
473
+ expect(channel).toHaveProperty("freeze");
474
+ expect(typeof channel.freeze).toBe("boolean");
475
+ expect(channel).toHaveProperty("hasAiBot");
476
+ expect(typeof channel.hasAiBot).toBe("boolean");
477
+ expect(channel).toHaveProperty("hasBot");
478
+ expect(typeof channel.hasBot).toBe("boolean");
479
+ expect(channel).toHaveProperty("ignoreProfanityFilter");
480
+ expect(typeof channel.ignoreProfanityFilter).toBe("boolean");
481
+ expect(channel).toHaveProperty("isAccessCodeRequired");
482
+ expect(typeof channel.isAccessCodeRequired).toBe("boolean");
483
+ expect(channel).toHaveProperty("isBroadcast");
484
+ expect(typeof channel.isBroadcast).toBe("boolean");
485
+ expect(channel).toHaveProperty("isDiscoverable");
486
+ expect(typeof channel.isDiscoverable).toBe("boolean");
487
+ expect(channel).toHaveProperty("isDistinct");
488
+ expect(typeof channel.isDistinct).toBe("boolean");
489
+ expect(channel).toHaveProperty("isEphemeral");
490
+ expect(typeof channel.isEphemeral).toBe("boolean");
491
+ if ("isHidden" in channel) {
492
+ expect(typeof channel.isHidden).toBe("boolean");
493
+ }
494
+ if ("isMuted" in channel) {
495
+ expect(typeof channel.isMuted).toBe("boolean");
496
+ }
497
+ if ("isPublic" in channel) {
498
+ expect(typeof channel.isPublic).toBe("boolean");
499
+ }
500
+ if ("isPushEnabled" in channel) {
501
+ expect(typeof channel.isPushEnabled).toBe("boolean");
502
+ }
503
+ expect(channel).toHaveProperty("isSuper");
504
+ expect(typeof channel.isSuper).toBe("boolean");
505
+ expect(channel).toHaveProperty("joinedMemberCount");
506
+ expect(typeof channel.joinedMemberCount).toBe("number");
507
+ if (hasValidField(channel, "lastMessage")) {
508
+ expect(channel.lastMessage).toBeInstanceOf(SendbirdMessageResponse);
509
+ }
510
+ expect(channel).toHaveProperty("maxLengthMessage");
511
+ expect(typeof channel.maxLengthMessage).toBe("number");
512
+ expect(channel).toHaveProperty("memberCount");
513
+ expect(typeof channel.memberCount).toBe("number");
514
+ expect(channel).toHaveProperty("members");
515
+ expect(Array.isArray(channel.members)).toBe(true);
516
+ expect(channel).toHaveProperty("messageSurvivalSeconds");
517
+ expect(typeof channel.messageSurvivalSeconds).toBe("number");
518
+ expect(channel).toHaveProperty("name");
519
+ expect(typeof channel.name).toBe("string");
520
+ expect(channel).toHaveProperty("readReceipt");
521
+ expect(typeof channel.readReceipt).toBe("object");
522
+ expect(channel).toHaveProperty("smsFallback");
523
+ expect(channel.smsFallback).toBeInstanceOf(SendbirdSmsFallback);
524
+ expect(channel).toHaveProperty("unreadMentionCount");
525
+ expect(typeof channel.unreadMentionCount).toBe("number");
526
+ expect(channel).toHaveProperty("unreadMessageCount");
527
+ expect(typeof channel.unreadMessageCount).toBe("number");
528
+ try {
529
+ yield groupChannelApi.deleteAGroupChannel({
530
+ channelUrl: createGroupChannelresponse.channelUrl,
531
+ apiToken: API_TOKEN,
532
+ });
533
+ }
534
+ catch (e) {
535
+ console.warn("ignore error in cleanup", e);
536
+ }
537
+ }));
538
+ it("call listMembers", () => __awaiter(void 0, void 0, void 0, function* () {
539
+ var _l, _m;
540
+ const CHANNEL_URL = "create-group-channel-before-call-list-channels-with-then-list-members-test-channel-url";
541
+ try {
542
+ yield groupChannelApi.deleteAGroupChannel({
543
+ channelUrl: CHANNEL_URL,
544
+ apiToken: API_TOKEN,
545
+ });
546
+ }
547
+ catch (e) {
548
+ console.warn("ignore error in cleanup", e);
549
+ }
550
+ yield new Promise((resolve) => setTimeout(resolve, 500));
551
+ const request = {
552
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
553
+ blockSdkUserChannelJoin: true,
554
+ channelUrl: CHANNEL_URL,
555
+ coverUrl: "empty",
556
+ customType: "data",
557
+ data: "data",
558
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
559
+ inviterId: MASTER_USER_ID,
560
+ isDistinct: false,
561
+ isEphemeral: true,
562
+ isPublic: true,
563
+ isSuper: true,
564
+ name: "test",
565
+ operatorIds: [],
566
+ strict: true,
567
+ users: USERS.map((id) => ({ userId: id })),
568
+ };
569
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
570
+ apiToken: API_TOKEN,
571
+ createAGroupChannelRequest: request,
572
+ });
573
+ expect(createGroupChannelresponse).toBeDefined();
574
+ yield new Promise((resolve) => setTimeout(resolve, 100));
575
+ const listResponse = yield groupChannelApi.listChannels({
576
+ apiToken: API_TOKEN,
577
+ limit: 1,
578
+ distinctMode: "all",
579
+ publicMode: "all",
580
+ superMode: "all",
581
+ showEmpty: true,
582
+ showMember: true,
583
+ showDeliveryReceipt: true,
584
+ showReadReceipt: true,
585
+ showMetadata: true,
586
+ showFrozen: true,
587
+ });
588
+ expect(listResponse).toHaveProperty("channels");
589
+ expect(Array.isArray(listResponse.channels)).toBe(true);
590
+ expect((_l = listResponse.channels) === null || _l === void 0 ? void 0 : _l.length).toBe(1);
591
+ const channel = (_m = listResponse.channels) === null || _m === void 0 ? void 0 : _m[0];
592
+ expect(channel).toBeDefined();
593
+ if (channel) {
594
+ const listMembersResponse = yield groupChannelApi.listMembers({
595
+ apiToken: API_TOKEN,
596
+ channelUrl: channel.channelUrl,
597
+ });
598
+ expect(listMembersResponse).toHaveProperty("members");
599
+ expect(Array.isArray(listMembersResponse.members)).toBe(true);
600
+ listMembersResponse.members.forEach((member) => {
601
+ expect(member).toHaveProperty("userId");
602
+ expect(typeof member.userId).toBe("string");
603
+ if (hasValidField(member, "deliveredTs")) {
604
+ expect(typeof member.deliveredTs).toBe("number");
605
+ }
606
+ if (hasValidField(member, "doNotDisturb")) {
607
+ expect(typeof member.doNotDisturb).toBe("boolean");
608
+ }
609
+ if (hasValidField(member, "friendDiscoveryKey")) {
610
+ expect(Array.isArray(member.friendDiscoveryKey)).toBe(true);
611
+ }
612
+ if (hasValidField(member, "friendName")) {
613
+ expect(typeof member.friendName).toBe("string");
614
+ }
615
+ if (hasValidField(member, "isActive")) {
616
+ expect(typeof member.isActive).toBe("boolean");
617
+ }
618
+ if (hasValidField(member, "isBlockedByMe")) {
619
+ expect(typeof member.isBlockedByMe).toBe("boolean");
620
+ }
621
+ if (hasValidField(member, "isBlockingMe")) {
622
+ expect(typeof member.isBlockingMe).toBe("boolean");
623
+ }
624
+ if (hasValidField(member, "isMuted")) {
625
+ expect(typeof member.isMuted).toBe("boolean");
626
+ }
627
+ if (hasValidField(member, "isOnline")) {
628
+ expect(typeof member.isOnline).toBe("boolean");
629
+ }
630
+ if (hasValidField(member, "lastSeenAt")) {
631
+ expect(typeof member.lastSeenAt).toBe("number");
632
+ }
633
+ if (hasValidField(member, "metadata")) {
634
+ expect(typeof member.metadata).toBe("object");
635
+ }
636
+ if (hasValidField(member, "mutedDescription")) {
637
+ expect(typeof member.mutedDescription).toBe("string");
638
+ }
639
+ if (hasValidField(member, "mutedEndAt")) {
640
+ expect(typeof member.mutedEndAt).toBe("number");
641
+ }
642
+ if (hasValidField(member, "nickname")) {
643
+ expect(typeof member.nickname).toBe("string");
644
+ }
645
+ if (hasValidField(member, "pushEnabled")) {
646
+ expect(typeof member.pushEnabled).toBe("boolean");
647
+ }
648
+ if (hasValidField(member, "pushTriggerOption")) {
649
+ expect(typeof member.pushTriggerOption).toBe("string");
650
+ }
651
+ if (hasValidField(member, "profileUrl")) {
652
+ expect(typeof member.profileUrl).toBe("string");
653
+ }
654
+ if (hasValidField(member, "requireAuthForProfileImage")) {
655
+ expect(typeof member.requireAuthForProfileImage).toBe("boolean");
656
+ }
657
+ if (hasValidField(member, "readTs")) {
658
+ expect(typeof member.readTs).toBe("number");
659
+ }
660
+ if (hasValidField(member, "role")) {
661
+ expect(typeof member.role).toBe("string");
662
+ expect(validSendbirdMemberRoleEnum.includes(member.role)).toBe(true);
663
+ }
664
+ if (hasValidField(member, "state")) {
665
+ expect(typeof member.state).toBe("string");
666
+ expect(validSendbirdMemberStateEnum.includes(member.state)).toBe(true);
667
+ }
668
+ });
669
+ }
670
+ try {
671
+ yield groupChannelApi.deleteAGroupChannel({
672
+ channelUrl: CHANNEL_URL,
673
+ apiToken: API_TOKEN,
674
+ });
675
+ }
676
+ catch (e) {
677
+ console.warn("ignore error in cleanup", e);
678
+ }
679
+ }));
680
+ it("call registerOperatorsToAGroupChannel, listOperators then cancelTheRegistrationOfOperators", () => __awaiter(void 0, void 0, void 0, function* () {
681
+ var _o, _p, _q, _r;
682
+ const CHANNEL_URL = "list-operator-test-channel-url";
683
+ try {
684
+ yield groupChannelApi.deleteAGroupChannel({
685
+ channelUrl: CHANNEL_URL,
686
+ apiToken: API_TOKEN,
687
+ });
688
+ }
689
+ catch (e) {
690
+ console.warn("ignore error in cleanup", e);
691
+ }
692
+ yield new Promise((resolve) => setTimeout(resolve, 500));
693
+ const request = {
694
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
695
+ blockSdkUserChannelJoin: true,
696
+ channelUrl: CHANNEL_URL,
697
+ coverUrl: "empty",
698
+ customType: "data",
699
+ data: "data",
700
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
701
+ inviterId: MASTER_USER_ID,
702
+ isDistinct: false,
703
+ isEphemeral: true,
704
+ isPublic: true,
705
+ isSuper: true,
706
+ name: "test",
707
+ operatorIds: [],
708
+ strict: true,
709
+ users: USERS.map((id) => ({ userId: id })),
710
+ };
711
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
712
+ apiToken: API_TOKEN,
713
+ createAGroupChannelRequest: request,
714
+ });
715
+ yield new Promise((resolve) => setTimeout(resolve, 100));
716
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
717
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
718
+ expect(typeof createGroupChannelresponse.channelUrl).toBe("string");
719
+ expect(createGroupChannelresponse).toHaveProperty("operators");
720
+ expect(((_o = createGroupChannelresponse.operators) === null || _o === void 0 ? void 0 : _o.length) || 0).toBe(0);
721
+ const registerOperatorResponse = yield groupChannelApi.registerOperatorsToAGroupChannel({
722
+ channelUrl: createGroupChannelresponse.channelUrl,
723
+ apiToken: API_TOKEN,
724
+ registerOperatorsToAGroupChannelRequest: {
725
+ operatorIds: [MASTER_USER_ID],
726
+ },
727
+ });
728
+ expect(registerOperatorResponse).toBeDefined();
729
+ const listOperatorsResponse = yield groupChannelApi.listOperators({
730
+ channelUrl: createGroupChannelresponse.channelUrl,
731
+ apiToken: API_TOKEN,
732
+ });
733
+ expect(listOperatorsResponse).toHaveProperty("operators");
734
+ expect(Object.keys(listOperatorsResponse).length).toBe(2);
735
+ expect(((_p = listOperatorsResponse.operators) === null || _p === void 0 ? void 0 : _p.length) || 0).toBe(1);
736
+ (_q = listOperatorsResponse.operators) === null || _q === void 0 ? void 0 : _q.map((operator) => {
737
+ expect(operator.userId).toEqual(MASTER_USER_ID);
738
+ expect(operator).toHaveProperty("nickname");
739
+ expect(typeof operator.nickname).toBe("string");
740
+ expect(operator).toHaveProperty("profileUrl");
741
+ expect(typeof operator.profileUrl).toBe("string");
742
+ expect(operator).toHaveProperty("metadata");
743
+ expect(typeof operator.metadata).toBe("object");
744
+ expect(operator).toHaveProperty("requireAuthForProfileImage");
745
+ expect(typeof operator.requireAuthForProfileImage).toBe("boolean");
746
+ });
747
+ const cancelTheRegistrationOfOperatorsResponse = yield groupChannelApi.cancelTheRegistrationOfOperators({
748
+ channelUrl: createGroupChannelresponse.channelUrl,
749
+ apiToken: API_TOKEN,
750
+ operatorIds: MASTER_USER_ID,
751
+ });
752
+ expect(cancelTheRegistrationOfOperatorsResponse).toBeDefined();
753
+ const listOperatorsAfterCancelRegistrationResponse = yield groupChannelApi.listOperators({
754
+ channelUrl: createGroupChannelresponse.channelUrl,
755
+ apiToken: API_TOKEN,
756
+ });
757
+ expect(listOperatorsAfterCancelRegistrationResponse).toHaveProperty("operators");
758
+ expect(Object.keys(listOperatorsAfterCancelRegistrationResponse).length).toBe(2);
759
+ expect(((_r = listOperatorsAfterCancelRegistrationResponse.operators) === null || _r === void 0 ? void 0 : _r.length) || 0).toBe(0);
760
+ try {
761
+ yield groupChannelApi.deleteAGroupChannel({
762
+ channelUrl: createGroupChannelresponse.channelUrl,
763
+ apiToken: API_TOKEN,
764
+ });
765
+ }
766
+ catch (e) {
767
+ console.warn("ignore error in cleanup", e);
768
+ }
769
+ }));
770
+ it("call startTypingIndicators and stopTypingIndicators", () => __awaiter(void 0, void 0, void 0, function* () {
771
+ const CHANNEL_URL = "group-channel-typing-indicators-test-channel-url";
772
+ try {
773
+ yield groupChannelApi.deleteAGroupChannel({
774
+ channelUrl: CHANNEL_URL,
775
+ apiToken: API_TOKEN,
776
+ });
777
+ }
778
+ catch (e) {
779
+ console.warn("ignore error in cleanup", e);
780
+ }
781
+ yield new Promise((resolve) => setTimeout(resolve, 500));
782
+ const request = {
783
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
784
+ blockSdkUserChannelJoin: true,
785
+ channelUrl: CHANNEL_URL,
786
+ coverUrl: "empty",
787
+ customType: "data",
788
+ data: "data",
789
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
790
+ inviterId: MASTER_USER_ID,
791
+ isDistinct: false,
792
+ isEphemeral: true,
793
+ isPublic: true,
794
+ isSuper: true,
795
+ name: "test",
796
+ operatorIds: [],
797
+ strict: true,
798
+ users: USERS.map((id) => ({ userId: id })),
799
+ };
800
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
801
+ apiToken: API_TOKEN,
802
+ createAGroupChannelRequest: request,
803
+ });
804
+ yield new Promise((resolve) => setTimeout(resolve, 100));
805
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
806
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
807
+ const startTypingResponse = yield groupChannelApi.startTypingIndicators({
808
+ channelUrl: createGroupChannelresponse.channelUrl,
809
+ apiToken: API_TOKEN,
810
+ startTypingIndicatorsRequest: {
811
+ userIds: [MASTER_USER_ID],
812
+ },
813
+ });
814
+ const stopTypingResponse = yield groupChannelApi.startTypingIndicators({
815
+ channelUrl: createGroupChannelresponse.channelUrl,
816
+ apiToken: API_TOKEN,
817
+ startTypingIndicatorsRequest: {
818
+ userIds: [MASTER_USER_ID],
819
+ },
820
+ });
821
+ expect(startTypingResponse).toBeDefined();
822
+ expect(stopTypingResponse).toBeDefined();
823
+ try {
824
+ yield groupChannelApi.deleteAGroupChannel({
825
+ channelUrl: createGroupChannelresponse.channelUrl,
826
+ apiToken: API_TOKEN,
827
+ });
828
+ }
829
+ catch (e) {
830
+ console.warn("ignore error in cleanup", e);
831
+ }
832
+ }));
833
+ it("call hideAChannel then unhideAChannel", () => __awaiter(void 0, void 0, void 0, function* () {
834
+ const CHANNEL_URL = "group-channel-hide-test-channel-url";
835
+ try {
836
+ yield groupChannelApi.deleteAGroupChannel({
837
+ channelUrl: CHANNEL_URL,
838
+ apiToken: API_TOKEN,
839
+ });
840
+ }
841
+ catch (e) {
842
+ console.warn("ignore error in cleanup", e);
843
+ }
844
+ yield new Promise((resolve) => setTimeout(resolve, 500));
845
+ const request = {
846
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
847
+ blockSdkUserChannelJoin: true,
848
+ channelUrl: CHANNEL_URL,
849
+ coverUrl: "empty",
850
+ customType: "data",
851
+ data: "data",
852
+ invitationStatus: {
853
+ MASTER_USER_ID: "joined",
854
+ },
855
+ inviterId: MASTER_USER_ID,
856
+ isDistinct: false,
857
+ isEphemeral: true,
858
+ isPublic: true,
859
+ isSuper: true,
860
+ name: "test",
861
+ operatorIds: [],
862
+ strict: true,
863
+ users: USERS.map((id) => ({ userId: id })),
864
+ };
865
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
866
+ apiToken: API_TOKEN,
867
+ createAGroupChannelRequest: request,
868
+ });
869
+ yield new Promise((resolve) => setTimeout(resolve, 100));
870
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
871
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
872
+ const hideAChannelResponse = yield groupChannelApi.hideAChannel({
873
+ channelUrl: createGroupChannelresponse.channelUrl,
874
+ apiToken: API_TOKEN,
875
+ hideAChannelRequest: {
876
+ userId: SECOND_USER_ID,
877
+ allowAutoUnhide: true,
878
+ shouldHideAll: false,
879
+ },
880
+ });
881
+ const groupChannelAfterHideResponse = yield groupChannelApi.getAGroupChannel({
882
+ channelUrl: createGroupChannelresponse.channelUrl,
883
+ apiToken: API_TOKEN,
884
+ showDeliveryReceipt: true,
885
+ showReadReceipt: true,
886
+ showMember: true,
887
+ memberActiveMode: "all",
888
+ userId: SECOND_USER_ID,
889
+ });
890
+ const unhideAChannelResponse = yield groupChannelApi.unhideAChannel({
891
+ channelUrl: createGroupChannelresponse.channelUrl,
892
+ apiToken: API_TOKEN,
893
+ shouldUnhideAll: false,
894
+ userId: SECOND_USER_ID,
895
+ });
896
+ const groupChannelAfterUnHideResponse = yield groupChannelApi.getAGroupChannel({
897
+ channelUrl: createGroupChannelresponse.channelUrl,
898
+ apiToken: API_TOKEN,
899
+ showDeliveryReceipt: true,
900
+ showReadReceipt: true,
901
+ showMember: true,
902
+ memberActiveMode: "all",
903
+ userId: SECOND_USER_ID,
904
+ });
905
+ expect(groupChannelAfterHideResponse.channelUrl).toBe(CHANNEL_URL);
906
+ expect(groupChannelAfterHideResponse).toHaveProperty("hiddenState");
907
+ expect(groupChannelAfterHideResponse.isHidden).toBeTruthy();
908
+ expect(groupChannelAfterHideResponse).toHaveProperty("hiddenState");
909
+ expect(groupChannelAfterHideResponse.hiddenState).toBe("hidden_allow_auto_unhide");
910
+ expect(validSendbirdGroupChannelHiddenStateEnum.includes(groupChannelAfterHideResponse.hiddenState)).toBeTruthy();
911
+ expect(groupChannelAfterUnHideResponse).toHaveProperty("hiddenState");
912
+ expect(groupChannelAfterUnHideResponse.isHidden).toBeFalsy();
913
+ expect(groupChannelAfterUnHideResponse).toHaveProperty("hiddenState");
914
+ expect(groupChannelAfterUnHideResponse.hiddenState).toBe("unhidden");
915
+ expect(validSendbirdGroupChannelHiddenStateEnum.includes(groupChannelAfterUnHideResponse.hiddenState)).toBeTruthy();
916
+ expect(hideAChannelResponse).toBeDefined();
917
+ expect(unhideAChannelResponse).toBeDefined();
918
+ try {
919
+ yield groupChannelApi.deleteAGroupChannel({
920
+ channelUrl: createGroupChannelresponse.channelUrl,
921
+ apiToken: API_TOKEN,
922
+ });
923
+ }
924
+ catch (e) {
925
+ console.warn("ignore error in cleanup", e);
926
+ }
927
+ }));
928
+ it("call inviteAsMembers then acceptAnInvitation and checkIfMember", () => __awaiter(void 0, void 0, void 0, function* () {
929
+ var _s, _t, _u, _v;
930
+ const CHANNEL_URL = "group-channel-member-invitation-test-channel-url";
931
+ try {
932
+ yield groupChannelApi.deleteAGroupChannel({
933
+ channelUrl: CHANNEL_URL,
934
+ apiToken: API_TOKEN,
935
+ });
936
+ }
937
+ catch (e) {
938
+ console.warn("ignore error in cleanup", e);
939
+ }
940
+ yield new Promise((resolve) => setTimeout(resolve, 500));
941
+ const request = {
942
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
943
+ blockSdkUserChannelJoin: true,
944
+ channelUrl: CHANNEL_URL,
945
+ coverUrl: "empty",
946
+ customType: "data",
947
+ data: "data",
948
+ invitationStatus: {
949
+ MASTER_USER_ID: "joined",
950
+ },
951
+ inviterId: MASTER_USER_ID,
952
+ isDistinct: false,
953
+ isEphemeral: true,
954
+ isPublic: true,
955
+ isSuper: true,
956
+ name: "test",
957
+ operatorIds: [],
958
+ strict: true,
959
+ users: USERS.map((id) => ({ userId: id })),
960
+ };
961
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
962
+ apiToken: API_TOKEN,
963
+ createAGroupChannelRequest: request,
964
+ });
965
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
966
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
967
+ yield new Promise((resolve) => setTimeout(resolve, 100));
968
+ const inviteAsMembersResponse = yield groupChannelApi.inviteAsMembers({
969
+ channelUrl: CHANNEL_URL,
970
+ apiToken: API_TOKEN,
971
+ inviteAsMembersRequest: {
972
+ inviterId: MASTER_USER_ID,
973
+ userIds: [SECOND_USER_ID],
974
+ },
975
+ });
976
+ const groupChannelAfterInviteResponse = yield groupChannelApi.getAGroupChannel({
977
+ channelUrl: createGroupChannelresponse.channelUrl,
978
+ apiToken: API_TOKEN,
979
+ showDeliveryReceipt: true,
980
+ showReadReceipt: true,
981
+ showMember: true,
982
+ memberActiveMode: "all",
983
+ userId: SECOND_USER_ID,
984
+ });
985
+ const acceptAnInvitationResponse = yield groupChannelApi.acceptAnInvitation({
986
+ channelUrl: createGroupChannelresponse.channelUrl,
987
+ apiToken: API_TOKEN,
988
+ acceptAnInvitationRequest: {
989
+ userId: SECOND_USER_ID,
990
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
991
+ },
992
+ });
993
+ const checkIfMemberResponse = yield groupChannelApi.checkIfMember({
994
+ channelUrl: createGroupChannelresponse.channelUrl,
995
+ apiToken: API_TOKEN,
996
+ userId: SECOND_USER_ID,
997
+ });
998
+ const groupChannelAfterJoinedResponse = yield groupChannelApi.getAGroupChannel({
999
+ channelUrl: createGroupChannelresponse.channelUrl,
1000
+ apiToken: API_TOKEN,
1001
+ showDeliveryReceipt: true,
1002
+ showReadReceipt: true,
1003
+ showMember: true,
1004
+ memberActiveMode: "all",
1005
+ userId: SECOND_USER_ID,
1006
+ });
1007
+ expect(inviteAsMembersResponse).toHaveProperty("invitedAt");
1008
+ expect(inviteAsMembersResponse).toHaveProperty("inviter");
1009
+ expect((_s = inviteAsMembersResponse.inviter) === null || _s === void 0 ? void 0 : _s.userId).toBe(MASTER_USER_ID);
1010
+ expect(inviteAsMembersResponse.inviter).toBeInstanceOf(SendbirdBasicUserInfo);
1011
+ expect(groupChannelAfterInviteResponse).toHaveProperty("memberState");
1012
+ expect(groupChannelAfterInviteResponse.memberState).toBe("invited");
1013
+ expect(groupChannelAfterInviteResponse.memberCount).toBe(2);
1014
+ expect(groupChannelAfterInviteResponse.joinedMemberCount).toBe(1);
1015
+ expect(acceptAnInvitationResponse.joinedMemberCount).toBe(2);
1016
+ expect((_u = (_t = acceptAnInvitationResponse.members) === null || _t === void 0 ? void 0 : _t.find((member) => (member.state = "joined"))) === null || _u === void 0 ? void 0 : _u.userId).toBe(SECOND_USER_ID);
1017
+ expect(groupChannelAfterJoinedResponse).toHaveProperty("memberState");
1018
+ expect(groupChannelAfterJoinedResponse).toHaveProperty("joinedTs");
1019
+ expect((_v = groupChannelAfterJoinedResponse.joinedTs) === null || _v === void 0 ? void 0 : _v.toString().length).toBe(10);
1020
+ expect(groupChannelAfterJoinedResponse.memberState).toBe("joined");
1021
+ expect(groupChannelAfterJoinedResponse.memberCount).toBe(2);
1022
+ expect(groupChannelAfterJoinedResponse.joinedMemberCount).toBe(2);
1023
+ expect(checkIfMemberResponse).toHaveProperty("isMember");
1024
+ expect(checkIfMemberResponse.isMember).toBeTruthy();
1025
+ expect(typeof checkIfMemberResponse.isMember).toBe("boolean");
1026
+ expect(checkIfMemberResponse).toHaveProperty("state");
1027
+ expect(checkIfMemberResponse.state).toBeTruthy();
1028
+ expect(typeof checkIfMemberResponse.state).toBe("string");
1029
+ expect(validSendbirdGroupChannelMemberStateEnum.includes(checkIfMemberResponse.state)).toBeTruthy();
1030
+ try {
1031
+ yield groupChannelApi.deleteAGroupChannel({
1032
+ channelUrl: createGroupChannelresponse.channelUrl,
1033
+ apiToken: API_TOKEN,
1034
+ });
1035
+ }
1036
+ catch (e) {
1037
+ console.warn("ignore error in cleanup", e);
1038
+ }
1039
+ }));
1040
+ it("call joinAChannel then leaveAChannel", () => __awaiter(void 0, void 0, void 0, function* () {
1041
+ const CHANNEL_URL = "group-channel-join-leave-channel-test-channel-url";
1042
+ try {
1043
+ yield groupChannelApi.deleteAGroupChannel({
1044
+ channelUrl: CHANNEL_URL,
1045
+ apiToken: API_TOKEN,
1046
+ });
1047
+ }
1048
+ catch (e) {
1049
+ console.warn("ignore error in cleanup", e);
1050
+ }
1051
+ yield new Promise((resolve) => setTimeout(resolve, 500));
1052
+ const request = {
1053
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
1054
+ blockSdkUserChannelJoin: true,
1055
+ channelUrl: CHANNEL_URL,
1056
+ coverUrl: "empty",
1057
+ customType: "data",
1058
+ data: "data",
1059
+ invitationStatus: {
1060
+ MASTER_USER_ID: "joined",
1061
+ },
1062
+ inviterId: MASTER_USER_ID,
1063
+ isDistinct: false,
1064
+ isEphemeral: true,
1065
+ isPublic: true,
1066
+ isSuper: true,
1067
+ name: "test",
1068
+ operatorIds: [],
1069
+ strict: true,
1070
+ users: USERS.map((id) => ({ userId: id })),
1071
+ };
1072
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
1073
+ apiToken: API_TOKEN,
1074
+ createAGroupChannelRequest: request,
1075
+ });
1076
+ yield new Promise((resolve) => setTimeout(resolve, 100));
1077
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
1078
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
1079
+ const joinAChannelResponse = yield groupChannelApi.joinAChannel({
1080
+ channelUrl: CHANNEL_URL,
1081
+ apiToken: API_TOKEN,
1082
+ joinAChannelRequest: {
1083
+ userId: SECOND_USER_ID,
1084
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
1085
+ },
1086
+ });
1087
+ const leaveAChannelResponse = yield groupChannelApi.leaveAChannel({
1088
+ channelUrl: createGroupChannelresponse.channelUrl,
1089
+ apiToken: API_TOKEN,
1090
+ leaveAChannelRequest: {
1091
+ shouldLeaveAll: false,
1092
+ userIds: [SECOND_USER_ID],
1093
+ },
1094
+ });
1095
+ const getAGroupChannelResponse = yield groupChannelApi.getAGroupChannel({
1096
+ channelUrl: createGroupChannelresponse.channelUrl,
1097
+ apiToken: API_TOKEN,
1098
+ showDeliveryReceipt: true,
1099
+ showReadReceipt: true,
1100
+ showMember: true,
1101
+ memberActiveMode: "all",
1102
+ userId: MASTER_USER_ID,
1103
+ });
1104
+ expect(joinAChannelResponse.memberCount).toBe(2);
1105
+ expect(joinAChannelResponse.joinedMemberCount).toBe(2);
1106
+ expect(leaveAChannelResponse).toBeDefined();
1107
+ expect(getAGroupChannelResponse.memberCount).toBe(1);
1108
+ expect(getAGroupChannelResponse.joinedMemberCount).toBe(1);
1109
+ try {
1110
+ yield groupChannelApi.deleteAGroupChannel({
1111
+ channelUrl: createGroupChannelresponse.channelUrl,
1112
+ apiToken: API_TOKEN,
1113
+ });
1114
+ }
1115
+ catch (e) {
1116
+ console.warn("ignore error in cleanup", e);
1117
+ }
1118
+ }));
1119
+ it("call updateAGroupChannel", () => __awaiter(void 0, void 0, void 0, function* () {
1120
+ const CHANNEL_URL = "group-channel-update-channel-test-channel-url";
1121
+ try {
1122
+ yield groupChannelApi.deleteAGroupChannel({
1123
+ channelUrl: CHANNEL_URL,
1124
+ apiToken: API_TOKEN,
1125
+ });
1126
+ }
1127
+ catch (e) {
1128
+ console.warn("ignore error in cleanup", e);
1129
+ }
1130
+ yield new Promise((resolve) => setTimeout(resolve, 500));
1131
+ const request = {
1132
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
1133
+ blockSdkUserChannelJoin: true,
1134
+ channelUrl: CHANNEL_URL,
1135
+ coverUrl: "empty",
1136
+ customType: "data",
1137
+ data: "data",
1138
+ invitationStatus: {
1139
+ MASTER_USER_ID: "joined",
1140
+ },
1141
+ inviterId: MASTER_USER_ID,
1142
+ isDistinct: false,
1143
+ isEphemeral: true,
1144
+ isPublic: true,
1145
+ isSuper: true,
1146
+ name: "test",
1147
+ operatorIds: [],
1148
+ strict: true,
1149
+ users: USERS.map((id) => ({ userId: id })),
1150
+ };
1151
+ const createGroupChannelResponse = yield groupChannelApi.createAGroupChannel({
1152
+ apiToken: API_TOKEN,
1153
+ createAGroupChannelRequest: request,
1154
+ });
1155
+ expect(createGroupChannelResponse).toHaveProperty("channelUrl");
1156
+ expect(createGroupChannelResponse.channelUrl).toBe(CHANNEL_URL);
1157
+ yield new Promise((resolve) => setTimeout(resolve, 100));
1158
+ const updateAGroupChannelResponse = yield groupChannelApi.updateAGroupChannel({
1159
+ channelUrl: CHANNEL_URL,
1160
+ apiToken: API_TOKEN,
1161
+ updateAGroupChannelRequest: {
1162
+ name: "test2",
1163
+ data: "data2",
1164
+ },
1165
+ });
1166
+ expect(updateAGroupChannelResponse.name).toBe("test2");
1167
+ expect(updateAGroupChannelResponse.data).toBe("data2");
1168
+ try {
1169
+ yield groupChannelApi.deleteAGroupChannel({
1170
+ channelUrl: CHANNEL_URL,
1171
+ apiToken: API_TOKEN,
1172
+ });
1173
+ }
1174
+ catch (e) {
1175
+ console.warn("ignore error in cleanup", e);
1176
+ }
1177
+ }));
1178
+ it("call resetChatHistory", () => __awaiter(void 0, void 0, void 0, function* () {
1179
+ var _w;
1180
+ const CHANNEL_URL = "group-channel-reset-chat-history-test-channel-url";
1181
+ try {
1182
+ yield groupChannelApi.deleteAGroupChannel({
1183
+ channelUrl: CHANNEL_URL,
1184
+ apiToken: API_TOKEN,
1185
+ });
1186
+ }
1187
+ catch (e) {
1188
+ console.warn("ignore error in cleanup", e);
1189
+ }
1190
+ yield new Promise((resolve) => setTimeout(resolve, 500));
1191
+ const request = {
1192
+ accessCode: GLOBAL_GROUP_CHANNEL_ACCESS_CODE,
1193
+ blockSdkUserChannelJoin: true,
1194
+ channelUrl: CHANNEL_URL,
1195
+ coverUrl: "empty",
1196
+ customType: "data",
1197
+ data: "data",
1198
+ invitationStatus: Object.fromEntries(USERS.map((id) => [id, "joined"])),
1199
+ inviterId: MASTER_USER_ID,
1200
+ isDistinct: false,
1201
+ isEphemeral: true,
1202
+ isPublic: true,
1203
+ isSuper: true,
1204
+ name: "test",
1205
+ operatorIds: [],
1206
+ strict: true,
1207
+ users: USERS.map((id) => ({ userId: id })),
1208
+ };
1209
+ const createGroupChannelresponse = yield groupChannelApi.createAGroupChannel({
1210
+ apiToken: API_TOKEN,
1211
+ createAGroupChannelRequest: request,
1212
+ });
1213
+ yield new Promise((resolve) => setTimeout(resolve, 100));
1214
+ expect(createGroupChannelresponse).toHaveProperty("channelUrl");
1215
+ expect(createGroupChannelresponse.channelUrl).toBe(CHANNEL_URL);
1216
+ const resetChatHistoryresponse = yield groupChannelApi.resetChatHistory({
1217
+ apiToken: API_TOKEN,
1218
+ channelUrl: createGroupChannelresponse.channelUrl,
1219
+ resetChatHistoryRequest: {
1220
+ userId: MASTER_USER_ID,
1221
+ resetAll: true,
1222
+ },
1223
+ });
1224
+ expect(resetChatHistoryresponse).toHaveProperty("tsMessageOffset");
1225
+ expect(typeof resetChatHistoryresponse.tsMessageOffset).toBe("number");
1226
+ expect((_w = resetChatHistoryresponse.tsMessageOffset) === null || _w === void 0 ? void 0 : _w.toString().length).toBe(13);
1227
+ try {
1228
+ yield groupChannelApi.deleteAGroupChannel({
1229
+ channelUrl: createGroupChannelresponse.channelUrl,
1230
+ apiToken: API_TOKEN,
1231
+ });
1232
+ }
1233
+ catch (e) {
1234
+ console.warn("ignore error in cleanup", e);
1235
+ }
1236
+ }));
1237
+ });
1238
+ //# sourceMappingURL=groupChannel.test.js.map