@sendbird/uikit-react 3.4.5-rc.0 → 3.4.6-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 (789) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/App.js +102 -127
  3. package/App.js.map +1 -1
  4. package/Channel/components/ChannelHeader.js +25 -26
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +52 -58
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +36 -37
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +96 -127
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +67 -86
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +90 -117
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +20 -21
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +53 -77
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +19 -33
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +9 -10
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +14 -14
  27. package/Channel.js +37 -37
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +19 -23
  30. package/ChannelList/components/AddChannel.js.map +1 -1
  31. package/ChannelList/components/ChannelListHeader.js +14 -18
  32. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  33. package/ChannelList/components/ChannelListUI.js +50 -64
  34. package/ChannelList/components/ChannelListUI.js.map +1 -1
  35. package/ChannelList/components/ChannelPreview.js +42 -48
  36. package/ChannelList/components/ChannelPreview.js.map +1 -1
  37. package/ChannelList/components/ChannelPreviewAction.js +19 -22
  38. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  39. package/ChannelList/context.js +8 -8
  40. package/ChannelList.js +30 -30
  41. package/ChannelList.js.map +1 -1
  42. package/{ChannelListProvider-38d1234f.js → ChannelListProvider-b7ce527e.js} +77 -172
  43. package/ChannelListProvider-b7ce527e.js.map +1 -0
  44. package/{ChannelProvider-1e05ac9e.js → ChannelProvider-cd9afff3.js} +184 -339
  45. package/{ChannelProvider-1e05ac9e.js.map → ChannelProvider-cd9afff3.js.map} +1 -1
  46. package/ChannelSettings/components/ChannelProfile.js +13 -21
  47. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  48. package/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  49. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  50. package/ChannelSettings/components/EditDetailsModal.js +20 -29
  51. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  52. package/ChannelSettings/components/LeaveChannel.js +18 -26
  53. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  54. package/ChannelSettings/components/ModerationPanel.js +66 -109
  55. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  56. package/ChannelSettings/components/UserListItem.js +21 -21
  57. package/ChannelSettings/components/UserListItem.js.map +1 -1
  58. package/ChannelSettings/components/UserPanel.js +15 -18
  59. package/ChannelSettings/components/UserPanel.js.map +1 -1
  60. package/ChannelSettings/context.js +22 -30
  61. package/ChannelSettings/context.js.map +1 -1
  62. package/ChannelSettings.js +17 -17
  63. package/ChannelSettings.js.map +1 -1
  64. package/CreateChannel/components/CreateChannelUI.js +17 -19
  65. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  66. package/CreateChannel/components/InviteUsers.js +32 -55
  67. package/CreateChannel/components/InviteUsers.js.map +1 -1
  68. package/CreateChannel/components/SelectChannelType.js +11 -17
  69. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  70. package/CreateChannel/context.js +4 -4
  71. package/CreateChannel.js +18 -18
  72. package/CreateChannel.js.map +1 -1
  73. package/{CreateChannelProvider-3614d73c.js → CreateChannelProvider-d7e8a10f.js} +9 -16
  74. package/{CreateChannelProvider-3614d73c.js.map → CreateChannelProvider-d7e8a10f.js.map} +1 -1
  75. package/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  76. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  77. package/CreateOpenChannel/context.js +7 -12
  78. package/CreateOpenChannel/context.js.map +1 -1
  79. package/CreateOpenChannel.js +14 -14
  80. package/CreateOpenChannel.js.map +1 -1
  81. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  82. package/EditUserProfile/context.js +0 -2
  83. package/EditUserProfile/context.js.map +1 -1
  84. package/EditUserProfile.js +14 -14
  85. package/EditUserProfile.js.map +1 -1
  86. package/{LocalizationContext-34b46c40.js → LocalizationContext-43b10f97.js} +3 -5
  87. package/{LocalizationContext-34b46c40.js.map → LocalizationContext-43b10f97.js.map} +1 -1
  88. package/{MediaQueryContext-ce624aa4.js → MediaQueryContext-f2df2472.js} +8 -18
  89. package/MediaQueryContext-f2df2472.js.map +1 -0
  90. package/{MemberList-4de628ca.js → MemberList-70806978.js} +35 -68
  91. package/{MemberList-4de628ca.js.map → MemberList-70806978.js.map} +1 -1
  92. package/Message/context.js +3 -7
  93. package/Message/context.js.map +1 -1
  94. package/MessageSearch/components/MessageSearchUI.js +33 -47
  95. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  96. package/MessageSearch/context.js +44 -79
  97. package/MessageSearch/context.js.map +1 -1
  98. package/MessageSearch.js +25 -35
  99. package/MessageSearch.js.map +1 -1
  100. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  101. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  102. package/OpenChannel/components/OpenChannelHeader.js +16 -18
  103. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  104. package/OpenChannel/components/OpenChannelInput.js +25 -28
  105. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  106. package/OpenChannel/components/OpenChannelMessage.js +45 -70
  107. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  108. package/OpenChannel/components/OpenChannelMessageList.js +49 -61
  109. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  110. package/OpenChannel/components/OpenChannelUI.js +41 -47
  111. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  112. package/OpenChannel/context.js +8 -8
  113. package/OpenChannel.js +30 -30
  114. package/OpenChannel.js.map +1 -1
  115. package/OpenChannelList/components/OpenChannelListUI.js +31 -45
  116. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  117. package/OpenChannelList/components/OpenChannelPreview.js +7 -7
  118. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  119. package/OpenChannelList/context.js +3 -3
  120. package/OpenChannelList.js +24 -23
  121. package/OpenChannelList.js.map +1 -1
  122. package/{OpenChannelListProvider-ab54ddfd.js → OpenChannelListProvider-22244a14.js} +36 -65
  123. package/{OpenChannelListProvider-ab54ddfd.js.map → OpenChannelListProvider-22244a14.js.map} +1 -1
  124. package/{OpenChannelProvider-801fe2a5.js → OpenChannelProvider-36270182.js} +136 -292
  125. package/{OpenChannelProvider-801fe2a5.js.map → OpenChannelProvider-36270182.js.map} +1 -1
  126. package/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  127. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  128. package/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  129. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  130. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  131. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  132. package/OpenChannelSettings/components/OperatorUI.js +58 -110
  133. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  134. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  135. package/OpenChannelSettings/context.js +15 -26
  136. package/OpenChannelSettings/context.js.map +1 -1
  137. package/OpenChannelSettings.js +17 -17
  138. package/OpenChannelSettings.js.map +1 -1
  139. package/README.md +25 -5
  140. package/{RemoveMessageModal-73877b13.js → RemoveMessageModal-d0a5c64c.js} +5 -6
  141. package/{RemoveMessageModal-73877b13.js.map → RemoveMessageModal-d0a5c64c.js.map} +1 -1
  142. package/SendbirdProvider.js +129 -186
  143. package/SendbirdProvider.js.map +1 -1
  144. package/Thread/components/ParentMessageInfo.js +80 -108
  145. package/Thread/components/ParentMessageInfo.js.map +1 -1
  146. package/Thread/components/ParentMessageInfoItem.js +33 -40
  147. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  148. package/Thread/components/ThreadHeader.js +10 -11
  149. package/Thread/components/ThreadHeader.js.map +1 -1
  150. package/Thread/components/ThreadList.js +43 -52
  151. package/Thread/components/ThreadList.js.map +1 -1
  152. package/Thread/components/ThreadListItem.js +119 -147
  153. package/Thread/components/ThreadListItem.js.map +1 -1
  154. package/Thread/components/ThreadMessageInput.js +65 -82
  155. package/Thread/components/ThreadMessageInput.js.map +1 -1
  156. package/Thread/components/ThreadUI.js +74 -93
  157. package/Thread/components/ThreadUI.js.map +1 -1
  158. package/Thread/context/types.js +0 -5
  159. package/Thread/context/types.js.map +1 -1
  160. package/Thread/context.js +8 -8
  161. package/Thread.js +55 -54
  162. package/Thread.js.map +1 -1
  163. package/{ThreadProvider-44c43f8d.js → ThreadProvider-533e9025.js} +162 -280
  164. package/{ThreadProvider-44c43f8d.js.map → ThreadProvider-533e9025.js.map} +1 -1
  165. package/{UserProfileContext-3fa0c617.js → UserProfileContext-12b6fabf.js} +1 -4
  166. package/{UserProfileContext-3fa0c617.js.map → UserProfileContext-12b6fabf.js.map} +1 -1
  167. package/{VoiceMessageInputWrapper-9e4d2e0f.js → VoiceMessageInputWrapper-c74412de.js} +37 -51
  168. package/{VoiceMessageInputWrapper-9e4d2e0f.js.map → VoiceMessageInputWrapper-c74412de.js.map} +1 -1
  169. package/VoicePlayer/context.js +3 -3
  170. package/VoicePlayer/useVoicePlayer.js +14 -25
  171. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  172. package/VoiceRecorder/context.js +10 -53
  173. package/VoiceRecorder/context.js.map +1 -1
  174. package/VoiceRecorder/useVoiceRecorder.js +14 -25
  175. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  176. package/{_rollupPluginBabelHelpers-f78972d2.js → _rollupPluginBabelHelpers-3756a6a3.js} +16 -10
  177. package/_rollupPluginBabelHelpers-3756a6a3.js.map +1 -0
  178. package/{actionTypes-1693ceb3.js → actionTypes-f6400d21.js} +1 -1
  179. package/{actionTypes-1693ceb3.js.map → actionTypes-f6400d21.js.map} +1 -1
  180. package/cjs/App.js +102 -127
  181. package/cjs/App.js.map +1 -1
  182. package/cjs/Channel/components/ChannelHeader.js +25 -26
  183. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  184. package/cjs/Channel/components/ChannelUI.js +52 -58
  185. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  186. package/cjs/Channel/components/FileViewer.js +36 -37
  187. package/cjs/Channel/components/FileViewer.js.map +1 -1
  188. package/cjs/Channel/components/FrozenNotification.js +5 -5
  189. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  190. package/cjs/Channel/components/Message.js +96 -127
  191. package/cjs/Channel/components/Message.js.map +1 -1
  192. package/cjs/Channel/components/MessageInput.js +67 -86
  193. package/cjs/Channel/components/MessageInput.js.map +1 -1
  194. package/cjs/Channel/components/MessageList.js +90 -117
  195. package/cjs/Channel/components/MessageList.js.map +1 -1
  196. package/cjs/Channel/components/RemoveMessageModal.js +20 -21
  197. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  198. package/cjs/Channel/components/SuggestedMentionList.js +53 -77
  199. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  200. package/cjs/Channel/components/TypingIndicator.js +19 -33
  201. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  202. package/cjs/Channel/components/UnreadCount.js +9 -10
  203. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  204. package/cjs/Channel/context.js +14 -14
  205. package/cjs/Channel.js +37 -37
  206. package/cjs/Channel.js.map +1 -1
  207. package/cjs/ChannelList/components/AddChannel.js +19 -23
  208. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  209. package/cjs/ChannelList/components/ChannelListHeader.js +14 -18
  210. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  211. package/cjs/ChannelList/components/ChannelListUI.js +50 -64
  212. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  213. package/cjs/ChannelList/components/ChannelPreview.js +42 -48
  214. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  215. package/cjs/ChannelList/components/ChannelPreviewAction.js +19 -22
  216. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  217. package/cjs/ChannelList/context.js +8 -8
  218. package/cjs/ChannelList.js +30 -30
  219. package/cjs/ChannelList.js.map +1 -1
  220. package/cjs/{ChannelListProvider-1f84d03b.js → ChannelListProvider-d8f65b18.js} +77 -172
  221. package/cjs/ChannelListProvider-d8f65b18.js.map +1 -0
  222. package/cjs/{ChannelProvider-5915747e.js → ChannelProvider-473548f7.js} +184 -339
  223. package/cjs/{ChannelProvider-5915747e.js.map → ChannelProvider-473548f7.js.map} +1 -1
  224. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -21
  225. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  226. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  227. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  228. package/cjs/ChannelSettings/components/EditDetailsModal.js +20 -29
  229. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  230. package/cjs/ChannelSettings/components/LeaveChannel.js +18 -26
  231. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  232. package/cjs/ChannelSettings/components/ModerationPanel.js +66 -109
  233. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  234. package/cjs/ChannelSettings/components/UserListItem.js +21 -21
  235. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  236. package/cjs/ChannelSettings/components/UserPanel.js +15 -18
  237. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  238. package/cjs/ChannelSettings/context.js +22 -30
  239. package/cjs/ChannelSettings/context.js.map +1 -1
  240. package/cjs/ChannelSettings.js +17 -17
  241. package/cjs/ChannelSettings.js.map +1 -1
  242. package/cjs/CreateChannel/components/CreateChannelUI.js +17 -19
  243. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  244. package/cjs/CreateChannel/components/InviteUsers.js +32 -55
  245. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  246. package/cjs/CreateChannel/components/SelectChannelType.js +11 -17
  247. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  248. package/cjs/CreateChannel/context.js +4 -4
  249. package/cjs/CreateChannel.js +18 -18
  250. package/cjs/CreateChannel.js.map +1 -1
  251. package/cjs/{CreateChannelProvider-b0ade226.js → CreateChannelProvider-387290bb.js} +9 -16
  252. package/cjs/{CreateChannelProvider-b0ade226.js.map → CreateChannelProvider-387290bb.js.map} +1 -1
  253. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  254. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  255. package/cjs/CreateOpenChannel/context.js +7 -12
  256. package/cjs/CreateOpenChannel/context.js.map +1 -1
  257. package/cjs/CreateOpenChannel.js +14 -14
  258. package/cjs/CreateOpenChannel.js.map +1 -1
  259. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  260. package/cjs/EditUserProfile/context.js +0 -2
  261. package/cjs/EditUserProfile/context.js.map +1 -1
  262. package/cjs/EditUserProfile.js +14 -14
  263. package/cjs/EditUserProfile.js.map +1 -1
  264. package/cjs/{LocalizationContext-3fb1efd5.js → LocalizationContext-e4a874cf.js} +3 -5
  265. package/cjs/{LocalizationContext-3fb1efd5.js.map → LocalizationContext-e4a874cf.js.map} +1 -1
  266. package/cjs/{MediaQueryContext-9982e73b.js → MediaQueryContext-fcd92c17.js} +8 -18
  267. package/cjs/MediaQueryContext-fcd92c17.js.map +1 -0
  268. package/cjs/{MemberList-574bae3f.js → MemberList-dbd3a4b4.js} +35 -68
  269. package/cjs/{MemberList-574bae3f.js.map → MemberList-dbd3a4b4.js.map} +1 -1
  270. package/cjs/Message/context.js +3 -7
  271. package/cjs/Message/context.js.map +1 -1
  272. package/cjs/MessageSearch/components/MessageSearchUI.js +33 -47
  273. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  274. package/cjs/MessageSearch/context.js +44 -79
  275. package/cjs/MessageSearch/context.js.map +1 -1
  276. package/cjs/MessageSearch.js +25 -35
  277. package/cjs/MessageSearch.js.map +1 -1
  278. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  279. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  280. package/cjs/OpenChannel/components/OpenChannelHeader.js +16 -18
  281. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  282. package/cjs/OpenChannel/components/OpenChannelInput.js +25 -28
  283. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  284. package/cjs/OpenChannel/components/OpenChannelMessage.js +45 -70
  285. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  286. package/cjs/OpenChannel/components/OpenChannelMessageList.js +49 -61
  287. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  288. package/cjs/OpenChannel/components/OpenChannelUI.js +41 -47
  289. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  290. package/cjs/OpenChannel/context.js +8 -8
  291. package/cjs/OpenChannel.js +30 -30
  292. package/cjs/OpenChannel.js.map +1 -1
  293. package/cjs/OpenChannelList/components/OpenChannelListUI.js +31 -45
  294. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  295. package/cjs/OpenChannelList/components/OpenChannelPreview.js +7 -7
  296. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  297. package/cjs/OpenChannelList/context.js +3 -3
  298. package/cjs/OpenChannelList.js +24 -23
  299. package/cjs/OpenChannelList.js.map +1 -1
  300. package/cjs/{OpenChannelListProvider-43b94684.js → OpenChannelListProvider-89659c0b.js} +36 -65
  301. package/cjs/{OpenChannelListProvider-43b94684.js.map → OpenChannelListProvider-89659c0b.js.map} +1 -1
  302. package/cjs/{OpenChannelProvider-411e1365.js → OpenChannelProvider-3d3d606e.js} +136 -292
  303. package/cjs/{OpenChannelProvider-411e1365.js.map → OpenChannelProvider-3d3d606e.js.map} +1 -1
  304. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  305. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  306. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  307. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  308. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  309. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  310. package/cjs/OpenChannelSettings/components/OperatorUI.js +58 -110
  311. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  312. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  313. package/cjs/OpenChannelSettings/context.js +15 -26
  314. package/cjs/OpenChannelSettings/context.js.map +1 -1
  315. package/cjs/OpenChannelSettings.js +17 -17
  316. package/cjs/OpenChannelSettings.js.map +1 -1
  317. package/cjs/{RemoveMessageModal-0c4b41d0.js → RemoveMessageModal-21a7c6ac.js} +5 -6
  318. package/cjs/{RemoveMessageModal-0c4b41d0.js.map → RemoveMessageModal-21a7c6ac.js.map} +1 -1
  319. package/cjs/SendbirdProvider.js +129 -186
  320. package/cjs/SendbirdProvider.js.map +1 -1
  321. package/cjs/Thread/components/ParentMessageInfo.js +80 -108
  322. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  323. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -40
  324. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  325. package/cjs/Thread/components/ThreadHeader.js +10 -11
  326. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  327. package/cjs/Thread/components/ThreadList.js +43 -52
  328. package/cjs/Thread/components/ThreadList.js.map +1 -1
  329. package/cjs/Thread/components/ThreadListItem.js +119 -147
  330. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  331. package/cjs/Thread/components/ThreadMessageInput.js +65 -82
  332. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  333. package/cjs/Thread/components/ThreadUI.js +74 -93
  334. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  335. package/cjs/Thread/context/types.js +0 -5
  336. package/cjs/Thread/context/types.js.map +1 -1
  337. package/cjs/Thread/context.js +8 -8
  338. package/cjs/Thread.js +55 -54
  339. package/cjs/Thread.js.map +1 -1
  340. package/cjs/{ThreadProvider-73f209d6.js → ThreadProvider-572d67c0.js} +162 -280
  341. package/cjs/{ThreadProvider-73f209d6.js.map → ThreadProvider-572d67c0.js.map} +1 -1
  342. package/cjs/{UserProfileContext-b0b956b8.js → UserProfileContext-ce0c283c.js} +1 -4
  343. package/cjs/{UserProfileContext-b0b956b8.js.map → UserProfileContext-ce0c283c.js.map} +1 -1
  344. package/cjs/{VoiceMessageInputWrapper-2301a9cd.js → VoiceMessageInputWrapper-88ad4670.js} +37 -51
  345. package/cjs/{VoiceMessageInputWrapper-2301a9cd.js.map → VoiceMessageInputWrapper-88ad4670.js.map} +1 -1
  346. package/cjs/VoicePlayer/context.js +3 -3
  347. package/cjs/VoicePlayer/useVoicePlayer.js +14 -25
  348. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  349. package/cjs/VoiceRecorder/context.js +10 -53
  350. package/cjs/VoiceRecorder/context.js.map +1 -1
  351. package/cjs/VoiceRecorder/useVoiceRecorder.js +14 -25
  352. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  353. package/cjs/{_rollupPluginBabelHelpers-05716924.js → _rollupPluginBabelHelpers-6ab4baac.js} +16 -10
  354. package/cjs/_rollupPluginBabelHelpers-6ab4baac.js.map +1 -0
  355. package/cjs/{actionTypes-de2a8f54.js → actionTypes-1b068888.js} +1 -1
  356. package/cjs/{actionTypes-de2a8f54.js.map → actionTypes-1b068888.js.map} +1 -1
  357. package/cjs/{color-360107a6.js → color-168c1d53.js} +1 -10
  358. package/cjs/color-168c1d53.js.map +1 -0
  359. package/cjs/{compareIds-c4f938a4.js → compareIds-441b4983.js} +4 -5
  360. package/cjs/compareIds-441b4983.js.map +1 -0
  361. package/cjs/{const-893ed415.js → const-0273bf9e.js} +1 -2
  362. package/cjs/{const-893ed415.js.map → const-0273bf9e.js.map} +1 -1
  363. package/cjs/{const-7ce7d646.js → const-cf4cec6a.js} +1 -1
  364. package/cjs/{const-7ce7d646.js.map → const-cf4cec6a.js.map} +1 -1
  365. package/cjs/{consts-f5219aa0.js → consts-2e23914f.js} +1 -1
  366. package/cjs/{consts-f5219aa0.js.map → consts-2e23914f.js.map} +1 -1
  367. package/cjs/{consts-c4097faa.js → consts-472d9347.js} +1 -1
  368. package/cjs/{consts-c4097faa.js.map → consts-472d9347.js.map} +1 -1
  369. package/cjs/{consts-d9856131.js → consts-b8c0be49.js} +8 -11
  370. package/cjs/{consts-d9856131.js.map → consts-b8c0be49.js.map} +1 -1
  371. package/cjs/{consts-0b50a0c8.js → consts-e193b1b8.js} +1 -1
  372. package/cjs/{consts-0b50a0c8.js.map → consts-e193b1b8.js.map} +1 -1
  373. package/cjs/{context-971dc2dc.js → context-d718fff1.js} +2 -2
  374. package/cjs/{context-971dc2dc.js.map → context-d718fff1.js.map} +1 -1
  375. package/cjs/{index-2068f053.js → index-0e43cd69.js} +2 -22
  376. package/cjs/{index-2068f053.js.map → index-0e43cd69.js.map} +1 -1
  377. package/cjs/{index-4efda0a3.js → index-3a7584a0.js} +4 -7
  378. package/cjs/{index-4efda0a3.js.map → index-3a7584a0.js.map} +1 -1
  379. package/cjs/{index-bd887626.js → index-3d08adec.js} +17 -33
  380. package/cjs/{index-bd887626.js.map → index-3d08adec.js.map} +1 -1
  381. package/cjs/{index-b8bcbe2e.js → index-44341b78.js} +3 -6
  382. package/cjs/index-44341b78.js.map +1 -0
  383. package/cjs/{index-871938c2.js → index-47105c4f.js} +2 -2
  384. package/cjs/index-47105c4f.js.map +1 -0
  385. package/cjs/{index-046dffba.js → index-4894fc55.js} +13 -32
  386. package/cjs/index-4894fc55.js.map +1 -0
  387. package/cjs/{index-27196170.js → index-5075f3b2.js} +26 -130
  388. package/cjs/index-5075f3b2.js.map +1 -0
  389. package/cjs/{index-95fe4955.js → index-630f7132.js} +11 -12
  390. package/cjs/{index-95fe4955.js.map → index-630f7132.js.map} +1 -1
  391. package/cjs/{index-3ecf6f1c.js → index-813deccc.js} +1 -1
  392. package/cjs/{index-3ecf6f1c.js.map → index-813deccc.js.map} +1 -1
  393. package/cjs/{index-05458f16.js → index-903c0f93.js} +3 -24
  394. package/cjs/index-903c0f93.js.map +1 -0
  395. package/cjs/{index-1ebfe279.js → index-9dd8a18a.js} +18 -26
  396. package/cjs/index-9dd8a18a.js.map +1 -0
  397. package/cjs/{index-d4ad85fe.js → index-b2e4a79e.js} +30 -44
  398. package/cjs/{index-d4ad85fe.js.map → index-b2e4a79e.js.map} +1 -1
  399. package/cjs/{index-a981854c.js → index-ba9683ca.js} +21 -52
  400. package/cjs/{index-a981854c.js.map → index-ba9683ca.js.map} +1 -1
  401. package/cjs/{index-4f21cdee.js → index-d3b05e98.js} +23 -27
  402. package/cjs/{index-4f21cdee.js.map → index-d3b05e98.js.map} +1 -1
  403. package/cjs/{index-106dbf0e.js → index-f2d71843.js} +30 -113
  404. package/cjs/index-f2d71843.js.map +1 -0
  405. package/cjs/index.js +48 -48
  406. package/cjs/lame.all.js.map +1 -1
  407. package/cjs/sendbirdSelectors.js +36 -94
  408. package/cjs/sendbirdSelectors.js.map +1 -1
  409. package/cjs/{stringSet-eba21df4.js → stringSet-76f7df68.js} +2 -1
  410. package/cjs/stringSet-76f7df68.js.map +1 -0
  411. package/cjs/{tokenize-ca4ac5a1.js → tokenize-5071d1a6.js} +15 -22
  412. package/cjs/{tokenize-ca4ac5a1.js.map → tokenize-5071d1a6.js.map} +1 -1
  413. package/cjs/{topics-e4dffa33.js → topics-f70c5e0f.js} +1 -1
  414. package/cjs/{topics-e4dffa33.js.map → topics-f70c5e0f.js.map} +1 -1
  415. package/cjs/tslib.es6-67bdb021.js +176 -0
  416. package/cjs/tslib.es6-67bdb021.js.map +1 -0
  417. package/cjs/{types-dd4057f8.js → types-43ef9367.js} +1 -1
  418. package/cjs/{types-dd4057f8.js.map → types-43ef9367.js.map} +1 -1
  419. package/cjs/ui/Accordion.js +12 -16
  420. package/cjs/ui/Accordion.js.map +1 -1
  421. package/cjs/ui/AccordionGroup.js +6 -8
  422. package/cjs/ui/AccordionGroup.js.map +1 -1
  423. package/cjs/ui/AdminMessage.js +5 -8
  424. package/cjs/ui/AdminMessage.js.map +1 -1
  425. package/cjs/ui/Avatar.js +23 -41
  426. package/cjs/ui/Avatar.js.map +1 -1
  427. package/cjs/ui/Badge.js +9 -9
  428. package/cjs/ui/Badge.js.map +1 -1
  429. package/cjs/ui/BottomSheet.js +5 -7
  430. package/cjs/ui/BottomSheet.js.map +1 -1
  431. package/cjs/ui/Button.js +13 -24
  432. package/cjs/ui/Button.js.map +1 -1
  433. package/cjs/ui/ChannelAvatar.js +9 -9
  434. package/cjs/ui/ChannelAvatar.js.map +1 -1
  435. package/cjs/ui/Checkbox.js +6 -8
  436. package/cjs/ui/Checkbox.js.map +1 -1
  437. package/cjs/ui/ConnectionStatus.js +4 -4
  438. package/cjs/ui/ConnectionStatus.js.map +1 -1
  439. package/cjs/ui/ContextMenu.js +40 -86
  440. package/cjs/ui/ContextMenu.js.map +1 -1
  441. package/cjs/ui/DateSeparator.js +9 -9
  442. package/cjs/ui/DateSeparator.js.map +1 -1
  443. package/cjs/ui/EmojiReactions.js +19 -24
  444. package/cjs/ui/EmojiReactions.js.map +1 -1
  445. package/cjs/ui/FileMessageItemBody.js +15 -16
  446. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  447. package/cjs/ui/FileViewer.js +22 -23
  448. package/cjs/ui/FileViewer.js.map +1 -1
  449. package/cjs/ui/Icon.js +0 -241
  450. package/cjs/ui/Icon.js.map +1 -1
  451. package/cjs/ui/IconButton.js +19 -22
  452. package/cjs/ui/IconButton.js.map +1 -1
  453. package/cjs/ui/ImageRenderer.js +27 -30
  454. package/cjs/ui/ImageRenderer.js.map +1 -1
  455. package/cjs/ui/Input.js +8 -10
  456. package/cjs/ui/Input.js.map +1 -1
  457. package/cjs/ui/Label.js +2 -2
  458. package/cjs/ui/LinkLabel.js +4 -3
  459. package/cjs/ui/LinkLabel.js.map +1 -1
  460. package/cjs/ui/Loader.js +7 -7
  461. package/cjs/ui/Loader.js.map +1 -1
  462. package/cjs/ui/MentionLabel.js +16 -22
  463. package/cjs/ui/MentionLabel.js.map +1 -1
  464. package/cjs/ui/MentionUserLabel.js +7 -7
  465. package/cjs/ui/MentionUserLabel.js.map +1 -1
  466. package/cjs/ui/MessageContent.js +117 -136
  467. package/cjs/ui/MessageContent.js.map +1 -1
  468. package/cjs/ui/MessageInput.js +71 -124
  469. package/cjs/ui/MessageInput.js.map +1 -1
  470. package/cjs/ui/MessageItemMenu.js +25 -31
  471. package/cjs/ui/MessageItemMenu.js.map +1 -1
  472. package/cjs/ui/MessageItemReactionMenu.js +12 -16
  473. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  474. package/cjs/ui/MessageSearchFileItem.js +21 -29
  475. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  476. package/cjs/ui/MessageSearchItem.js +18 -24
  477. package/cjs/ui/MessageSearchItem.js.map +1 -1
  478. package/cjs/ui/MessageStatus.js +10 -10
  479. package/cjs/ui/Modal.js +33 -34
  480. package/cjs/ui/Modal.js.map +1 -1
  481. package/cjs/ui/MutedAvatarOverlay.js +3 -3
  482. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  483. package/cjs/ui/OGMessageItemBody.js +26 -30
  484. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  485. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  486. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  487. package/cjs/ui/OpenChannelAvatar.js +11 -11
  488. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  489. package/cjs/ui/OpenchannelConversationHeader.js +10 -10
  490. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  491. package/cjs/ui/OpenchannelFileMessage.js +31 -44
  492. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  493. package/cjs/ui/OpenchannelOGMessage.js +38 -53
  494. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  495. package/cjs/ui/OpenchannelThumbnailMessage.js +36 -46
  496. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  497. package/cjs/ui/OpenchannelUserMessage.js +39 -49
  498. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  499. package/cjs/ui/PlaceHolder.js +6 -6
  500. package/cjs/ui/PlaybackTime.js +8 -8
  501. package/cjs/ui/PlaybackTime.js.map +1 -1
  502. package/cjs/ui/ProgressBar.js +8 -8
  503. package/cjs/ui/ProgressBar.js.map +1 -1
  504. package/cjs/ui/QuoteMessage.js +16 -20
  505. package/cjs/ui/QuoteMessage.js.map +1 -1
  506. package/cjs/ui/QuoteMessageInput.js +8 -11
  507. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  508. package/cjs/ui/ReactionBadge.js +13 -17
  509. package/cjs/ui/ReactionBadge.js.map +1 -1
  510. package/cjs/ui/ReactionButton.js +8 -8
  511. package/cjs/ui/ReactionButton.js.map +1 -1
  512. package/cjs/ui/SortByRow.js +7 -11
  513. package/cjs/ui/SortByRow.js.map +1 -1
  514. package/cjs/ui/TextButton.js +12 -12
  515. package/cjs/ui/TextButton.js.map +1 -1
  516. package/cjs/ui/TextMessageItemBody.js +22 -24
  517. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  518. package/cjs/ui/ThreadReplies.js +10 -11
  519. package/cjs/ui/ThreadReplies.js.map +1 -1
  520. package/cjs/ui/ThumbnailMessageItemBody.js +15 -18
  521. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  522. package/cjs/ui/Tooltip.js +6 -6
  523. package/cjs/ui/Tooltip.js.map +1 -1
  524. package/cjs/ui/TooltipWrapper.js +6 -8
  525. package/cjs/ui/TooltipWrapper.js.map +1 -1
  526. package/cjs/ui/UnknownMessageItemBody.js +13 -14
  527. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  528. package/cjs/ui/UserListItem.js +27 -26
  529. package/cjs/ui/UserListItem.js.map +1 -1
  530. package/cjs/ui/UserProfile.js +15 -17
  531. package/cjs/ui/UserProfile.js.map +1 -1
  532. package/cjs/ui/VoiceMessageItemBody.js +24 -31
  533. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  534. package/cjs/ui/VoiceMessgeInput.js +8 -8
  535. package/cjs/ui/Word.js +18 -29
  536. package/cjs/ui/Word.js.map +1 -1
  537. package/cjs/{useLongPress-d8b2586f.js → useLongPress-3582b310.js} +13 -31
  538. package/cjs/{useLongPress-d8b2586f.js.map → useLongPress-3582b310.js.map} +1 -1
  539. package/cjs/useSendbirdStateContext.js +1 -2
  540. package/cjs/useSendbirdStateContext.js.map +1 -1
  541. package/cjs/utils/message/getOutgoingMessageState.js +0 -7
  542. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  543. package/cjs/utils/message/isVoiceMessage.js +2 -2
  544. package/cjs/{utils-49414b11.js → utils-1ebf89f9.js} +1 -5
  545. package/cjs/{utils-49414b11.js.map → utils-1ebf89f9.js.map} +1 -1
  546. package/cjs/{utils-f294dd80.js → utils-39a3f99e.js} +1 -4
  547. package/cjs/utils-39a3f99e.js.map +1 -0
  548. package/cjs/{utils-7846a174.js → utils-39eb2189.js} +2 -7
  549. package/cjs/utils-39eb2189.js.map +1 -0
  550. package/cjs/{utils-6584b9f0.js → utils-fdfc9b0a.js} +1 -1
  551. package/cjs/{utils-6584b9f0.js.map → utils-fdfc9b0a.js.map} +1 -1
  552. package/cjs/{uuid-fe1b03cf.js → uuid-f23c161c.js} +1 -3
  553. package/cjs/{uuid-fe1b03cf.js.map → uuid-f23c161c.js.map} +1 -1
  554. package/cjs/withSendbird.js +5 -7
  555. package/cjs/withSendbird.js.map +1 -1
  556. package/{color-6e50d9e2.js → color-e54d3ed7.js} +1 -10
  557. package/{color-6e50d9e2.js.map → color-e54d3ed7.js.map} +1 -1
  558. package/{compareIds-67c3b05b.js → compareIds-3e30a438.js} +4 -5
  559. package/compareIds-3e30a438.js.map +1 -0
  560. package/{const-b20d1024.js → const-48a3200e.js} +1 -1
  561. package/{const-b20d1024.js.map → const-48a3200e.js.map} +1 -1
  562. package/{const-8c87d265.js → const-71bd6867.js} +1 -2
  563. package/{const-8c87d265.js.map → const-71bd6867.js.map} +1 -1
  564. package/{consts-5b2caf41.js → consts-30f09302.js} +8 -11
  565. package/{consts-5b2caf41.js.map → consts-30f09302.js.map} +1 -1
  566. package/{consts-996c0a58.js → consts-4b1e008b.js} +1 -1
  567. package/{consts-996c0a58.js.map → consts-4b1e008b.js.map} +1 -1
  568. package/{consts-5929bec3.js → consts-665331c7.js} +1 -1
  569. package/{consts-5929bec3.js.map → consts-665331c7.js.map} +1 -1
  570. package/{consts-44e40533.js → consts-e4e1a8fc.js} +1 -1
  571. package/{consts-44e40533.js.map → consts-e4e1a8fc.js.map} +1 -1
  572. package/{context-3ffe9980.js → context-993ee0c3.js} +2 -2
  573. package/{context-3ffe9980.js.map → context-993ee0c3.js.map} +1 -1
  574. package/{index-3fff67da.js → index-0f373e79.js} +3 -24
  575. package/index-0f373e79.js.map +1 -0
  576. package/{index-26931609.js → index-10377bc5.js} +18 -26
  577. package/index-10377bc5.js.map +1 -0
  578. package/{index-1d770388.js → index-207577d6.js} +21 -52
  579. package/{index-1d770388.js.map → index-207577d6.js.map} +1 -1
  580. package/{index-55b1016d.js → index-2932882f.js} +3 -6
  581. package/index-2932882f.js.map +1 -0
  582. package/{index-5668e8eb.js → index-5c20d787.js} +1 -1
  583. package/{index-5668e8eb.js.map → index-5c20d787.js.map} +1 -1
  584. package/{index-4538a9f1.js → index-88523047.js} +30 -44
  585. package/{index-4538a9f1.js.map → index-88523047.js.map} +1 -1
  586. package/{index-6e6736ec.js → index-8a52a6f4.js} +30 -113
  587. package/index-8a52a6f4.js.map +1 -0
  588. package/{index-824e5bc8.js → index-8f0ae983.js} +2 -22
  589. package/{index-824e5bc8.js.map → index-8f0ae983.js.map} +1 -1
  590. package/{index-055bcae0.js → index-95f0372d.js} +2 -2
  591. package/index-95f0372d.js.map +1 -0
  592. package/{index-d5769ac4.js → index-a90edcd2.js} +13 -32
  593. package/index-a90edcd2.js.map +1 -0
  594. package/{index-e34d85fd.js → index-c77693d8.js} +23 -27
  595. package/{index-e34d85fd.js.map → index-c77693d8.js.map} +1 -1
  596. package/{index-66393faa.js → index-cc626895.js} +4 -7
  597. package/{index-66393faa.js.map → index-cc626895.js.map} +1 -1
  598. package/{index-3ee902ac.js → index-cd1a9173.js} +26 -130
  599. package/index-cd1a9173.js.map +1 -0
  600. package/{index-c36339ab.js → index-d75ba9c0.js} +17 -33
  601. package/{index-c36339ab.js.map → index-d75ba9c0.js.map} +1 -1
  602. package/{index-5d8bac74.js → index-ec8cbdfb.js} +11 -12
  603. package/{index-5d8bac74.js.map → index-ec8cbdfb.js.map} +1 -1
  604. package/index.d.ts +1 -1
  605. package/index.js +48 -48
  606. package/lame.all.js.map +1 -1
  607. package/package.json +1 -1
  608. package/sendbirdSelectors.js +36 -94
  609. package/sendbirdSelectors.js.map +1 -1
  610. package/{stringSet-a9c3ac4a.js → stringSet-2d42f6ff.js} +2 -1
  611. package/stringSet-2d42f6ff.js.map +1 -0
  612. package/{tokenize-63675252.js → tokenize-cd9c48bb.js} +15 -22
  613. package/{tokenize-63675252.js.map → tokenize-cd9c48bb.js.map} +1 -1
  614. package/{topics-2a79610f.js → topics-6d4bf2ed.js} +1 -1
  615. package/{topics-2a79610f.js.map → topics-6d4bf2ed.js.map} +1 -1
  616. package/tslib.es6-5180f9d1.js +171 -0
  617. package/tslib.es6-5180f9d1.js.map +1 -0
  618. package/{types-27a6a112.js → types-2fb5793c.js} +1 -1
  619. package/{types-27a6a112.js.map → types-2fb5793c.js.map} +1 -1
  620. package/ui/Accordion.js +12 -16
  621. package/ui/Accordion.js.map +1 -1
  622. package/ui/AccordionGroup.js +6 -8
  623. package/ui/AccordionGroup.js.map +1 -1
  624. package/ui/AdminMessage.js +5 -8
  625. package/ui/AdminMessage.js.map +1 -1
  626. package/ui/Avatar.js +23 -41
  627. package/ui/Avatar.js.map +1 -1
  628. package/ui/Badge.js +9 -9
  629. package/ui/Badge.js.map +1 -1
  630. package/ui/BottomSheet.js +5 -7
  631. package/ui/BottomSheet.js.map +1 -1
  632. package/ui/Button.js +13 -24
  633. package/ui/Button.js.map +1 -1
  634. package/ui/ChannelAvatar.js +9 -9
  635. package/ui/ChannelAvatar.js.map +1 -1
  636. package/ui/Checkbox.js +6 -8
  637. package/ui/Checkbox.js.map +1 -1
  638. package/ui/ConnectionStatus.js +4 -4
  639. package/ui/ConnectionStatus.js.map +1 -1
  640. package/ui/ContextMenu.js +40 -86
  641. package/ui/ContextMenu.js.map +1 -1
  642. package/ui/DateSeparator.js +9 -9
  643. package/ui/DateSeparator.js.map +1 -1
  644. package/ui/EmojiReactions.js +19 -24
  645. package/ui/EmojiReactions.js.map +1 -1
  646. package/ui/FileMessageItemBody.js +15 -16
  647. package/ui/FileMessageItemBody.js.map +1 -1
  648. package/ui/FileViewer.js +22 -23
  649. package/ui/FileViewer.js.map +1 -1
  650. package/ui/Icon.js +0 -241
  651. package/ui/Icon.js.map +1 -1
  652. package/ui/IconButton.js +19 -22
  653. package/ui/IconButton.js.map +1 -1
  654. package/ui/ImageRenderer.js +27 -30
  655. package/ui/ImageRenderer.js.map +1 -1
  656. package/ui/Input.js +8 -10
  657. package/ui/Input.js.map +1 -1
  658. package/ui/Label.js +2 -2
  659. package/ui/LinkLabel.js +4 -3
  660. package/ui/LinkLabel.js.map +1 -1
  661. package/ui/Loader.js +7 -7
  662. package/ui/Loader.js.map +1 -1
  663. package/ui/MentionLabel.js +16 -22
  664. package/ui/MentionLabel.js.map +1 -1
  665. package/ui/MentionUserLabel.js +7 -7
  666. package/ui/MentionUserLabel.js.map +1 -1
  667. package/ui/MessageContent.js +117 -136
  668. package/ui/MessageContent.js.map +1 -1
  669. package/ui/MessageInput.js +71 -124
  670. package/ui/MessageInput.js.map +1 -1
  671. package/ui/MessageItemMenu.js +25 -31
  672. package/ui/MessageItemMenu.js.map +1 -1
  673. package/ui/MessageItemReactionMenu.js +12 -16
  674. package/ui/MessageItemReactionMenu.js.map +1 -1
  675. package/ui/MessageSearchFileItem.js +21 -29
  676. package/ui/MessageSearchFileItem.js.map +1 -1
  677. package/ui/MessageSearchItem.js +18 -24
  678. package/ui/MessageSearchItem.js.map +1 -1
  679. package/ui/MessageStatus.js +10 -10
  680. package/ui/Modal.js +33 -34
  681. package/ui/Modal.js.map +1 -1
  682. package/ui/MutedAvatarOverlay.js +3 -3
  683. package/ui/MutedAvatarOverlay.js.map +1 -1
  684. package/ui/OGMessageItemBody.js +26 -30
  685. package/ui/OGMessageItemBody.js.map +1 -1
  686. package/ui/OpenChannelAdminMessage.js +4 -4
  687. package/ui/OpenChannelAdminMessage.js.map +1 -1
  688. package/ui/OpenChannelAvatar.js +11 -11
  689. package/ui/OpenChannelAvatar.js.map +1 -1
  690. package/ui/OpenchannelConversationHeader.js +10 -10
  691. package/ui/OpenchannelConversationHeader.js.map +1 -1
  692. package/ui/OpenchannelFileMessage.js +31 -44
  693. package/ui/OpenchannelFileMessage.js.map +1 -1
  694. package/ui/OpenchannelOGMessage.js +38 -53
  695. package/ui/OpenchannelOGMessage.js.map +1 -1
  696. package/ui/OpenchannelThumbnailMessage.js +36 -46
  697. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  698. package/ui/OpenchannelUserMessage.js +39 -49
  699. package/ui/OpenchannelUserMessage.js.map +1 -1
  700. package/ui/PlaceHolder.js +6 -6
  701. package/ui/PlaybackTime.js +8 -8
  702. package/ui/PlaybackTime.js.map +1 -1
  703. package/ui/ProgressBar.js +8 -8
  704. package/ui/ProgressBar.js.map +1 -1
  705. package/ui/QuoteMessage.js +16 -20
  706. package/ui/QuoteMessage.js.map +1 -1
  707. package/ui/QuoteMessageInput.js +8 -11
  708. package/ui/QuoteMessageInput.js.map +1 -1
  709. package/ui/ReactionBadge.js +13 -17
  710. package/ui/ReactionBadge.js.map +1 -1
  711. package/ui/ReactionButton.js +8 -8
  712. package/ui/ReactionButton.js.map +1 -1
  713. package/ui/SortByRow.js +7 -11
  714. package/ui/SortByRow.js.map +1 -1
  715. package/ui/TextButton.js +12 -12
  716. package/ui/TextButton.js.map +1 -1
  717. package/ui/TextMessageItemBody.js +22 -24
  718. package/ui/TextMessageItemBody.js.map +1 -1
  719. package/ui/ThreadReplies.js +10 -11
  720. package/ui/ThreadReplies.js.map +1 -1
  721. package/ui/ThumbnailMessageItemBody.js +15 -18
  722. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  723. package/ui/Tooltip.js +6 -6
  724. package/ui/Tooltip.js.map +1 -1
  725. package/ui/TooltipWrapper.js +6 -8
  726. package/ui/TooltipWrapper.js.map +1 -1
  727. package/ui/UnknownMessageItemBody.js +13 -14
  728. package/ui/UnknownMessageItemBody.js.map +1 -1
  729. package/ui/UserListItem.js +27 -26
  730. package/ui/UserListItem.js.map +1 -1
  731. package/ui/UserProfile.js +15 -17
  732. package/ui/UserProfile.js.map +1 -1
  733. package/ui/VoiceMessageItemBody.js +24 -31
  734. package/ui/VoiceMessageItemBody.js.map +1 -1
  735. package/ui/VoiceMessgeInput.js +8 -8
  736. package/ui/Word.js +18 -29
  737. package/ui/Word.js.map +1 -1
  738. package/{useLongPress-7504e5b8.js → useLongPress-c1a00d6e.js} +13 -31
  739. package/{useLongPress-7504e5b8.js.map → useLongPress-c1a00d6e.js.map} +1 -1
  740. package/useSendbirdStateContext.js +1 -2
  741. package/useSendbirdStateContext.js.map +1 -1
  742. package/utils/message/getOutgoingMessageState.js +0 -7
  743. package/utils/message/getOutgoingMessageState.js.map +1 -1
  744. package/utils/message/isVoiceMessage.js +2 -2
  745. package/{utils-3c4b1dd1.js → utils-3c726d0f.js} +2 -7
  746. package/utils-3c726d0f.js.map +1 -0
  747. package/{utils-1789e6d0.js → utils-4c1f97d4.js} +1 -5
  748. package/{utils-1789e6d0.js.map → utils-4c1f97d4.js.map} +1 -1
  749. package/{utils-3ba27c29.js → utils-760413c9.js} +1 -4
  750. package/utils-760413c9.js.map +1 -0
  751. package/{utils-8318012f.js → utils-a7563986.js} +1 -1
  752. package/{utils-8318012f.js.map → utils-a7563986.js.map} +1 -1
  753. package/{uuid-9ea19939.js → uuid-368c5040.js} +1 -3
  754. package/{uuid-9ea19939.js.map → uuid-368c5040.js.map} +1 -1
  755. package/withSendbird.js +5 -7
  756. package/withSendbird.js.map +1 -1
  757. package/ChannelListProvider-38d1234f.js.map +0 -1
  758. package/MediaQueryContext-ce624aa4.js.map +0 -1
  759. package/_rollupPluginBabelHelpers-f78972d2.js.map +0 -1
  760. package/cjs/ChannelListProvider-1f84d03b.js.map +0 -1
  761. package/cjs/MediaQueryContext-9982e73b.js.map +0 -1
  762. package/cjs/_rollupPluginBabelHelpers-05716924.js.map +0 -1
  763. package/cjs/color-360107a6.js.map +0 -1
  764. package/cjs/compareIds-c4f938a4.js.map +0 -1
  765. package/cjs/index-046dffba.js.map +0 -1
  766. package/cjs/index-05458f16.js.map +0 -1
  767. package/cjs/index-106dbf0e.js.map +0 -1
  768. package/cjs/index-1ebfe279.js.map +0 -1
  769. package/cjs/index-27196170.js.map +0 -1
  770. package/cjs/index-871938c2.js.map +0 -1
  771. package/cjs/index-b8bcbe2e.js.map +0 -1
  772. package/cjs/stringSet-eba21df4.js.map +0 -1
  773. package/cjs/tslib.es6-94d25845.js +0 -97
  774. package/cjs/tslib.es6-94d25845.js.map +0 -1
  775. package/cjs/utils-7846a174.js.map +0 -1
  776. package/cjs/utils-f294dd80.js.map +0 -1
  777. package/compareIds-67c3b05b.js.map +0 -1
  778. package/index-055bcae0.js.map +0 -1
  779. package/index-26931609.js.map +0 -1
  780. package/index-3ee902ac.js.map +0 -1
  781. package/index-3fff67da.js.map +0 -1
  782. package/index-55b1016d.js.map +0 -1
  783. package/index-6e6736ec.js.map +0 -1
  784. package/index-d5769ac4.js.map +0 -1
  785. package/stringSet-a9c3ac4a.js.map +0 -1
  786. package/tslib.es6-bb0710b6.js +0 -92
  787. package/tslib.es6-bb0710b6.js.map +0 -1
  788. package/utils-3ba27c29.js.map +0 -1
  789. package/utils-3c4b1dd1.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.js","../src/lib/dux/sdk/thunks.js","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.js","../src/lib/dux/sdk/reducers.js","../src/lib/dux/user/initialState.js","../src/lib/dux/user/reducers.js","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.ts","../src/lib/pubSub/index.ts","../src/hooks/useAppendDomNode.js","../src/lib/VoiceMessageProvider.tsx","../src/lib/hooks/useMarkAsReadScheduler.ts","../src/lib/Sendbird.tsx"],"sourcesContent":["export const INIT_SDK = 'INIT_SDK';\nexport const SET_SDK_LOADING = 'SET_SDK_LOADING';\nexport const RESET_SDK = 'RESET_SDK';\nexport const SDK_ERROR = 'SDK_ERROR';\n","import SendbirdChat from '@sendbird/chat';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\n\nimport {\n INIT_SDK,\n SET_SDK_LOADING,\n RESET_SDK,\n SDK_ERROR,\n} from './actionTypes';\nimport { INIT_USER, UPDATE_USER_INFO, RESET_USER } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\n\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}) => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk && sdk.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk,\n logger,\n}, dispatchers) => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n let sessionHandler = null;\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const params = {\n appId,\n modules: [\n new GroupChannelModule(),\n new OpenChannelModule(),\n ],\n };\n if (customApiHost) {\n params.customApiHost = customApiHost;\n }\n if (customWebSocketHost) {\n params.customWebSocketHost = customWebSocketHost;\n }\n const newSdk = SendbirdChat.init(params);\n if (configureSession && typeof configureSession === 'function') {\n sessionHandler = configureSession(newSdk);\n newSdk.setSessionHandler(sessionHandler);\n }\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo({\n nickname: nickname || user.nickname,\n profileUrl: profileUrl || user.profileUrl,\n }).then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n sdkDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","export default {\n initialized: false,\n loading: false,\n sdk: {},\n error: false,\n};\n","import * as sdkActions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case sdkActions.SET_SDK_LOADING:\n return {\n ...state,\n initialized: false,\n loading: action.payload,\n };\n case sdkActions.SDK_ERROR:\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n case sdkActions.INIT_SDK:\n return {\n sdk: action.payload,\n initialized: true,\n loading: false,\n error: false,\n };\n case sdkActions.RESET_SDK:\n return initialState;\n default:\n return state;\n }\n}\n","export default {\n initialized: false,\n loading: false,\n user: {},\n};\n","import * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_USER:\n return {\n initialized: true,\n loading: false,\n user: action.payload,\n };\n case actions.RESET_USER:\n return initialState;\n case actions.UPDATE_USER_INFO:\n return {\n ...state,\n user: action.payload,\n };\n default:\n return state;\n }\n}\n","import { ConnectionHandler } from '@sendbird/chat';\nimport { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n try {\n logger.warning('sdk changed', uniqueHandlerId);\n const handler = new ConnectionHandler();\n handler.onDisconnected = () => {\n logger.warning('onDisconnected', { isOnline });\n };\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n // workaround -> addConnectionHandler invalidates session handler\n // provided through configureSession\n if (sdk?.addConnectionHandler) {\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n } catch {\n //\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.connectionState !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n\nimport { ObjectValues } from \"../../utils/typeHelpers/objectValues\";\n\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n} as const;\nexport type LogLevel = ObjectValues<typeof LOG_LEVELS>;\n\nconst colorLog = (level: LogLevel): string => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\ninterface PrintLogProps {\n level: LogLevel;\n title: string;\n description?: string;\n}\nexport const printLog = ({\n level,\n title,\n description = '',\n}: PrintLogProps): void => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\ntype LoggerLogType = (title?: string, description?: string) => void;\ninterface LoggerInterface {\n info: LoggerLogType;\n error: LoggerLogType;\n warning: LoggerLogType;\n}\n\nconst noop = () => {/* noop */};\nexport const getDefaultLogger = (): LoggerInterface => ({\n info: noop,\n error: noop,\n warning: noop,\n});\n\nexport const LoggerFactory = (\n lvl: LogLevel,\n customInterface?: () => void,\n): LoggerInterface => {\n const logInterface = customInterface || printLog;\n const lvlArray: Array<LogLevel> = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl: LogLevel) => (title?: string, description?: string) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n\n// TODO: Make this to hook, useLogger\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\n\ninterface PubSubTypes {\n __getTopics: () => Record<string, string>;\n subscribe: (topic: string, listener: unknown) => { remove: () => void };\n publish: (topic: string, info: unknown) => void;\n}\n\nconst pubSubFactory = (): PubSubTypes => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n\nexport default pubSubFactory;\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import React from 'react';\nimport { VoicePlayerProvider } from '../hooks/VoicePlayer';\nimport { VoiceRecorderProvider } from '../hooks/VoiceRecorder';\n\nexport interface VoiceMessageProviderProps {\n children: React.ReactElement;\n isVoiceMessageEnabled?: boolean;\n}\n\nexport const VoiceMessageProvider = ({\n children,\n isVoiceMessageEnabled = true,\n}: VoiceMessageProviderProps): React.ReactElement => {\n if (!isVoiceMessageEnabled) {\n return (\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n );\n }\n return (\n <VoiceRecorderProvider>\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n </VoiceRecorderProvider>\n );\n};\n\nexport default VoiceMessageProvider;\n","import { GroupChannel } from \"@sendbird/chat/groupChannel\";\nimport { useEffect, useMemo } from \"react\";\nimport { Logger } from \"../SendbirdState\";\n\nexport type MarkAsReadSchedulerType = {\n push: (channel: GroupChannel) => void;\n clear: () => void;\n getQueue: () => GroupChannel[];\n};\n\nconst TIMEOUT = 5000;\n\nexport const schedulerFactory = (logger: Logger, timeout?: number): MarkAsReadSchedulerType => {\n let queue: GroupChannel[] = [];\n let interval = null;\n const push = (channel: GroupChannel) => {\n const channelPresent = queue.find((c) => c.url === channel.url);\n if (!channelPresent) {\n queue.push(channel)\n } else {\n logger.info('Channel: Mark as read already in queue', channel);\n }\n // start the interval if it's not already running\n if (interval) {\n return;\n }\n interval = setInterval(() => {\n if (queue.length === 0) {\n clearInterval(interval);\n interval = null;\n return;\n }\n const channel = queue.shift();\n if (channel) {\n try {\n channel.markAsRead();\n } catch (error) {\n logger.error('Channel: Mark as read failed', error);\n }\n }\n }, (timeout || TIMEOUT));\n };\n const clear = () => {\n queue = [];\n if (interval) {\n clearInterval(interval);\n interval = null;\n }\n };\n return {\n push,\n clear,\n getQueue: () => queue,\n };\n}\n\ninterface DynamicParams {\n isConnected: boolean;\n}\n\ninterface StaticParams {\n logger: Logger;\n}\n\nexport function useMarkAsReadScheduler({\n isConnected,\n}: DynamicParams, {\n logger,\n}: StaticParams): MarkAsReadSchedulerType {\n const markAsReadScheduler = useMemo(() => schedulerFactory(logger), []);\n\n useEffect(() => {\n // for simplicity, we clear the queue when the connection is lost\n if (!isConnected) {\n markAsReadScheduler.clear()\n return;\n }\n }, [isConnected]);\n\n return markAsReadScheduler;\n}\n","import './index.scss';\nimport './__experimental__typography.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { VoiceMessageProvider } from './VoiceMessageProvider';\nimport { LocalizationProvider } from './LocalizationContext';\nimport { MediaQueryProvider } from './MediaQueryContext';\nimport getStringSet from '../ui/Label/stringSet';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../utils/consts';\nimport { useMarkAsReadScheduler } from './hooks/useMarkAsReadScheduler';\n\nexport type UserListQueryType = {\n hasNext?: boolean;\n next: () => Promise<Array<User>>;\n}\n\ninterface VoiceRecordOptions {\n maxRecordingTime?: number;\n minRecordingTime?: number;\n}\n\nexport interface ImageCompressionOptions {\n compressionRate?: number;\n resizingWidth?: number | string;\n resizingHeight?: number | string;\n}\n\nexport interface SendbirdConfig {\n logLevel?: string | Array<string>;\n pubSub?: () => void;// TODO: Define pubSub type and apply it here\n userMention?: {\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n };\n isREMUnitEnabled?: boolean;\n}\n\nexport interface SendbirdProviderProps {\n appId: string;\n userId: string;\n children: React.ReactElement;\n accessToken?: string;\n customApiHost?: string;\n customWebSocketHost?: string;\n configureSession?: () => void;\n theme?: 'light' | 'dark';\n config?: SendbirdConfig;\n nickname?: string;\n colorSet?: Record<string, string>;\n stringSet?: Record<string, string>;\n replyType?: 'NONE' | 'QUOTE_REPLY' | 'THREAD';\n dateLocale?: Locale;\n profileUrl?: string;\n voiceRecord?: VoiceRecordOptions;\n userListQuery?: UserListQueryType;\n imageCompression?: ImageCompressionOptions;\n allowProfileEdit?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableUserProfile?: boolean;\n isVoiceMessageEnabled?: boolean;\n disableMarkAsDelivered?: boolean;\n isTypingIndicatorEnabledOnChannelList?: boolean;\n isMessageReceiptStatusEnabledOnChannelList?: boolean;\n renderUserProfile?: () => React.ReactElement;\n onUserProfileMessage?: () => void;\n}\n\nconst Sendbird = ({\n appId,\n userId,\n children,\n accessToken = '',\n customApiHost = '',\n customWebSocketHost = '',\n configureSession = null,\n theme = 'light',\n config = {},\n nickname = '',\n colorSet = null,\n stringSet = null,\n replyType = 'NONE',\n dateLocale = null,\n profileUrl = '',\n voiceRecord = { maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX, minRecordingTime: VOICE_RECORDER_DEFAULT_MIN },\n userListQuery = null,\n imageCompression = {},\n allowProfileEdit = false,\n isMentionEnabled = false,\n isReactionEnabled = true,\n disableUserProfile = false,\n isVoiceMessageEnabled = true,\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n renderUserProfile = null,\n onUserProfileMessage = null,\n}: SendbirdProviderProps): React.ReactElement => {\n const mediaQueryBreakPoint = false;\n\n const {\n logLevel = '',\n userMention = {},\n isREMUnitEnabled = false,\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub] = useState(pubSubFactory());\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n\n useEffect(() => {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-experimental__rem__units');\n if (isREMUnitEnabled) {\n body.classList.add('sendbird-experimental__rem__units');\n }\n }, [isREMUnitEnabled]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const markAsReadScheduler = useMarkAsReadScheduler({ isConnected: isOnline }, { logger });\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n onUserProfileMessage,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression: {\n compressionRate: 0.7,\n ...imageCompression,\n },\n isReactionEnabled,\n isMentionEnabled: isMentionEnabled || false,\n isVoiceMessageEnabled,\n voiceRecord,\n userMention: {\n maxMentionCount: userMention?.maxMentionCount || 10,\n maxSuggestionCount: userMention?.maxSuggestionCount || 15,\n },\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n replyType,\n markAsReadScheduler,\n },\n }}\n >\n <MediaQueryProvider logger={logger} mediaQueryBreakPoint={mediaQueryBreakPoint}>\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n <VoiceMessageProvider isVoiceMessageEnabled={isVoiceMessageEnabled}>\n {children}\n </VoiceMessageProvider>\n </LocalizationProvider>\n </MediaQueryProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nexport default Sendbird;\n"],"names":["INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","APP_VERSION_STRING","disconnectSdk","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","RESET_USER","finally","handleConnection","dispatchers","userId","appId","nickname","profileUrl","accessToken","configureSession","customApiHost","customWebSocketHost","logger","info","sessionHandler","params","modules","GroupChannelModule","OpenChannelModule","newSdk","SendbirdChat","init","setSessionHandler","addExtension","connectCbSucess","user","INIT_USER","isTextuallyNull","updateCurrentUserInfo","namedUser","UPDATE_USER_INFO","connectCbError","e","error","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","__assign","initialized","loading","reducer","state","action","sdkActions","_objectSpread","initialState","actions","useConnectionStatus","isOnline","setIsOnline","useState","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onDisconnected","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","removeConnectionHandler","tryReconnect","connectionState","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","_a","title","_b","description","console","log","concat","Date","toISOString","noop","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","pubSubFactory","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","VoiceMessageProvider","children","isVoiceMessageEnabled","React","TIMEOUT","schedulerFactory","timeout","queue","interval","channel","channelPresent","find","c","url","setInterval","length","clearInterval","shift","markAsRead","clear","getQueue","useMarkAsReadScheduler","isConnected","markAsReadScheduler","useMemo","Sendbird","_c","_d","_e","_f","theme","_g","config","_h","_j","colorSet","_k","stringSet","_l","replyType","_m","dateLocale","_o","_p","voiceRecord","maxRecordingTime","VOICE_RECORDER_DEFAULT_MAX","minRecordingTime","VOICE_RECORDER_DEFAULT_MIN","_q","userListQuery","_r","imageCompression","_s","allowProfileEdit","_t","isMentionEnabled","_u","isReactionEnabled","_v","disableUserProfile","_w","_x","disableMarkAsDelivered","_y","isTypingIndicatorEnabledOnChannelList","_z","isMessageReceiptStatusEnabledOnChannelList","_0","renderUserProfile","_1","onUserProfileMessage","mediaQueryBreakPoint","_2","logLevel","_3","userMention","_4","isREMUnitEnabled","_5","setLogger","pubSub","_6","useReducer","sdkReducers","sdkInitialState","sdkStore","_7","userReducers","userInitialState","userStore","_8","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","getStringSet","stores","compressionRate","maxMentionCount","maxSuggestionCount"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAO,MAAMA,QAAQ,GAAG,UAAjB,CAAA;AACA,MAAMC,eAAe,GAAG,iBAAxB,CAAA;AACA,MAAMC,SAAS,GAAG,WAAlB,CAAA;AACA,MAAMC,SAAS,GAAG,WAAlB;;ACUP,MAAMC,kBAAkB,GAAG,YAA3B,CAAA;AAIO,MAAMC,aAAa,GAAG,IAKvB,IAAA;EAAA,IALwB;IAC5BC,aAD4B;IAE5BC,cAF4B;IAG5BC,GAH4B;AAI5BC,IAAAA,YAAAA;GACI,GAAA,IAAA,CAAA;AACJH,EAAAA,aAAa,CAAC;AAAEI,IAAAA,IAAI,EAAET,eAAR;AAAyBU,IAAAA,OAAO,EAAE,IAAA;AAAlC,GAAD,CAAb,CAAA;;AACA,EAAA,IAAIH,GAAG,IAAIA,GAAG,CAACI,UAAf,EAA2B;AACzBJ,IAAAA,GAAG,CAACI,UAAJ,EACGC,CAAAA,IADH,CACQ,MAAM;AACVP,MAAAA,aAAa,CAAC;AAAEI,QAAAA,IAAI,EAAER,SAAAA;AAAR,OAAD,CAAb,CAAA;AACAK,MAAAA,cAAc,CAAC;AAAEG,QAAAA,IAAI,EAAEI,UAAAA;AAAR,OAAD,CAAd,CAAA;KAHJ,CAAA,CAKGC,OALH,CAKW,MAAM;MACbN,YAAY,EAAA,CAAA;KANhB,CAAA,CAAA;AAQD,GATD,MASO;IACLA,YAAY,EAAA,CAAA;AACb,GAAA;AACF,CAnBM,CAAA;AAqBA,MAAMO,gBAAgB,GAAG,CAAA,KAAA,EAW7BC,WAX6B,KAWb;EAAA,IAXc;IAC/BC,MAD+B;IAE/BC,KAF+B;IAG/BC,QAH+B;IAI/BC,UAJ+B;IAK/BC,WAL+B;IAM/BC,gBAN+B;IAO/BC,aAP+B;IAQ/BC,mBAR+B;IAS/BjB,GAT+B;AAU/BkB,IAAAA,MAAAA;GACiB,GAAA,KAAA,CAAA;EACjB,MAAM;IACJpB,aADI;AAEJC,IAAAA,cAAAA;AAFI,GAAA,GAGFU,WAHJ,CAAA;AAIAZ,EAAAA,aAAa,CAAC;IACZC,aADY;IAEZC,cAFY;IAGZC,GAHY;IAIZkB,MAJY;AAKZjB,IAAAA,YAAY,EAAE,MAAM;MAClBiB,MAAM,CAACC,IAAP,CAAY,kBAAZ,CAAA,CAAA;MACA,IAAIC,cAAc,GAAG,IAArB,CAAA;AACAtB,MAAAA,aAAa,CAAC;AAAEI,QAAAA,IAAI,EAAET,eAAR;AAAyBU,QAAAA,OAAO,EAAE,IAAA;AAAlC,OAAD,CAAb,CAAA;;MACA,IAAIO,MAAM,IAAIC,KAAd,EAAqB;AACnB,QAAA,MAAMU,MAAM,GAAG;UACbV,KADa;UAEbW,OAAO,EAAE,CACP,IAAIC,kBAAJ,EADO,EAEP,IAAIC,iBAAJ,EAFO,CAAA;SAFX,CAAA;;AAOA,QAAA,IAAIR,aAAJ,EAAmB;UACjBK,MAAM,CAACL,aAAP,GAAuBA,aAAvB,CAAA;AACD,SAAA;;AACD,QAAA,IAAIC,mBAAJ,EAAyB;UACvBI,MAAM,CAACJ,mBAAP,GAA6BA,mBAA7B,CAAA;AACD,SAAA;;AACD,QAAA,MAAMQ,MAAM,GAAGC,YAAY,CAACC,IAAb,CAAkBN,MAAlB,CAAf,CAAA;;AACA,QAAA,IAAIN,gBAAgB,IAAI,OAAOA,gBAAP,KAA4B,UAApD,EAAgE;AAC9DK,UAAAA,cAAc,GAAGL,gBAAgB,CAACU,MAAD,CAAjC,CAAA;UACAA,MAAM,CAACG,iBAAP,CAAyBR,cAAzB,CAAA,CAAA;AACD,SAlBkB;AAoBnB;;;QACqC;AACnCK,UAAAA,MAAM,CAACI,YAAP,CAAoB,UAApB,EAAgCjC,kBAAhC,CAAA,CAAA;AACD,SAAA;;QACD,MAAMkC,eAAe,GAAIC,IAAD,IAAU;AAChCjC,UAAAA,aAAa,CAAC;AAAEI,YAAAA,IAAI,EAAEV,QAAR;AAAkBW,YAAAA,OAAO,EAAEsB,MAAAA;AAA3B,WAAD,CAAb,CAAA;AACA1B,UAAAA,cAAc,CAAC;AAAEG,YAAAA,IAAI,EAAE8B,SAAR;AAAmB7B,YAAAA,OAAO,EAAE4B,IAAAA;WAA7B,CAAd,CAFgC;AAIhC;;UACA,IAAI,CAACnB,QAAQ,KAAKmB,IAAI,CAACnB,QAAlB,IAA8BC,UAAU,KAAKkB,IAAI,CAAClB,UAAnD,KACC,EAAEoB,eAAe,CAACrB,QAAD,CAAf,IAA6BqB,eAAe,CAACpB,UAAD,CAA9C,CADL,EAEE;YACAY,MAAM,CAACS,qBAAP,CAA6B;AAC3BtB,cAAAA,QAAQ,EAAEA,QAAQ,IAAImB,IAAI,CAACnB,QADA;AAE3BC,cAAAA,UAAU,EAAEA,UAAU,IAAIkB,IAAI,CAAClB,UAAAA;AAFJ,aAA7B,CAGGR,CAAAA,IAHH,CAGS8B,SAAD,IAAe;AACrBpC,cAAAA,cAAc,CAAC;AAAEG,gBAAAA,IAAI,EAAEkC,gBAAR;AAA0BjC,gBAAAA,OAAO,EAAEgC,SAAAA;AAAnC,eAAD,CAAd,CAAA;aAJF,CAAA,CAAA;AAMD,WAAA;SAdH,CAAA;;QAiBA,MAAME,cAAc,GAAIC,CAAD,IAAO;AAC5BpB,UAAAA,MAAM,CAACqB,KAAP,CAAa,mBAAb,EAAmC,CAAA,EAAED,CAAE,CAAvC,CAAA,CAAA,CAAA;AACAxC,UAAAA,aAAa,CAAC;AAAEI,YAAAA,IAAI,EAAER,SAAAA;AAAR,WAAD,CAAb,CAAA;AACAI,UAAAA,aAAa,CAAC;AAAEI,YAAAA,IAAI,EAAEI,UAAAA;AAAR,WAAD,CAAb,CAAA;AACAR,UAAAA,aAAa,CAAC;AAAEI,YAAAA,IAAI,EAAEP,SAAAA;AAAR,WAAD,CAAb,CAAA;SAJF,CAAA;;AAOA,QAAA,IAAImB,WAAJ,EAAiB;UACfW,MAAM,CAACe,OAAP,CAAe9B,MAAf,EAAuBI,WAAvB,CAAA,CACGT,IADH,CACSoC,GAAD,IAASX,eAAe,CAACW,GAAD,CADhC,CAAA,CAEGC,KAFH,CAEUC,GAAD,IAASN,cAAc,CAACM,GAAD,CAFhC,CAAA,CAAA;AAGD,SAJD,MAIO;UACLlB,MAAM,CAACe,OAAP,CAAe9B,MAAf,EACGL,IADH,CACSoC,GAAD,IAASX,eAAe,CAACW,GAAD,CADhC,EAEGC,KAFH,CAEUC,GAAD,IAASN,cAAc,CAACM,GAAD,CAFhC,CAAA,CAAA;AAGD,SAAA;AACF,OAzDD,MAyDO;AACL7C,QAAAA,aAAa,CAAC;AAAEI,UAAAA,IAAI,EAAEP,SAAAA;AAAR,SAAD,CAAb,CAAA;AACAuB,QAAAA,MAAM,CAAC0B,OAAP,CAAe,mBAAf,EAAoC,yBAApC,CAAA,CAAA;AACD,OAAA;AACF,KAAA;AAtEW,GAAD,CAAb,CAAA;AAwED,CAxFM;;ACnCP,IAAMC,OAAO,GAAG,UAACC,GAAD,EAAI;AAClB,EAAA,IAAIA,GAAG,KAAK,IAAR,IAAgBA,GAAG,KAAKC,SAA5B,EAAuC;AACrC,IAAA,OAAO,IAAP,CAAA;AACD,GAAA;;AAED,EAAA,KAAK,IAAMC,IAAX,IAAmBF,GAAnB,EAAwB;AACtB,IAAA,IAAIA,GAAG,CAACG,cAAJ,CAAmBD,IAAnB,CAAJ,EAA8B;AAC5B,MAAA,OAAO,KAAP,CAAA;AACD,KAAA;AACF,GAAA;;EACD,OAAOE,IAAI,CAACC,SAAL,CAAeL,GAAf,CAAwBI,KAAAA,IAAI,CAACC,SAAL,CAAe,EAAf,CAA/B,CAAA;AACD,CAXD,CAAA;;AAaA,IAAMC,QAAQ,GAAG,UAACC,SAAD,EAAkC;AACjDC,EAAAA,eAAe,CAAC,YAAA;AACd,IAAA,IAAI,CAACT,OAAO,CAACQ,SAAD,CAAZ,EAAyB;AACvBE,MAAAA,OAAO,CAAC;QACNC,SAAS,EACJC,QAAA,CAAA;AACD,UAAA,6BAAA,EAA+B,SAD9B;AAED,UAAA,6BAAA,EAA+B,SAF9B;AAGD,UAAA,6BAAA,EAA+B,SAH9B;AAID,UAAA,6BAAA,EAA+B,SAJ9B;AAKD,UAAA,6BAAA,EAA+B,SAL9B;AAOD,UAAA,+BAAA,EAAiC,SAPhC;AAQD,UAAA,+BAAA,EAAiC,SARhC;AASD,UAAA,+BAAA,EAAiC,SAThC;AAUD,UAAA,+BAAA,EAAiC,SAVhC;AAWD,UAAA,+BAAA,EAAiC,SAXhC;AAaD,UAAA,iCAAA,EAAmC,SAblC;AAeD,UAAA,2BAAA,EAA6B,SAf5B;AAgBD,UAAA,2BAAA,EAA6B,SAhB5B;AAiBD,UAAA,2BAAA,EAA6B,SAjB5B;AAkBD,UAAA,2BAAA,EAA6B,SAlB5B;AAmBD,UAAA,2BAAA,EAA6B,SAnB5B;AAqBD,UAAA,gCAAA,EAAkC,SArBjC;AAsBD,UAAA,gCAAA,EAAkC,SAtBjC;AAuBD,UAAA,gCAAA,EAAkC,SAvBjC;AAwBD,UAAA,gCAAA,EAAkC,SAxBjC;AAyBD,UAAA,gCAAA,EAAkC,SAzBjC;AA0BD,UAAA,gCAAA,EAAkC,SA1BjC;AA2BD,UAAA,gCAAA,EAAkC,SA3BjC;AA4BD,UAAA,+BAAA,EAAiC,SA5BhC;AA8BD,UAAA,yBAAA,EAA2B,qBA9B1B;AAgCD,UAAA,4BAAA,EAA8B,qBAhC7B;AAiCD,UAAA,4BAAA,EAA8B,qBAjC7B;AAkCD,UAAA,4BAAA,EAA8B,qBAlC7B;AAmCD,UAAA,4BAAA,EAA8B,qBAnC7B;AAqCD,UAAA,2BAAA,EAA6B,2BArC5B;AAsCD,UAAA,2BAAA,EAA6B,2BAtC5B;AAuCD,UAAA,2BAAA,EAA6B,2BAvC5B;AAwCD,UAAA,2BAAA,EAA6B,2BAxC5B;AA0CD,UAAA,2BAAA,EAA6B,oGA1C5B;AA2CD,UAAA,2BAAA,EAA6B,+GA3C5B;AA4CD,UAAA,2BAAA,EAA6B,8GA5C5B;AA6CD,UAAA,2BAAA,EAA6B,8GA7C5B;AA+CD,UAAA,sCAAA,EAAwC,2IA/CvC;AAiDD,UAAA,8BAAA,EAAgC,SAjD/B;AAkDD,UAAA,8BAAA,EAAgC,SAlD/B;AAmDD,UAAA,8BAAA,EAAgC,SAnD/B;AAoDD,UAAA,8BAAA,EAAgC,SApD/B;AAqDD,UAAA,8BAAA,EAAgC,SArD/B;AAuDD,UAAA,gCAAA,EAAkC,SAvDjC;AAwDD,UAAA,gCAAA,EAAkC,SAxDjC;AAyDD,UAAA,gCAAA,EAAkC,SAzDjC;AA0DD,UAAA,gCAAA,EAAkC,SA1DjC;AA2DD,UAAA,gCAAA,EAAkC,SA3DjC;AA6DD,UAAA,kCAAA,EAAoC,SA7DnC;AA+DD,UAAA,4BAAA,EAA8B,SA/D7B;AAgED,UAAA,4BAAA,EAA8B,SAhE7B;AAiED,UAAA,4BAAA,EAA8B,SAjE7B;AAkED,UAAA,4BAAA,EAA8B,SAlE7B;AAmED,UAAA,4BAAA,EAA8B,SAnE7B;AAqED,UAAA,iCAAA,EAAmC,SArElC;AAsED,UAAA,iCAAA,EAAmC,SAtElC;AAuED,UAAA,iCAAA,EAAmC,SAvElC;AAwED,UAAA,iCAAA,EAAmC,SAxElC;AAyED,UAAA,iCAAA,EAAmC,SAzElC;AA0ED,UAAA,iCAAA,EAAmC,SA1ElC;AA2ED,UAAA,iCAAA,EAAmC,SA3ElC;AA4ED,UAAA,gCAAA,EAAkC,UA5EjC;AA8ED,UAAA,0BAAA,EAA4B,qBA9E3B;AAgFD,UAAA,6BAAA,EAA+B,qBAhF9B;AAiFD,UAAA,6BAAA,EAA+B,qBAjF9B;AAkFD,UAAA,6BAAA,EAA+B,qBAlF9B;AAmFD,UAAA,6BAAA,EAA+B,qBAnF9B;AAqFD,UAAA,4BAAA,EAA8B,2BArF7B;AAsFD,UAAA,4BAAA,EAA8B,2BAtF7B;AAuFD,UAAA,4BAAA,EAA8B,2BAvF7B;AAwFD,UAAA,4BAAA,EAA8B,2BAxF7B;AA0FD,UAAA,4BAAA,EAA8B,oGA1F7B;AA2FD,UAAA,4BAAA,EAA8B,+GA3F7B;AA4FD,UAAA,4BAAA,EAA8B,8GA5F7B;AA6FD,UAAA,4BAAA,EAA8B,8GA7F7B;UA+FD,uCAAyC,EAAA,2IAAA;AA/FxC,SAAA,EAiGAJ,SAjGA,CAAA;AAFC,OAAD,CAAP,CAAA;AAsGD,KAAA;AACF,GAzGc,EAyGZ,CAACA,SAAD,CAzGY,CAAf,CAAA;AA0GD,CA3GD;;AChBA,sBAAe;AACbK,EAAAA,WAAW,EAAE,KADA;AAEbC,EAAAA,OAAO,EAAE,KAFI;AAGb3D,EAAAA,GAAG,EAAE,EAHQ;AAIbuC,EAAAA,KAAK,EAAE,KAAA;AAJM,CAAf;;ACGe,SAASqB,SAAT,CAAiBC,KAAjB,EAAwBC,MAAxB,EAAgC;EAC7C,QAAQA,MAAM,CAAC5D,IAAf;IACE,KAAK6D,eAAL;AACE,MAAA,OAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACKH,KADL,CAAA,EAAA,EAAA,EAAA;AAEEH,QAAAA,WAAW,EAAE,KAFf;QAGEC,OAAO,EAAEG,MAAM,CAAC3D,OAAAA;AAHlB,OAAA,CAAA,CAAA;;IAKF,KAAK4D,SAAL;AACE,MAAA,OAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACKH,KADL,CAAA,EAAA,EAAA,EAAA;AAEEH,QAAAA,WAAW,EAAE,KAFf;AAGEC,QAAAA,OAAO,EAAE,KAHX;AAIEpB,QAAAA,KAAK,EAAE,IAAA;AAJT,OAAA,CAAA,CAAA;;IAMF,KAAKwB,QAAL;MACE,OAAO;QACL/D,GAAG,EAAE8D,MAAM,CAAC3D,OADP;AAELuD,QAAAA,WAAW,EAAE,IAFR;AAGLC,QAAAA,OAAO,EAAE,KAHJ;AAILpB,QAAAA,KAAK,EAAE,KAAA;OAJT,CAAA;;IAMF,KAAKwB,SAAL;AACE,MAAA,OAAOE,eAAP,CAAA;;AACF,IAAA;AACE,MAAA,OAAOJ,KAAP,CAAA;AAxBJ,GAAA;AA0BD;;AC9BD,uBAAe;AACbH,EAAAA,WAAW,EAAE,KADA;AAEbC,EAAAA,OAAO,EAAE,KAFI;AAGb5B,EAAAA,IAAI,EAAE,EAAA;AAHO,CAAf;;ACGe,SAAS6B,OAAT,CAAiBC,KAAjB,EAAwBC,MAAxB,EAAgC;EAC7C,QAAQA,MAAM,CAAC5D,IAAf;IACE,KAAKgE,SAAL;MACE,OAAO;AACLR,QAAAA,WAAW,EAAE,IADR;AAELC,QAAAA,OAAO,EAAE,KAFJ;QAGL5B,IAAI,EAAE+B,MAAM,CAAC3D,OAAAA;OAHf,CAAA;;IAKF,KAAK+D,UAAL;AACE,MAAA,OAAOD,gBAAP,CAAA;;IACF,KAAKC,gBAAL;AACE,MAAA,OAAAF,cAAA,CAAAA,cAAA,CAAA,EAAA,EACKH,KADL,CAAA,EAAA,EAAA,EAAA;QAEE9B,IAAI,EAAE+B,MAAM,CAAC3D,OAAAA;AAFf,OAAA,CAAA,CAAA;;AAIF,IAAA;AACE,MAAA,OAAO0D,KAAP,CAAA;AAfJ,GAAA;AAiBD;;AChBD,SAASM,mBAAT,CAA6BnE,GAA7B,EAAkCkB,MAAlC,EAA0C;EACxC,MAAM,CAACkD,QAAD,EAAWC,WAAX,IAA0BC,QAAQ,CAAC,IAAD,CAAxC,CAAA;AAEAC,EAAAA,SAAS,CAAC,MAAM;IACd,MAAMC,eAAe,GAAGC,MAAM,EAA9B,CAAA;;IACA,IAAI;AACFvD,MAAAA,MAAM,CAAC0B,OAAP,CAAe,aAAf,EAA8B4B,eAA9B,CAAA,CAAA;AACA,MAAA,MAAME,OAAO,GAAG,IAAIC,iBAAJ,EAAhB,CAAA;;MACAD,OAAO,CAACE,cAAR,GAAyB,MAAM;AAC7B1D,QAAAA,MAAM,CAAC0B,OAAP,CAAe,gBAAf,EAAiC;AAAEwB,UAAAA,QAAAA;SAAnC,CAAA,CAAA;OADF,CAAA;;MAGAM,OAAO,CAACG,kBAAR,GAA6B,MAAM;QACjCR,WAAW,CAAC,KAAD,CAAX,CAAA;AACAnD,QAAAA,MAAM,CAAC0B,OAAP,CAAe,oBAAf,EAAqC;AAAEwB,UAAAA,QAAAA;SAAvC,CAAA,CAAA;OAFF,CAAA;;MAIAM,OAAO,CAACI,oBAAR,GAA+B,MAAM;QACnCT,WAAW,CAAC,IAAD,CAAX,CAAA;AACAnD,QAAAA,MAAM,CAAC0B,OAAP,CAAe,sBAAf,EAAuC;AAAEwB,UAAAA,QAAAA;SAAzC,CAAA,CAAA;OAFF,CAAA;;MAIAM,OAAO,CAACK,iBAAR,GAA4B,MAAM;AAChC/E,QAAAA,GAAG,CAACgF,SAAJ,EAAA,CAAA;QACA9D,MAAM,CAAC0B,OAAP,CAAe,mBAAf,CAAA,CAAA;OAFF,CAAA;;AAIA1B,MAAAA,MAAM,CAACC,IAAP,CAAY,yBAAZ,EAAuCqD,eAAvC,EAlBE;AAoBF;;AACA,MAAA,IAAIxE,GAAJ,KAAIA,IAAAA,IAAAA,GAAJ,eAAIA,GAAG,CAAEiF,oBAAT,EAA+B;AAC7BjF,QAAAA,GAAG,CAACiF,oBAAJ,CAAyBT,eAAzB,EAA0CE,OAA1C,CAAA,CAAA;AACD,OAAA;KAvBH,CAwBE,gBAAM;AAEP,KAAA;;AACD,IAAA,OAAO,MAAM;MACX,IAAI;QACF1E,GAAG,CAACkF,uBAAJ,CAA4BV,eAA5B,CAAA,CAAA;AACAtD,QAAAA,MAAM,CAACC,IAAP,CAAY,2BAAZ,EAAyCqD,eAAzC,CAAA,CAAA;OAFF,CAGE,iBAAM;AAEP,OAAA;KANH,CAAA;AAQD,GArCQ,EAqCN,CAACxE,GAAD,CArCM,CAAT,CAAA;AAuCAuE,EAAAA,SAAS,CAAC,MAAM;IACd,MAAMY,YAAY,GAAG,MAAM;MACzB,IAAI;QACFjE,MAAM,CAAC0B,OAAP,CAAe,sBAAf,CAAA,CAAA;;AACA,QAAA,IAAI5C,GAAG,CAACoF,eAAJ,KAAwB,MAA5B,EAAoC;AAAE;AACpCpF,UAAAA,GAAG,CAACgF,SAAJ,EAAA,CAAA;AACD,SAAA;OAJH,CAKE,iBAAM;AAEP,OAAA;AACF,KATD,CADc;;;AAYdK,IAAAA,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCH,YAAlC,CAAA,CAAA;AACA,IAAA,OAAO,MAAM;AACXE,MAAAA,MAAM,CAACE,mBAAP,CAA2B,QAA3B,EAAqCJ,YAArC,CAAA,CAAA;KADF,CAAA;AAGD,GAhBQ,EAgBN,CAACnF,GAAD,CAhBM,CAAT,CA1CwC;;AA6DxCuE,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,MAAMiB,IAAI,GAAGC,QAAQ,CAACC,aAAT,CAAuB,MAAvB,CAAb,CAAA;;IACA,IAAI,CAACtB,QAAL,EAAe;MACb,IAAI;AACFoB,QAAAA,IAAI,CAACG,SAAL,CAAeC,GAAf,CAAmB,mBAAnB,CAAA,CAAA;QACA1E,MAAM,CAACC,IAAP,CAAY,uCAAZ,CAAA,CAAA;AACD,OAHD,CAGE,OAAOmB,CAAP,EAAU;AAEX,OAAA;AACF,KAPD,MAOO;MACL,IAAI;AACFkD,QAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,mBAAtB,CAAA,CAAA;QACA3E,MAAM,CAACC,IAAP,CAAY,2CAAZ,CAAA,CAAA;AACD,OAHD,CAGE,OAAOmB,CAAP,EAAU;AAEX,OAAA;AACF,KAAA;AACF,GAjBQ,EAiBN,CAAC8B,QAAD,CAjBM,CAAT,CAAA;AAmBA,EAAA,OAAOA,QAAP,CAAA;AACD;;ACtFD;;AAMO,IAAM0B,UAAU,GAAG;AACxBC,EAAAA,KAAK,EAAE,OADiB;AAExBC,EAAAA,OAAO,EAAE,SAFe;AAGxBC,EAAAA,KAAK,EAAE,OAHiB;AAIxBC,EAAAA,IAAI,EAAE,MAJkB;AAKxBC,EAAAA,GAAG,EAAE,KAAA;AALmB,CAAnB,CAAA;;AASP,IAAMC,QAAQ,GAAG,UAACC,KAAD,EAAgB;AAC/B,EAAA,QAAQA,KAAR;IACE,KAAKP,UAAU,CAACE,OAAhB;AACE,MAAA,OAAQ,eAAR,CAAA;;IACF,KAAKF,UAAU,CAACG,KAAhB;AACE,MAAA,OAAQ,YAAR,CAAA;;AACF,IAAA;AACE,MAAA,OAAQ,aAAR,CAAA;AANJ,GAAA;AAQD,CATD,CAAA;;AAgBO,IAAMK,QAAQ,GAAG,UAACC,EAAD,EAIR;MAHdF,KAAK,GAAAE,EAAA,CAAAF;MACLG,KAAK,GAAAD,EAAA,CAAAC;MACLC;MAAAC,WAAW,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,GACF;;AAEdE,EAAAA,OAAO,CAACC,GAAR,CACE,qBAAsBC,CAAAA,MAAtB,CAAsBR,KAAtB,EAAiC,KAAjC,CAAA,CAAiCQ,MAAjC,CAAiC,IAAIC,IAAJ,EAAWC,CAAAA,WAAX,EAAjC,EAAyD,KAAzD,CAAyDF,CAAAA,MAAzD,CAA+DL,KAA/D,EAAoE,GAApE,CAAA,CAAoEK,MAApE,CAAwEH,WAAW,IAAI,GAAvF,CADF,EACgGN,QAAQ,CAACC,KAAD,CADxG,EAEEK,WAFF,CAAA,CAAA;AAID,CAVM,CAAA;;AAmBP,IAAMM,IAAI,GAAG,YAAiB,EAA9B,CAAA;;AACO,IAAMC,gBAAgB,GAAG,YAAA;EAAuB,OAAC;AACtD9F,IAAAA,IAAI,EAAE6F,IADgD;AAEtDzE,IAAAA,KAAK,EAAEyE,IAF+C;AAGtDpE,IAAAA,OAAO,EAAEoE,IAAAA;GAH4C,CAAA;AAIrD,CAJK,CAAA;AAMA,IAAME,aAAa,GAAG,UAC3BC,GAD2B,EAE3BC,eAF2B,EAEC;AAE5B,EAAA,IAAMC,YAAY,GAAGD,eAAe,IAAId,QAAxC,CAAA;AACA,EAAA,IAAMgB,QAAQ,GAAoBC,KAAK,CAACC,OAAN,CAAcL,GAAd,CAAA,GAAqBA,GAArB,GAA2B,CAACA,GAAD,CAA7D,CAAA;;AAEA,EAAA,IAAMM,QAAQ,GAAG,UAACC,KAAD,EAAqB;AAAA,IAAA,OAAA,UAAClB,KAAD,EAAiBE,WAAjB,EAA0C;AAAA,MAAA,OAAAW,YAAY,CAAC;AAC3FhB,QAAAA,KAAK,EAAEqB,KADoF;AAE3FlB,QAAAA,KAAK,EAAAA,KAFsF;AAG3FE,QAAAA,WAAW,EAAAA,WAAAA;AAHgF,OAAD,CAAZ,CAAA;KAA1C,CAAA;GAAtC,CAAA;;EAMA,IAAMxF,MAAM,GAAGoG,QAAQ,CAACK,MAAT,CAAgB,UAACC,WAAD,EAAcC,UAAd,EAAwB;IACrD,IAAIA,UAAU,KAAK/B,UAAU,CAACC,KAA1B,IAAmC8B,UAAU,KAAK/B,UAAU,CAACK,GAAjE,EAAsE;MACpE,OACK1C,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAmE,WAAA,CAAA,EACH;AAAAzG,QAAAA,IAAI,EAAEsG,QAAQ,CAAC3B,UAAU,CAACI,IAAZ,CAAd;AACA3D,QAAAA,KAAK,EAAEkF,QAAQ,CAAC3B,UAAU,CAACG,KAAZ,CADf;AAEArD,QAAAA,OAAO,EAAE6E,QAAQ,CAAC3B,UAAU,CAACE,OAAZ,CAAA;AAFjB,OADG,CADL,CAAA;AAMD,KAAA;;AAED,IAAA,IAAI6B,UAAU,KAAK/B,UAAU,CAACI,IAA9B,EAAoC;MAClC,OACKzC,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAmE,WAAA,CAAA,EACH;AAAAzG,QAAAA,IAAI,EAAEsG,QAAQ,CAAC3B,UAAU,CAACI,IAAZ,CAAA;AAAd,OADG,CADL,CAAA;AAID,KAAA;;AAED,IAAA,IAAI2B,UAAU,KAAK/B,UAAU,CAACG,KAA9B,EAAqC;MACnC,OACKxC,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAmE,WAAA,CAAA,EACH;AAAArF,QAAAA,KAAK,EAAEkF,QAAQ,CAAC3B,UAAU,CAACG,KAAZ,CAAA;AAAf,OADG,CADL,CAAA;AAID,KAAA;;AAED,IAAA,IAAI4B,UAAU,KAAK/B,UAAU,CAACE,OAA9B,EAAuC;MACrC,OACKvC,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAmE,WAAA,CAAA,EACH;AAAAhF,QAAAA,OAAO,EAAE6E,QAAQ,CAAC3B,UAAU,CAACE,OAAZ,CAAA;AAAjB,OADG,CADL,CAAA;AAID,KAAA;;AAED,IAAA,OAAAvC,QAAA,CAAA,EAAA,EAAYmE,WAAZ,CAAA,CAAA;GA/Ba,EAgCZX,gBAAgB,EAhCJ,CAAf,CAAA;AAiCA,EAAA,OAAO/F,MAAP,CAAA;AACD,CA/CM;;ACzDP;AACA;AACA;AACA;AACA;AAQA,IAAM4G,aAAa,GAAG,YAAA;EACpB,IAAMC,MAAM,GAAG,EAAf,CAAA;AACA,EAAA,IAAMC,GAAG,GAAGD,MAAM,CAAC9E,cAAnB,CAAA;EAEA,OAAO;AACLgF,IAAAA,WAAW,EAAE,YAAA;AAAM,MAAA,OAAAF,MAAA,CAAA;KADd;AAELG,IAAAA,SAAS,EAAE,UAACC,KAAD,EAAQC,QAAR,EAAgB;AACzB;MACA,IAAI,CAACJ,GAAG,CAACK,IAAJ,CAASN,MAAT,EAAiBI,KAAjB,CAAL,EAA8B;AAAEJ,QAAAA,MAAM,CAACI,KAAD,CAAN,GAAgB,EAAhB,CAAA;AAAqB,OAF5B;;;AAKzB,MAAA,IAAMG,KAAK,GAAGP,MAAM,CAACI,KAAD,CAAN,CAAcI,IAAd,CAAmBH,QAAnB,CAA+B,GAAA,CAA7C,CALyB;;MAQzB,OAAO;AACLvC,QAAAA,MAAM,EAAE,YAAA;AACN,UAAA,OAAOkC,MAAM,CAACI,KAAD,CAAN,CAAcG,KAAd,CAAP,CAAA;AACD,SAAA;OAHH,CAAA;KAVG;AAgBLE,IAAAA,OAAO,EAAE,UAACL,KAAD,EAAQhH,IAAR,EAAY;AACnB;MACA,IAAI,CAAC6G,GAAG,CAACK,IAAJ,CAASN,MAAT,EAAiBI,KAAjB,CAAL,EAA8B;AAAE,QAAA,OAAA;AAAS,OAFtB;;;MAKnBJ,MAAM,CAACI,KAAD,CAAN,CAAcM,OAAd,CAAsB,UAACC,IAAD,EAAK;QACzBA,IAAI,CAACvH,IAAI,KAAK4B,SAAT,GAAqB5B,IAArB,GAA4B,EAA7B,CAAJ,CAAA;OADF,CAAA,CAAA;AAGD,KAAA;GAxBH,CAAA;AA0BD,CA9BD;;ACVA,SAASwH,gBAAT,GAAkD;EAAA,IAAxBC,GAAwB,uEAAlB,EAAkB,CAAA;AAAA,EAAA,IAAdC,YAAc,GAAA,SAAA,CAAA,MAAA,GAAA,CAAA,GAAA,SAAA,CAAA,CAAA,CAAA,GAAA,SAAA,CAAA;AAChDtE,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,MAAMuE,IAAI,GAAGrD,QAAQ,CAACC,aAAT,CAAuBmD,YAAvB,CAAb,CAAA;AACAD,IAAAA,GAAG,CAACH,OAAJ,CAAaM,EAAD,IAAQ;AAClB,MAAA,MAAMC,IAAI,GAAGvD,QAAQ,CAACwD,aAAT,CAAuB,KAAvB,CAAb,CAAA;AACAD,MAAAA,IAAI,CAACE,YAAL,CAAkB,IAAlB,EAAwBH,EAAxB,CAAA,CAAA;MACAD,IAAI,CAACK,WAAL,CAAiBH,IAAjB,CAAA,CAAA;KAHF,CAAA,CAAA;AAKA,IAAA,OAAO,MAAM;AACXJ,MAAAA,GAAG,CAACH,OAAJ,CAAaM,EAAD,IAAQ;AAClB,QAAA,MAAMK,MAAM,GAAG3D,QAAQ,CAAC4D,cAAT,CAAwBN,EAAxB,CAAf,CAAA;;AACA,QAAA,IAAIK,MAAJ,EAAY;UACVN,IAAI,CAACQ,WAAL,CAAiBF,MAAjB,CAAA,CAAA;AACD,SAAA;OAJH,CAAA,CAAA;KADF,CAAA;GAPO,EAeN,EAfM,CAAT,CAAA;AAgBD;;ACVM,IAAMG,oBAAoB,GAAG,UAAChD,EAAD,EAGR;AAF1B,EAAA,IAAAiD,QAAQ,cAAR;AAAA,MACA/C,EAAA,GAAAF,EAAA,CAAAkD,qBADA;MACAA,qBAAqB,GAAAhD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA,EAD5B,CAAA;;EAGA,IAAI,CAACgD,qBAAL,EAA4B;AAC1B,IAAA,oBACEC,cAAC,CAAA,aAAA,CAAA,mBAAD,EACGF,IAAAA,EAAAA,QADH,CADF,CAAA;AAKD,GAAA;;EACD,oBACEE,cAAA,CAAA,aAAA,CAAC,qBAAD,EACE,IAAA,eAAAA,cAAA,CAAA,aAAA,CAAC,mBAAD,EACGF,IAAAA,EAAAA,QADH,CADF,CADF,CAAA;AAOD,CAlBM;;ACCP,IAAMG,OAAO,GAAG,IAAhB,CAAA;AAEO,IAAMC,gBAAgB,GAAG,UAAC1I,MAAD,EAAiB2I,OAAjB,EAAiC;EAC/D,IAAIC,KAAK,GAAmB,EAA5B,CAAA;EACA,IAAIC,QAAQ,GAAG,IAAf,CAAA;;AACA,EAAA,IAAMxB,IAAI,GAAG,UAACyB,OAAD,EAAsB;IACjC,IAAMC,cAAc,GAAGH,KAAK,CAACI,IAAN,CAAW,UAACC,CAAD,EAAO;AAAA,MAAA,OAAAA,CAAC,CAACC,GAAF,KAAUJ,OAAO,CAACI,GAAlB,CAAA;AAAqB,KAAvC,CAAvB,CAAA;;IACA,IAAI,CAACH,cAAL,EAAqB;MACnBH,KAAK,CAACvB,IAAN,CAAWyB,OAAX,CAAA,CAAA;AACD,KAFD,MAEO;AACL9I,MAAAA,MAAM,CAACC,IAAP,CAAY,wCAAZ,EAAsD6I,OAAtD,CAAA,CAAA;AACD,KANgC;;;AAQjC,IAAA,IAAID,QAAJ,EAAc;AACZ,MAAA,OAAA;AACD,KAAA;;IACDA,QAAQ,GAAGM,WAAW,CAAC,YAAA;AACrB,MAAA,IAAIP,KAAK,CAACQ,MAAN,KAAiB,CAArB,EAAwB;QACtBC,aAAa,CAACR,QAAD,CAAb,CAAA;AACAA,QAAAA,QAAQ,GAAG,IAAX,CAAA;AACA,QAAA,OAAA;AACD,OAAA;;AACD,MAAA,IAAMC,OAAO,GAAGF,KAAK,CAACU,KAAN,EAAhB,CAAA;;AACA,MAAA,IAAIR,OAAJ,EAAa;QACX,IAAI;AACFA,UAAAA,OAAO,CAACS,UAAR,EAAA,CAAA;SADF,CAEE,OAAOlI,KAAP,EAAc;AACdrB,UAAAA,MAAM,CAACqB,KAAP,CAAa,8BAAb,EAA6CA,KAA7C,CAAA,CAAA;AACD,SAAA;AACF,OAAA;AACF,KAdqB,EAclBsH,OAAO,IAAIF,OAdO,CAAtB,CAAA;GAXF,CAAA;;EA2BA,IAAMe,KAAK,GAAG,YAAA;AACZZ,IAAAA,KAAK,GAAG,EAAR,CAAA;;AACA,IAAA,IAAIC,QAAJ,EAAc;MACZQ,aAAa,CAACR,QAAD,CAAb,CAAA;AACAA,MAAAA,QAAQ,GAAG,IAAX,CAAA;AACD,KAAA;GALH,CAAA;;EAOA,OAAO;AACLxB,IAAAA,IAAI,EAAAA,IADC;AAELmC,IAAAA,KAAK,EAAAA,KAFA;AAGLC,IAAAA,QAAQ,EAAE,YAAA;AAAM,MAAA,OAAAb,KAAA,CAAA;AAAK,KAAA;GAHvB,CAAA;AAKD,CA1CM,CAAA;AAoDS,SAAAc,sBAAA,CAAuBrE,EAAvB,EAEEE,EAFF,EAID;AAHb,EAAA,IAAAoE,WAAW,GAAAtE,EAAA,CAAAsE,WAAX,CAAA;AAEA,EAAA,IAAA3J,MAAM,GAAAuF,EAAA,CAAAvF,MAAN,CAAA;AAEA,EAAA,IAAM4J,mBAAmB,GAAGC,OAAO,CAAC;IAAM,OAAAnB,gBAAgB,CAAC1I,MAAD,CAAhB,CAAA;GAAP,EAAiC,EAAjC,CAAnC,CAAA;AAEAqD,EAAAA,SAAS,CAAC,YAAA;AACR;IACA,IAAI,CAACsG,WAAL,EAAkB;AAChBC,MAAAA,mBAAmB,CAACJ,KAApB,EAAA,CAAA;AACA,MAAA,OAAA;AACD,KAAA;AACF,GANQ,EAMN,CAACG,WAAD,CANM,CAAT,CAAA;AAQA,EAAA,OAAOC,mBAAP,CAAA;AACD;;ACMD,IAAME,QAAQ,GAAG,UAACzE,EAAD,EA6BO;MA5BtB5F,KAAK,GAAA4F,EAAA,CAAA5F;MACLD,MAAM,GAAA6F,EAAA,CAAA7F;MACN8I,QAAQ,GAAAjD,EAAA,CAAAiD;MACR/C,EAAgB,GAAAF,EAAA,CAAAzF;MAAhBA,WAAW,GAAG2F,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA;MACdwE,EAAA,GAAA1E,EAAA,CAAAvF;MAAAA,aAAa,GAAAiK,EAAA,KAAA,KAAA,CAAA,GAAG,EAAH,GAAKA;MAClBC;MAAAjK,mBAAmB,mBAAG,KAAEiK;MACxBC,EAAuB,GAAA5E,EAAA,CAAAxF;MAAvBA,gBAAgB,GAAGoK,EAAA,KAAA,KAAA,CAAA,GAAA,IAAA;MACnBC,EAAA,GAAA7E,EAAA,CAAA8E;MAAAA,KAAK,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,OAAH,GAAUA;MACfE;MAAAC,MAAM,mBAAG,KAAED;MACXE,EAAa,GAAAjF,EAAA,CAAA3F;MAAbA,QAAQ,GAAG4K,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA;MACXC,EAAA,GAAAlF,EAAA,CAAAmF;MAAAA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA;MACfE;MAAAC,SAAS,mBAAG,OAAID;MAChBE,EAAkB,GAAAtF,EAAA,CAAAuF;MAAlBA,SAAS,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,MAAA;MACZE,EAAA,GAAAxF,EAAA,CAAAyF;MAAAA,UAAU,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA;MACjBE;MAAApL,UAAU,mBAAG,KAAEoL;MACfC,EAA4G,GAAA3F,EAAA,CAAA4F;MAA5GA,WAAW,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA;AAAEE,IAAAA,gBAAgB,EAAEC,0BAApB;AAAgDC,IAAAA,gBAAgB,EAAEC,0BAAAA;AAAlE,GAAA,GAA8FL;MAC5GM,EAAoB,GAAAjG,EAAA,CAAAkG;MAApBA,aAAa,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,IAAA;MAChBE,EAAA,GAAAnG,EAAA,CAAAoG;MAAAA,gBAAgB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,EAAH,GAAKA;MACrBE;MAAAC,gBAAgB,mBAAG,QAAKD;MACxBE,EAAwB,GAAAvG,EAAA,CAAAwG;MAAxBA,gBAAgB,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA;MACnBE,EAAA,GAAAzG,EAAA,CAAA0G;MAAAA,iBAAiB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA;MACxBE;MAAAC,kBAAkB,mBAAG,QAAKD;MAC1BE,EAA4B,GAAA7G,EAAA,CAAAkD;MAA5BA,qBAAqB,GAAG2D,EAAA,KAAA,KAAA,CAAA,GAAA,IAAA;MACxBC,EAAA,GAAA9G,EAAA,CAAA+G;MAAAA,sBAAsB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQA;MAC9BE;MAAAC,qCAAqC,mBAAG,QAAKD;MAC7CE,EAAkD,GAAAlH,EAAA,CAAAmH;MAAlDA,0CAA0C,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA;MAC7CE,EAAA,GAAApH,EAAA,CAAAqH;MAAAA,iBAAiB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA;MACxBE;MAAAC,oBAAoB,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,IAAA,GAAIA;EAE3B,IAAME,oBAAoB,GAAG,KAA7B,CAAA;AAGE,EAAA,IAAAC,EAAA,GAGEzC,MAAM,CAAA0C,QAHR;MAAAA,QAAQ,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAAb;AAAA,MACAE,EAEE,GAAA3C,MAAM,CAFQ4C,WADhB;MACAA,WAAW,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EADhB;AAAA,MAEAE,EACE,GAAA7C,MAAM,CADgB8C,gBAFxB;MAEAA,gBAAgB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQA,EAFxB,CAAA;;EAII,IAAAE,EAAsB,GAAAhK,QAAQ,CAAC4C,aAAa,CAAC+G,QAAD,CAAd,CAA9B;AAAA,MAAC/M,MAAM,GAAAoN,EAAA,CAAA,CAAA,CAAP;AAAA,MAASC,SAAS,QAAlB,CAAA;;EACC,IAAAC,MAAM,GAAIlK,QAAQ,CAACwD,aAAa,EAAd,CAAR,EAAA,CAAV,CAAA;;AACD,EAAA,IAAA2G,EAA4B,GAAAC,UAAU,CAACC,SAAD,EAAcC,eAAd,CAAtC;AAAA,MAACC,QAAQ,GAAAJ,EAAA,CAAA,CAAA,CAAT;AAAA,MAAW3O,aAAa,QAAxB,CAAA;;AACA,EAAA,IAAAgP,EAA8B,GAAAJ,UAAU,CAACK,OAAD,EAAeC,gBAAf,CAAxC;AAAA,MAACC,SAAS,GAAAH,EAAA,CAAA,CAAA,CAAV;AAAA,MAAY/O,cAAc,QAA1B,CAAA;;EAENqD,QAAQ,CAACsI,QAAD,CAAR,CAAA;AAEAnH,EAAAA,SAAS,CAAC,YAAA;AACRrD,IAAAA,MAAM,CAACC,IAAP,CAAY,UAAZ,EADQ;;AAGRX,IAAAA,gBAAgB,CAAC;AACfE,MAAAA,MAAM,EAAAA,MADS;AAEfC,MAAAA,KAAK,EAAAA,KAFU;AAGfG,MAAAA,WAAW,EAAAA,WAHI;AAIf+N,MAAAA,QAAQ,EAAAA,QAJO;AAKfjO,MAAAA,QAAQ,EAAAA,QALO;AAMfC,MAAAA,UAAU,EAAAA,UANK;AAOfE,MAAAA,gBAAgB,EAAAA,gBAPD;AAQfC,MAAAA,aAAa,EAAAA,aARE;AASfC,MAAAA,mBAAmB,EAAAA,mBATJ;MAUfjB,GAAG,EAAE6O,QAAQ,CAAC7O,GAVC;AAWfkB,MAAAA,MAAM,EAAAA,MAAAA;AAXS,KAAD,EAYb;AACDpB,MAAAA,aAAa,EAAAA,aADZ;AAEDC,MAAAA,cAAc,EAAAA,cAAAA;AAFb,KAZa,CAAhB,CAAA;GAHO,EAmBN,CAACW,MAAD,EAASC,KAAT,EAAgBG,WAAhB,CAnBM,CAAT,CAfsB;;AAqCtByD,EAAAA,SAAS,CAAC,YAAA;AACRgK,IAAAA,SAAS,CAACrH,aAAa,CAAC+G,QAAD,CAAd,CAAT,CAAA;AACD,GAFQ,EAEN,CAACA,QAAD,CAFM,CAAT,CAAA;AAIAtF,EAAAA,gBAAgB,CAAC,CACf,qBADe,EAEf,0BAFe,EAGf,4BAHe,CAAD,EAIb,MAJa,CAAhB,CAzCsB;;AAgDhB,EAAA,IAAAuG,EAAA,GAAkC5K,QAAQ,CAAC+G,KAAD,CAA1C;AAAA,MAAC8D,YAAY,GAAAD,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeE,eAAe,GAAAF,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACN3K,EAAAA,SAAS,CAAC,YAAA;IACR6K,eAAe,CAAC/D,KAAD,CAAf,CAAA;AACD,GAFQ,EAEN,CAACA,KAAD,CAFM,CAAT,CAAA;AAIA9G,EAAAA,SAAS,CAAC,YAAA;AACR,IAAA,IAAMiB,IAAI,GAAGC,QAAQ,CAACC,aAAT,CAAuB,MAAvB,CAAb,CAAA;AACAF,IAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,mCAAtB,CAAA,CAAA;;AACA,IAAA,IAAIwI,gBAAJ,EAAsB;AACpB7I,MAAAA,IAAI,CAACG,SAAL,CAAeC,GAAf,CAAmB,mCAAnB,CAAA,CAAA;AACD,KAAA;AACF,GANQ,EAMN,CAACyI,gBAAD,CANM,CAAT,CArDsB;;AA6DtB9J,EAAAA,SAAS,CAAC,YAAA;IACRrD,MAAM,CAACC,IAAP,CAAY,aAAZ,EAA2B,SAAU0F,CAAAA,MAAV,CAAUsI,YAAV,CAA3B,CAAA,CAAA;;IACA,IAAI;AACF,MAAA,IAAM3J,IAAI,GAAGC,QAAQ,CAACC,aAAT,CAAuB,MAAvB,CAAb,CAAA;AACAF,MAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,uBAAtB,CAAA,CAAA;AACAL,MAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,sBAAtB,CAAA,CAAA;MACAL,IAAI,CAACG,SAAL,CAAeC,GAAf,CAAmB,kBAAmBiB,CAAAA,MAAnB,CAAmBsI,YAAY,IAAI,OAAnC,CAAnB,CAAA,CAAA;AACAjO,MAAAA,MAAM,CAACC,IAAP,CAAY,oBAAZ,EALE;KAAJ,CAOE,OAAOmB,CAAP,EAAU;MACVpB,MAAM,CAAC0B,OAAP,CAAe,oBAAf,EAAqC,EAAGiE,CAAAA,MAAH,CAAGvE,CAAH,CAArC,CAAA,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,YAAA;MACL,IAAI;AACF,QAAA,IAAMkD,IAAI,GAAGC,QAAQ,CAACC,aAAT,CAAuB,MAAvB,CAAb,CAAA;AACAF,QAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,uBAAtB,CAAA,CAAA;AACAL,QAAAA,IAAI,CAACG,SAAL,CAAeE,MAAf,CAAsB,sBAAtB,EAHE;AAKH,OALD,CAKE,OAAAU,EAAA,EAAM,EAAG;KANb,CAAA;AAQD,GApBQ,EAoBN,CAAC4I,YAAD,CApBM,CAAT,CAAA;EAsBA,IAAM/K,QAAQ,GAAGiL,mBAAe,CAACR,QAAQ,CAAC7O,GAAV,EAAekB,MAAf,CAAhC,CAAA;EAEA,IAAM4J,mBAAmB,GAAGF,sBAAsB,CAAC;AAAEC,IAAAA,WAAW,EAAEzG,QAAAA;AAAf,GAAD,EAA4B;AAAElD,IAAAA,MAAM,EAAAA,MAAAA;AAAR,GAA5B,CAAlD,CAAA;AAEA,EAAA,IAAMoO,eAAe,GAAG5F,cAAK,CAACqB,OAAN,CAAc,YAAA;IACpC,IAAI,CAACa,SAAL,EAAgB;MACd,OAAO2D,YAAY,CAAC,IAAD,CAAnB,CAAA;AACD,KAAA;;AACD,IAAA,OAAA9L,QAAA,CAAAA,QAAA,CAAA,EAAA,EACK8L,YAAY,CAAC,IAAD,CADjB,CAAA,EAEK3D,SAFL,CAAA,CAAA;AAID,GARuB,EAQrB,CAACA,SAAD,CARqB,CAAxB,CAAA;EAUA,oBACElC,cAAA,CAAA,aAAA,CAAC,kBAAD,CAAoB,QAApB,EAAA;AACE,IAAA,KAAK,EAAE;AACL8F,MAAAA,MAAM,EAAE;AACNX,QAAAA,QAAQ,EAAAA,QADF;AAENI,QAAAA,SAAS,EAAAA,SAAAA;OAHN;AAKLxO,MAAAA,WAAW,EAAE;AACXX,QAAAA,aAAa,EAAAA,aADF;AAEXC,QAAAA,cAAc,EAAAA,cAFH;AAGXiF,QAAAA,SAAS,EAAE,YAAA;AACTxE,UAAAA,gBAAgB,CAAC;AACfE,YAAAA,MAAM,EAAAA,MADS;AAEfC,YAAAA,KAAK,EAAAA,KAFU;AAGfG,YAAAA,WAAW,EAAAA,WAHI;AAIf+N,YAAAA,QAAQ,EAAAA,QAJO;AAKfjO,YAAAA,QAAQ,EAAAA,QALO;AAMfC,YAAAA,UAAU,EAAAA,UANK;AAOfK,YAAAA,MAAM,EAAAA,MAPS;YAQflB,GAAG,EAAE6O,QAAQ,CAAC7O,GAAAA;AARC,WAAD,EASb;AACDF,YAAAA,aAAa,EAAAA,aADZ;AAEDC,YAAAA,cAAc,EAAAA,cAAAA;AAFb,WATa,CAAhB,CAAA;AAaD,SAAA;OAtBE;AAwBLwL,MAAAA,MAAM,EAAE;AACN4B,QAAAA,kBAAkB,EAAAA,kBADZ;AAENG,QAAAA,sBAAsB,EAAAA,sBAFhB;AAGNM,QAAAA,iBAAiB,EAAAA,iBAHX;AAINE,QAAAA,oBAAoB,EAAAA,oBAJd;AAKNjB,QAAAA,gBAAgB,EAAAA,gBALV;AAMNzI,QAAAA,QAAQ,EAAAA,QANF;AAON1D,QAAAA,MAAM,EAAAA,MAPA;AAQNC,QAAAA,KAAK,EAAAA,KARC;AASNG,QAAAA,WAAW,EAAAA,WATL;AAUNuK,QAAAA,KAAK,EAAE8D,YAVD;AAWNC,QAAAA,eAAe,EAAAA,eAXT;AAYN3C,QAAAA,aAAa,EAAAA,aAZP;AAaNvL,QAAAA,MAAM,EAAAA,MAbA;AAcNsN,QAAAA,MAAM,EAAAA,MAdA;QAeN7B,gBAAgB;AACd8C,UAAAA,eAAe,EAAE,GAAA;WACd9C,iBAjBC;AAmBNM,QAAAA,iBAAiB,EAAAA,iBAnBX;QAoBNF,gBAAgB,EAAEA,gBAAgB,IAAI,KApBhC;AAqBNtD,QAAAA,qBAAqB,EAAAA,qBArBf;AAsBN0C,QAAAA,WAAW,EAAAA,WAtBL;AAuBNgC,QAAAA,WAAW,EAAE;AACXuB,UAAAA,eAAe,EAAE,CAAAvB,WAAW,KAAX,IAAA,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEuB,eAAb,KAAgC,EADtC;AAEXC,UAAAA,kBAAkB,EAAE,CAAAxB,WAAW,KAAX,IAAA,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEwB,kBAAb,KAAmC,EAAA;SAzBnD;AA2BNnC,QAAAA,qCAAqC,EAAAA,qCA3B/B;AA4BNE,QAAAA,0CAA0C,EAAAA,0CA5BpC;AA6BN5B,QAAAA,SAAS,EAAAA,SA7BH;AA8BNhB,QAAAA,mBAAmB,EAAAA,mBAAAA;AA9Bb,OAAA;AAxBH,KAAA;AADT,GAAA,eA2DEpB,6BAAC,kBAAD,EAAA;AAAoB,IAAA,MAAM,EAAExI,MAA5B;AAAoC,IAAA,oBAAoB,EAAE6M,oBAAAA;AAA1D,GAAA,eACErE,6BAAC,oBAAD,EAAA;AAAsB,IAAA,SAAS,EAAE4F,eAAjC;AAAkD,IAAA,UAAU,EAAEtD,UAAAA;AAA9D,GAAA,eACEtC,6BAAC,oBAAD,EAAA;AAAsB,IAAA,qBAAqB,EAAED,qBAAAA;AAA7C,GAAA,EACGD,QADH,CADF,CADF,CA3DF,CADF,CAAA;AAqED;;;;"}
1
+ {"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.js","../src/lib/dux/sdk/thunks.js","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.js","../src/lib/dux/sdk/reducers.js","../src/lib/dux/user/initialState.js","../src/lib/dux/user/reducers.js","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.ts","../src/lib/pubSub/index.ts","../src/hooks/useAppendDomNode.js","../src/lib/VoiceMessageProvider.tsx","../src/lib/hooks/useMarkAsReadScheduler.ts","../src/lib/Sendbird.tsx"],"sourcesContent":["export const INIT_SDK = 'INIT_SDK';\nexport const SET_SDK_LOADING = 'SET_SDK_LOADING';\nexport const RESET_SDK = 'RESET_SDK';\nexport const SDK_ERROR = 'SDK_ERROR';\n","import SendbirdChat from '@sendbird/chat';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\n\nimport {\n INIT_SDK,\n SET_SDK_LOADING,\n RESET_SDK,\n SDK_ERROR,\n} from './actionTypes';\nimport { INIT_USER, UPDATE_USER_INFO, RESET_USER } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\n\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}) => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk && sdk.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk,\n logger,\n}, dispatchers) => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n let sessionHandler = null;\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const params = {\n appId,\n modules: [\n new GroupChannelModule(),\n new OpenChannelModule(),\n ],\n };\n if (customApiHost) {\n params.customApiHost = customApiHost;\n }\n if (customWebSocketHost) {\n params.customWebSocketHost = customWebSocketHost;\n }\n const newSdk = SendbirdChat.init(params);\n if (configureSession && typeof configureSession === 'function') {\n sessionHandler = configureSession(newSdk);\n newSdk.setSessionHandler(sessionHandler);\n }\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo({\n nickname: nickname || user.nickname,\n profileUrl: profileUrl || user.profileUrl,\n }).then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n sdkDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","export default {\n initialized: false,\n loading: false,\n sdk: {},\n error: false,\n};\n","import * as sdkActions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case sdkActions.SET_SDK_LOADING:\n return {\n ...state,\n initialized: false,\n loading: action.payload,\n };\n case sdkActions.SDK_ERROR:\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n case sdkActions.INIT_SDK:\n return {\n sdk: action.payload,\n initialized: true,\n loading: false,\n error: false,\n };\n case sdkActions.RESET_SDK:\n return initialState;\n default:\n return state;\n }\n}\n","export default {\n initialized: false,\n loading: false,\n user: {},\n};\n","import * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_USER:\n return {\n initialized: true,\n loading: false,\n user: action.payload,\n };\n case actions.RESET_USER:\n return initialState;\n case actions.UPDATE_USER_INFO:\n return {\n ...state,\n user: action.payload,\n };\n default:\n return state;\n }\n}\n","import { ConnectionHandler } from '@sendbird/chat';\nimport { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n try {\n logger.warning('sdk changed', uniqueHandlerId);\n const handler = new ConnectionHandler();\n handler.onDisconnected = () => {\n logger.warning('onDisconnected', { isOnline });\n };\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n // workaround -> addConnectionHandler invalidates session handler\n // provided through configureSession\n if (sdk?.addConnectionHandler) {\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n } catch {\n //\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.connectionState !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n\nimport { ObjectValues } from \"../../utils/typeHelpers/objectValues\";\n\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n} as const;\nexport type LogLevel = ObjectValues<typeof LOG_LEVELS>;\n\nconst colorLog = (level: LogLevel): string => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\ninterface PrintLogProps {\n level: LogLevel;\n title: string;\n description?: string;\n}\nexport const printLog = ({\n level,\n title,\n description = '',\n}: PrintLogProps): void => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\ntype LoggerLogType = (title?: string, description?: string) => void;\ninterface LoggerInterface {\n info: LoggerLogType;\n error: LoggerLogType;\n warning: LoggerLogType;\n}\n\nconst noop = () => {/* noop */};\nexport const getDefaultLogger = (): LoggerInterface => ({\n info: noop,\n error: noop,\n warning: noop,\n});\n\nexport const LoggerFactory = (\n lvl: LogLevel,\n customInterface?: () => void,\n): LoggerInterface => {\n const logInterface = customInterface || printLog;\n const lvlArray: Array<LogLevel> = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl: LogLevel) => (title?: string, description?: string) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n\n// TODO: Make this to hook, useLogger\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\n\ninterface PubSubTypes {\n __getTopics: () => Record<string, string>;\n subscribe: (topic: string, listener: unknown) => { remove: () => void };\n publish: (topic: string, info: unknown) => void;\n}\n\nconst pubSubFactory = (): PubSubTypes => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n\nexport default pubSubFactory;\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import React from 'react';\nimport { VoicePlayerProvider } from '../hooks/VoicePlayer';\nimport { VoiceRecorderProvider } from '../hooks/VoiceRecorder';\n\nexport interface VoiceMessageProviderProps {\n children: React.ReactElement;\n isVoiceMessageEnabled?: boolean;\n}\n\nexport const VoiceMessageProvider = ({\n children,\n isVoiceMessageEnabled = true,\n}: VoiceMessageProviderProps): React.ReactElement => {\n if (!isVoiceMessageEnabled) {\n return (\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n );\n }\n return (\n <VoiceRecorderProvider>\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n </VoiceRecorderProvider>\n );\n};\n\nexport default VoiceMessageProvider;\n","import { GroupChannel } from \"@sendbird/chat/groupChannel\";\nimport { useEffect, useMemo } from \"react\";\nimport { Logger } from \"../SendbirdState\";\n\nexport type MarkAsReadSchedulerType = {\n push: (channel: GroupChannel) => void;\n clear: () => void;\n getQueue: () => GroupChannel[];\n};\n\nconst TIMEOUT = 5000;\n\nexport const schedulerFactory = (logger: Logger, timeout?: number): MarkAsReadSchedulerType => {\n let queue: GroupChannel[] = [];\n let interval = null;\n const push = (channel: GroupChannel) => {\n const channelPresent = queue.find((c) => c.url === channel.url);\n if (!channelPresent) {\n queue.push(channel)\n } else {\n logger.info('Channel: Mark as read already in queue', channel);\n }\n // start the interval if it's not already running\n if (interval) {\n return;\n }\n interval = setInterval(() => {\n if (queue.length === 0) {\n clearInterval(interval);\n interval = null;\n return;\n }\n const channel = queue.shift();\n if (channel) {\n try {\n channel.markAsRead();\n } catch (error) {\n logger.error('Channel: Mark as read failed', error);\n }\n }\n }, (timeout || TIMEOUT));\n };\n const clear = () => {\n queue = [];\n if (interval) {\n clearInterval(interval);\n interval = null;\n }\n };\n return {\n push,\n clear,\n getQueue: () => queue,\n };\n}\n\ninterface DynamicParams {\n isConnected: boolean;\n}\n\ninterface StaticParams {\n logger: Logger;\n}\n\nexport function useMarkAsReadScheduler({\n isConnected,\n}: DynamicParams, {\n logger,\n}: StaticParams): MarkAsReadSchedulerType {\n const markAsReadScheduler = useMemo(() => schedulerFactory(logger), []);\n\n useEffect(() => {\n // for simplicity, we clear the queue when the connection is lost\n if (!isConnected) {\n markAsReadScheduler.clear()\n return;\n }\n }, [isConnected]);\n\n return markAsReadScheduler;\n}\n","import './index.scss';\nimport './__experimental__typography.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { VoiceMessageProvider } from './VoiceMessageProvider';\nimport { LocalizationProvider } from './LocalizationContext';\nimport { MediaQueryProvider } from './MediaQueryContext';\nimport getStringSet from '../ui/Label/stringSet';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../utils/consts';\nimport { useMarkAsReadScheduler } from './hooks/useMarkAsReadScheduler';\n\nexport type UserListQueryType = {\n hasNext?: boolean;\n next: () => Promise<Array<User>>;\n}\n\ninterface VoiceRecordOptions {\n maxRecordingTime?: number;\n minRecordingTime?: number;\n}\n\nexport interface ImageCompressionOptions {\n compressionRate?: number;\n resizingWidth?: number | string;\n resizingHeight?: number | string;\n}\n\nexport interface SendbirdConfig {\n logLevel?: string | Array<string>;\n pubSub?: () => void;// TODO: Define pubSub type and apply it here\n userMention?: {\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n };\n isREMUnitEnabled?: boolean;\n}\n\nexport interface SendbirdProviderProps {\n appId: string;\n userId: string;\n children: React.ReactElement;\n accessToken?: string;\n customApiHost?: string;\n customWebSocketHost?: string;\n configureSession?: () => void;\n theme?: 'light' | 'dark';\n config?: SendbirdConfig;\n nickname?: string;\n colorSet?: Record<string, string>;\n stringSet?: Record<string, string>;\n replyType?: 'NONE' | 'QUOTE_REPLY' | 'THREAD';\n dateLocale?: Locale;\n profileUrl?: string;\n voiceRecord?: VoiceRecordOptions;\n userListQuery?: UserListQueryType;\n imageCompression?: ImageCompressionOptions;\n allowProfileEdit?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableUserProfile?: boolean;\n isVoiceMessageEnabled?: boolean;\n disableMarkAsDelivered?: boolean;\n isTypingIndicatorEnabledOnChannelList?: boolean;\n isMessageReceiptStatusEnabledOnChannelList?: boolean;\n renderUserProfile?: () => React.ReactElement;\n onUserProfileMessage?: () => void;\n}\n\nconst Sendbird = ({\n appId,\n userId,\n children,\n accessToken = '',\n customApiHost = '',\n customWebSocketHost = '',\n configureSession = null,\n theme = 'light',\n config = {},\n nickname = '',\n colorSet = null,\n stringSet = null,\n replyType = 'NONE',\n dateLocale = null,\n profileUrl = '',\n voiceRecord = { maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX, minRecordingTime: VOICE_RECORDER_DEFAULT_MIN },\n userListQuery = null,\n imageCompression = {},\n allowProfileEdit = false,\n isMentionEnabled = false,\n isReactionEnabled = true,\n disableUserProfile = false,\n isVoiceMessageEnabled = true,\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n renderUserProfile = null,\n onUserProfileMessage = null,\n}: SendbirdProviderProps): React.ReactElement => {\n const mediaQueryBreakPoint = false;\n\n const {\n logLevel = '',\n userMention = {},\n isREMUnitEnabled = false,\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub] = useState(pubSubFactory());\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n\n useEffect(() => {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-experimental__rem__units');\n if (isREMUnitEnabled) {\n body.classList.add('sendbird-experimental__rem__units');\n }\n }, [isREMUnitEnabled]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const markAsReadScheduler = useMarkAsReadScheduler({ isConnected: isOnline }, { logger });\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n onUserProfileMessage,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression: {\n compressionRate: 0.7,\n ...imageCompression,\n },\n isReactionEnabled,\n isMentionEnabled: isMentionEnabled || false,\n isVoiceMessageEnabled,\n voiceRecord,\n userMention: {\n maxMentionCount: userMention?.maxMentionCount || 10,\n maxSuggestionCount: userMention?.maxSuggestionCount || 15,\n },\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n replyType,\n markAsReadScheduler,\n },\n }}\n >\n <MediaQueryProvider logger={logger} mediaQueryBreakPoint={mediaQueryBreakPoint}>\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n <VoiceMessageProvider isVoiceMessageEnabled={isVoiceMessageEnabled}>\n {children}\n </VoiceMessageProvider>\n </LocalizationProvider>\n </MediaQueryProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nexport default Sendbird;\n"],"names":["INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","APP_VERSION_STRING","disconnectSdk","_ref","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","RESET_USER","finally","handleConnection","_ref2","dispatchers","userId","appId","nickname","profileUrl","accessToken","configureSession","customApiHost","customWebSocketHost","logger","info","sessionHandler","params","modules","GroupChannelModule","OpenChannelModule","newSdk","SendbirdChat","init","setSessionHandler","addExtension","connectCbSucess","user","INIT_USER","isTextuallyNull","updateCurrentUserInfo","namedUser","UPDATE_USER_INFO","connectCbError","e","error","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","__assign","initialized","loading","reducer","state","action","sdkActions","_objectSpread","initialState","actions","useConnectionStatus","isOnline","setIsOnline","useState","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onDisconnected","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","_unused","removeConnectionHandler","_unused2","tryReconnect","connectionState","_unused3","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","_a","title","_b","description","console","log","concat","Date","toISOString","noop","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","pubSubFactory","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","arguments","length","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","VoiceMessageProvider","children","isVoiceMessageEnabled","React","VoicePlayerProvider","VoiceRecorderProvider","TIMEOUT","schedulerFactory","timeout","queue","interval","channel","channelPresent","find","c","url","setInterval","clearInterval","shift","markAsRead","clear","getQueue","useMarkAsReadScheduler","isConnected","markAsReadScheduler","useMemo","Sendbird","_c","_d","_e","_f","theme","_g","config","_h","_j","colorSet","_k","stringSet","_l","replyType","_m","dateLocale","_o","_p","voiceRecord","maxRecordingTime","VOICE_RECORDER_DEFAULT_MAX","minRecordingTime","VOICE_RECORDER_DEFAULT_MIN","_q","userListQuery","_r","imageCompression","_s","allowProfileEdit","_t","isMentionEnabled","_u","isReactionEnabled","_v","disableUserProfile","_w","_x","disableMarkAsDelivered","_y","isTypingIndicatorEnabledOnChannelList","_z","isMessageReceiptStatusEnabledOnChannelList","_0","renderUserProfile","_1","onUserProfileMessage","mediaQueryBreakPoint","_2","logLevel","_3","userMention","_4","isREMUnitEnabled","_5","setLogger","pubSub","_6","useReducer","sdkReducers","sdkInitialState","sdkStore","_7","userReducers","userInitialState","userStore","_8","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","getStringSet","SendbirdSdkContext","Provider","value","stores","compressionRate","maxMentionCount","maxSuggestionCount","MediaQueryProvider","LocalizationProvider"],"mappings":"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"}