@sendbird/uikit-react-native 2.0.3 → 2.2.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 (677) hide show
  1. package/README.md +2 -2
  2. package/lib/commonjs/components/ChannelCover.js +22 -1
  3. package/lib/commonjs/components/ChannelCover.js.map +1 -1
  4. package/lib/commonjs/components/ChatFlatList.js +2 -1
  5. package/lib/commonjs/components/ChatFlatList.js.map +1 -1
  6. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js +11 -6
  7. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
  8. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js +12 -2
  9. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
  10. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js +25 -10
  11. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
  12. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js +9 -2
  13. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
  14. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js +86 -10
  15. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
  16. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +99 -14
  17. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
  18. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js.map +1 -1
  19. package/lib/commonjs/components/MessageRenderer/index.js +23 -4
  20. package/lib/commonjs/components/MessageRenderer/index.js.map +1 -1
  21. package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js +150 -0
  22. package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -0
  23. package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js +135 -0
  24. package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js.map +1 -0
  25. package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js +87 -0
  26. package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js.map +1 -0
  27. package/lib/commonjs/components/ReactionAddons/index.js +19 -0
  28. package/lib/commonjs/components/ReactionAddons/index.js.map +1 -0
  29. package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js +150 -0
  30. package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -0
  31. package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +276 -0
  32. package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -0
  33. package/lib/commonjs/components/ReactionBottomSheets/index.js +19 -0
  34. package/lib/commonjs/components/ReactionBottomSheets/index.js.map +1 -0
  35. package/lib/commonjs/components/TypedPlaceholder.js +2 -2
  36. package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
  37. package/lib/commonjs/components/UserActionBar.js +7 -4
  38. package/lib/commonjs/components/UserActionBar.js.map +1 -1
  39. package/lib/commonjs/constants.js +3 -1
  40. package/lib/commonjs/constants.js.map +1 -1
  41. package/lib/commonjs/containers/GroupChannelPreviewContainer.js +9 -1
  42. package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
  43. package/lib/commonjs/containers/SendbirdUIKitContainer.js +130 -83
  44. package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
  45. package/lib/commonjs/contexts/{Localization.js → LocalizationCtx.js} +1 -1
  46. package/lib/commonjs/contexts/LocalizationCtx.js.map +1 -0
  47. package/lib/commonjs/contexts/{PlatformService.js → PlatformServiceCtx.js} +1 -1
  48. package/lib/commonjs/contexts/PlatformServiceCtx.js.map +1 -0
  49. package/lib/commonjs/contexts/ReactionCtx.js +107 -0
  50. package/lib/commonjs/contexts/ReactionCtx.js.map +1 -0
  51. package/lib/commonjs/contexts/{SendbirdChat.js → SendbirdChatCtx.js} +21 -7
  52. package/lib/commonjs/contexts/SendbirdChatCtx.js.map +1 -0
  53. package/lib/commonjs/contexts/UserProfileCtx.js +125 -0
  54. package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -0
  55. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js +34 -36
  56. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  57. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js +31 -12
  58. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  59. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js +129 -35
  60. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  61. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +31 -12
  62. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
  63. package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +210 -0
  64. package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -0
  65. package/lib/commonjs/domain/groupChannel/index.js +8 -0
  66. package/lib/commonjs/domain/groupChannel/index.js.map +1 -1
  67. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js +4 -0
  68. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
  69. package/lib/commonjs/domain/groupChannel/module/moduleContext.js +4 -4
  70. package/lib/commonjs/domain/groupChannel/module/moduleContext.js.map +1 -1
  71. package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
  72. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js +39 -0
  73. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -0
  74. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +54 -0
  75. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -0
  76. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js +34 -0
  77. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -0
  78. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +38 -0
  79. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -0
  80. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js +34 -0
  81. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -0
  82. package/lib/commonjs/domain/groupChannelBannedUsers/index.js +62 -0
  83. package/lib/commonjs/domain/groupChannelBannedUsers/index.js.map +1 -0
  84. package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +45 -0
  85. package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -0
  86. package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js +45 -0
  87. package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -0
  88. package/lib/commonjs/domain/groupChannelBannedUsers/types.js +6 -0
  89. package/lib/commonjs/domain/groupChannelBannedUsers/types.js.map +1 -0
  90. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +2 -1
  91. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  92. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js +32 -30
  93. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  94. package/lib/commonjs/domain/groupChannelList/types.js.map +1 -1
  95. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +39 -0
  96. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -0
  97. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +103 -0
  98. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -0
  99. package/lib/commonjs/domain/groupChannelModeration/index.js +46 -0
  100. package/lib/commonjs/domain/groupChannelModeration/index.js.map +1 -0
  101. package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +33 -0
  102. package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -0
  103. package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js +46 -0
  104. package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js.map +1 -0
  105. package/lib/commonjs/domain/groupChannelModeration/types.js +6 -0
  106. package/lib/commonjs/domain/groupChannelModeration/types.js.map +1 -0
  107. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +39 -0
  108. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -0
  109. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +52 -0
  110. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -0
  111. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js +34 -0
  112. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -0
  113. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +38 -0
  114. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -0
  115. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js +34 -0
  116. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -0
  117. package/lib/commonjs/domain/groupChannelMutedMembers/index.js +70 -0
  118. package/lib/commonjs/domain/groupChannelMutedMembers/index.js.map +1 -0
  119. package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +45 -0
  120. package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -0
  121. package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js +45 -0
  122. package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -0
  123. package/lib/commonjs/domain/groupChannelMutedMembers/types.js +6 -0
  124. package/lib/commonjs/domain/groupChannelMutedMembers/types.js.map +1 -0
  125. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +39 -0
  126. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -0
  127. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +140 -0
  128. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -0
  129. package/lib/commonjs/domain/groupChannelNotifications/index.js +46 -0
  130. package/lib/commonjs/domain/groupChannelNotifications/index.js.map +1 -0
  131. package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +33 -0
  132. package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -0
  133. package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js +45 -0
  134. package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js.map +1 -0
  135. package/lib/commonjs/domain/groupChannelNotifications/types.js +6 -0
  136. package/lib/commonjs/domain/groupChannelNotifications/types.js.map +1 -0
  137. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +44 -0
  138. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -0
  139. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +52 -0
  140. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -0
  141. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js +34 -0
  142. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -0
  143. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +38 -0
  144. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -0
  145. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js +34 -0
  146. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -0
  147. package/lib/commonjs/domain/groupChannelOperators/index.js +70 -0
  148. package/lib/commonjs/domain/groupChannelOperators/index.js.map +1 -0
  149. package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +45 -0
  150. package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -0
  151. package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js +45 -0
  152. package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js.map +1 -0
  153. package/lib/commonjs/domain/groupChannelOperators/types.js +6 -0
  154. package/lib/commonjs/domain/groupChannelOperators/types.js.map +1 -0
  155. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -8
  156. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
  157. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +60 -6
  158. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  159. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +9 -14
  160. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
  161. package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -1
  162. package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -1
  163. package/lib/commonjs/domain/userList/component/UserListList.js +4 -1
  164. package/lib/commonjs/domain/userList/component/UserListList.js.map +1 -1
  165. package/lib/commonjs/domain/userList/component/UserListStatusError.js +2 -2
  166. package/lib/commonjs/domain/userList/component/UserListStatusError.js.map +1 -1
  167. package/lib/commonjs/domain/userList/module/createUserListModule.js.map +1 -1
  168. package/lib/commonjs/domain/userList/types.js.map +1 -1
  169. package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js +101 -0
  170. package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js.map +1 -0
  171. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +9 -25
  172. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
  173. package/lib/commonjs/fragments/createGroupChannelFragment.js +22 -8
  174. package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
  175. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js +21 -37
  176. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -1
  177. package/lib/commonjs/fragments/createGroupChannelListFragment.js +3 -11
  178. package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
  179. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +95 -51
  180. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -1
  181. package/lib/commonjs/fragments/createGroupChannelModerationFragment.js +68 -0
  182. package/lib/commonjs/fragments/createGroupChannelModerationFragment.js.map +1 -0
  183. package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js +116 -0
  184. package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js.map +1 -0
  185. package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js +34 -0
  186. package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js.map +1 -0
  187. package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js +129 -0
  188. package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js.map +1 -0
  189. package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js +114 -0
  190. package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -0
  191. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +5 -1
  192. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  193. package/lib/commonjs/hooks/useConnection.js +7 -0
  194. package/lib/commonjs/hooks/useConnection.js.map +1 -1
  195. package/lib/commonjs/hooks/useContext.js +27 -7
  196. package/lib/commonjs/hooks/useContext.js.map +1 -1
  197. package/lib/commonjs/hooks/useKeyboardStatus.js +93 -0
  198. package/lib/commonjs/hooks/useKeyboardStatus.js.map +1 -0
  199. package/lib/commonjs/hooks/useMentionSuggestion.js +110 -0
  200. package/lib/commonjs/hooks/useMentionSuggestion.js.map +1 -0
  201. package/lib/commonjs/hooks/useMentionTextInput.js +139 -0
  202. package/lib/commonjs/hooks/useMentionTextInput.js.map +1 -0
  203. package/lib/commonjs/index.js +165 -42
  204. package/lib/commonjs/index.js.map +1 -1
  205. package/lib/commonjs/libs/EmojiManager.js +100 -0
  206. package/lib/commonjs/libs/EmojiManager.js.map +1 -0
  207. package/lib/commonjs/libs/MentionConfig.js +47 -0
  208. package/lib/commonjs/libs/MentionConfig.js.map +1 -0
  209. package/lib/commonjs/libs/MentionManager.js +235 -0
  210. package/lib/commonjs/libs/MentionManager.js.map +1 -0
  211. package/lib/commonjs/localization/StringSet.type.js +77 -16
  212. package/lib/commonjs/localization/StringSet.type.js.map +1 -1
  213. package/lib/commonjs/platform/createFileService.native.js.map +1 -1
  214. package/lib/commonjs/types.js.map +1 -1
  215. package/lib/commonjs/utils/common.js +19 -0
  216. package/lib/commonjs/utils/common.js.map +1 -0
  217. package/lib/commonjs/version.js +1 -1
  218. package/lib/commonjs/version.js.map +1 -1
  219. package/lib/module/components/ChannelCover.js +22 -2
  220. package/lib/module/components/ChannelCover.js.map +1 -1
  221. package/lib/module/components/ChatFlatList.js +3 -2
  222. package/lib/module/components/ChatFlatList.js.map +1 -1
  223. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js +11 -6
  224. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
  225. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js +12 -2
  226. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
  227. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js +25 -10
  228. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
  229. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js +9 -3
  230. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
  231. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js +86 -12
  232. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
  233. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +101 -17
  234. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
  235. package/lib/module/components/MessageRenderer/UserMessage/index.js.map +1 -1
  236. package/lib/module/components/MessageRenderer/index.js +22 -5
  237. package/lib/module/components/MessageRenderer/index.js.map +1 -1
  238. package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js +132 -0
  239. package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -0
  240. package/lib/module/components/ReactionAddons/MessageReactionAddon.js +118 -0
  241. package/lib/module/components/ReactionAddons/MessageReactionAddon.js.map +1 -0
  242. package/lib/module/components/ReactionAddons/ReactionRoundedButton.js +74 -0
  243. package/lib/module/components/ReactionAddons/ReactionRoundedButton.js.map +1 -0
  244. package/lib/module/components/ReactionAddons/index.js +7 -0
  245. package/lib/module/components/ReactionAddons/index.js.map +1 -0
  246. package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js +135 -0
  247. package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -0
  248. package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +259 -0
  249. package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -0
  250. package/lib/module/components/ReactionBottomSheets/index.js +7 -0
  251. package/lib/module/components/ReactionBottomSheets/index.js.map +1 -0
  252. package/lib/module/components/TypedPlaceholder.js +2 -2
  253. package/lib/module/components/TypedPlaceholder.js.map +1 -1
  254. package/lib/module/components/UserActionBar.js +8 -5
  255. package/lib/module/components/UserActionBar.js.map +1 -1
  256. package/lib/module/constants.js +1 -0
  257. package/lib/module/constants.js.map +1 -1
  258. package/lib/module/containers/GroupChannelPreviewContainer.js +9 -1
  259. package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
  260. package/lib/module/containers/SendbirdUIKitContainer.js +123 -81
  261. package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
  262. package/lib/module/contexts/{Localization.js → LocalizationCtx.js} +1 -1
  263. package/lib/module/contexts/LocalizationCtx.js.map +1 -0
  264. package/lib/module/contexts/{PlatformService.js → PlatformServiceCtx.js} +1 -1
  265. package/lib/module/contexts/PlatformServiceCtx.js.map +1 -0
  266. package/lib/module/contexts/ReactionCtx.js +85 -0
  267. package/lib/module/contexts/ReactionCtx.js.map +1 -0
  268. package/lib/module/contexts/{SendbirdChat.js → SendbirdChatCtx.js} +21 -7
  269. package/lib/module/contexts/SendbirdChatCtx.js.map +1 -0
  270. package/lib/module/contexts/UserProfileCtx.js +101 -0
  271. package/lib/module/contexts/UserProfileCtx.js.map +1 -0
  272. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js +35 -38
  273. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  274. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js +27 -14
  275. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  276. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js +126 -37
  277. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  278. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +32 -14
  279. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
  280. package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +188 -0
  281. package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -0
  282. package/lib/module/domain/groupChannel/index.js +1 -0
  283. package/lib/module/domain/groupChannel/index.js.map +1 -1
  284. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js +3 -0
  285. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
  286. package/lib/module/domain/groupChannel/module/moduleContext.js +4 -4
  287. package/lib/module/domain/groupChannel/module/moduleContext.js.map +1 -1
  288. package/lib/module/domain/groupChannel/types.js.map +1 -1
  289. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js +25 -0
  290. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -0
  291. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +41 -0
  292. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -0
  293. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js +21 -0
  294. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -0
  295. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +25 -0
  296. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -0
  297. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js +21 -0
  298. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -0
  299. package/lib/module/domain/groupChannelBannedUsers/index.js +7 -0
  300. package/lib/module/domain/groupChannelBannedUsers/index.js.map +1 -0
  301. package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +30 -0
  302. package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -0
  303. package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js +25 -0
  304. package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -0
  305. package/lib/module/domain/groupChannelBannedUsers/types.js +2 -0
  306. package/lib/module/domain/groupChannelBannedUsers/types.js.map +1 -0
  307. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +3 -2
  308. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  309. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js +34 -33
  310. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  311. package/lib/module/domain/groupChannelList/types.js.map +1 -1
  312. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +25 -0
  313. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -0
  314. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +87 -0
  315. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -0
  316. package/lib/module/domain/groupChannelModeration/index.js +5 -0
  317. package/lib/module/domain/groupChannelModeration/index.js.map +1 -0
  318. package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +21 -0
  319. package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -0
  320. package/lib/module/domain/groupChannelModeration/module/moduleContext.js +26 -0
  321. package/lib/module/domain/groupChannelModeration/module/moduleContext.js.map +1 -0
  322. package/lib/module/domain/groupChannelModeration/types.js +2 -0
  323. package/lib/module/domain/groupChannelModeration/types.js.map +1 -0
  324. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +25 -0
  325. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -0
  326. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +39 -0
  327. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -0
  328. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js +21 -0
  329. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -0
  330. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +25 -0
  331. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -0
  332. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js +21 -0
  333. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -0
  334. package/lib/module/domain/groupChannelMutedMembers/index.js +8 -0
  335. package/lib/module/domain/groupChannelMutedMembers/index.js.map +1 -0
  336. package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +30 -0
  337. package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -0
  338. package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js +25 -0
  339. package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -0
  340. package/lib/module/domain/groupChannelMutedMembers/types.js +2 -0
  341. package/lib/module/domain/groupChannelMutedMembers/types.js.map +1 -0
  342. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +25 -0
  343. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -0
  344. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +122 -0
  345. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -0
  346. package/lib/module/domain/groupChannelNotifications/index.js +5 -0
  347. package/lib/module/domain/groupChannelNotifications/index.js.map +1 -0
  348. package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +21 -0
  349. package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -0
  350. package/lib/module/domain/groupChannelNotifications/module/moduleContext.js +25 -0
  351. package/lib/module/domain/groupChannelNotifications/module/moduleContext.js.map +1 -0
  352. package/lib/module/domain/groupChannelNotifications/types.js +2 -0
  353. package/lib/module/domain/groupChannelNotifications/types.js.map +1 -0
  354. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +30 -0
  355. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -0
  356. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +39 -0
  357. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -0
  358. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js +21 -0
  359. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -0
  360. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +25 -0
  361. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -0
  362. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js +21 -0
  363. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -0
  364. package/lib/module/domain/groupChannelOperators/index.js +8 -0
  365. package/lib/module/domain/groupChannelOperators/index.js.map +1 -0
  366. package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +30 -0
  367. package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -0
  368. package/lib/module/domain/groupChannelOperators/module/moduleContext.js +25 -0
  369. package/lib/module/domain/groupChannelOperators/module/moduleContext.js.map +1 -0
  370. package/lib/module/domain/groupChannelOperators/types.js +2 -0
  371. package/lib/module/domain/groupChannelOperators/types.js.map +1 -0
  372. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +2 -8
  373. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
  374. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +57 -6
  375. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  376. package/lib/module/domain/groupChannelSettings/module/moduleContext.js +10 -15
  377. package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
  378. package/lib/module/domain/groupChannelSettings/types.js.map +1 -1
  379. package/lib/module/domain/groupChannelUserList/types.js.map +1 -1
  380. package/lib/module/domain/userList/component/UserListList.js +3 -1
  381. package/lib/module/domain/userList/component/UserListList.js.map +1 -1
  382. package/lib/module/domain/userList/component/UserListStatusError.js +2 -2
  383. package/lib/module/domain/userList/component/UserListStatusError.js.map +1 -1
  384. package/lib/module/domain/userList/module/createUserListModule.js.map +1 -1
  385. package/lib/module/domain/userList/types.js.map +1 -1
  386. package/lib/module/fragments/createGroupChannelBannedUsersFragment.js +84 -0
  387. package/lib/module/fragments/createGroupChannelBannedUsersFragment.js.map +1 -0
  388. package/lib/module/fragments/createGroupChannelCreateFragment.js +10 -26
  389. package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
  390. package/lib/module/fragments/createGroupChannelFragment.js +22 -8
  391. package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
  392. package/lib/module/fragments/createGroupChannelInviteFragment.js +22 -37
  393. package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -1
  394. package/lib/module/fragments/createGroupChannelListFragment.js +4 -11
  395. package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
  396. package/lib/module/fragments/createGroupChannelMembersFragment.js +99 -56
  397. package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -1
  398. package/lib/module/fragments/createGroupChannelModerationFragment.js +53 -0
  399. package/lib/module/fragments/createGroupChannelModerationFragment.js.map +1 -0
  400. package/lib/module/fragments/createGroupChannelMutedMembersFragment.js +98 -0
  401. package/lib/module/fragments/createGroupChannelMutedMembersFragment.js.map +1 -0
  402. package/lib/module/fragments/createGroupChannelNotificationsFragment.js +22 -0
  403. package/lib/module/fragments/createGroupChannelNotificationsFragment.js.map +1 -0
  404. package/lib/module/fragments/createGroupChannelOperatorsFragment.js +111 -0
  405. package/lib/module/fragments/createGroupChannelOperatorsFragment.js.map +1 -0
  406. package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js +94 -0
  407. package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -0
  408. package/lib/module/fragments/createGroupChannelSettingsFragment.js +5 -1
  409. package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  410. package/lib/module/hooks/useConnection.js +7 -0
  411. package/lib/module/hooks/useConnection.js.map +1 -1
  412. package/lib/module/hooks/useContext.js +15 -3
  413. package/lib/module/hooks/useContext.js.map +1 -1
  414. package/lib/module/hooks/useKeyboardStatus.js +75 -0
  415. package/lib/module/hooks/useKeyboardStatus.js.map +1 -0
  416. package/lib/module/hooks/useMentionSuggestion.js +100 -0
  417. package/lib/module/hooks/useMentionSuggestion.js.map +1 -0
  418. package/lib/module/hooks/useMentionTextInput.js +128 -0
  419. package/lib/module/hooks/useMentionTextInput.js.map +1 -0
  420. package/lib/module/index.js +17 -6
  421. package/lib/module/index.js.map +1 -1
  422. package/lib/module/libs/EmojiManager.js +90 -0
  423. package/lib/module/libs/EmojiManager.js.map +1 -0
  424. package/lib/module/libs/MentionConfig.js +39 -0
  425. package/lib/module/libs/MentionConfig.js.map +1 -0
  426. package/lib/module/libs/MentionManager.js +223 -0
  427. package/lib/module/libs/MentionManager.js.map +1 -0
  428. package/lib/module/localization/StringSet.type.js +78 -17
  429. package/lib/module/localization/StringSet.type.js.map +1 -1
  430. package/lib/module/platform/createFileService.native.js.map +1 -1
  431. package/lib/module/types.js.map +1 -1
  432. package/lib/module/utils/common.js +7 -0
  433. package/lib/module/utils/common.js.map +1 -0
  434. package/lib/module/version.js +1 -1
  435. package/lib/module/version.js.map +1 -1
  436. package/lib/typescript/__template__/types.d.ts +3 -3
  437. package/lib/typescript/src/components/ChannelCover.d.ts +2 -2
  438. package/lib/typescript/src/components/ChatFlatList.d.ts +1 -1
  439. package/lib/typescript/src/components/FileViewer.d.ts +1 -1
  440. package/lib/typescript/src/components/MessageRenderer/AdminMessage/index.d.ts +1 -1
  441. package/lib/typescript/src/components/MessageRenderer/FileMessage/BaseFileMessage.d.ts +2 -2
  442. package/lib/typescript/src/components/MessageRenderer/FileMessage/ImageFileMessage.d.ts +1 -1
  443. package/lib/typescript/src/components/MessageRenderer/FileMessage/VideoFileMessage.d.ts +1 -1
  444. package/lib/typescript/src/components/MessageRenderer/FileMessage/index.d.ts +11 -2
  445. package/lib/typescript/src/components/MessageRenderer/MessageDateSeparator.d.ts +1 -1
  446. package/lib/typescript/src/components/MessageRenderer/MessageIncomingAvatar.d.ts +1 -1
  447. package/lib/typescript/src/components/MessageRenderer/MessageIncomingSenderName.d.ts +1 -1
  448. package/lib/typescript/src/components/MessageRenderer/MessageOutgoingStatus.d.ts +1 -1
  449. package/lib/typescript/src/components/MessageRenderer/MessageTime.d.ts +1 -1
  450. package/lib/typescript/src/components/MessageRenderer/UnknownMessage/index.d.ts +1 -1
  451. package/lib/typescript/src/components/MessageRenderer/UserMessage/BaseUserMessage.d.ts +1 -1
  452. package/lib/typescript/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.d.ts +2 -2
  453. package/lib/typescript/src/components/MessageRenderer/UserMessage/index.d.ts +4 -1
  454. package/lib/typescript/src/components/MessageRenderer/index.d.ts +4 -3
  455. package/lib/typescript/src/components/NewMessagesButton.d.ts +1 -1
  456. package/lib/typescript/src/components/ReactionAddons/BottomSheetReactionAddon.d.ts +8 -0
  457. package/lib/typescript/src/components/ReactionAddons/MessageReactionAddon.d.ts +6 -0
  458. package/lib/typescript/src/components/ReactionAddons/ReactionRoundedButton.d.ts +14 -0
  459. package/lib/typescript/src/components/ReactionAddons/index.d.ts +11 -0
  460. package/lib/typescript/src/components/ReactionBottomSheets/ReactionListBottomSheet.d.ts +3 -0
  461. package/lib/typescript/src/components/ReactionBottomSheets/ReactionUserListBottomSheet.d.ts +3 -0
  462. package/lib/typescript/src/components/ReactionBottomSheets/index.d.ts +20 -0
  463. package/lib/typescript/src/components/ScrollToBottomButton.d.ts +1 -1
  464. package/lib/typescript/src/components/StatusComposition.d.ts +1 -1
  465. package/lib/typescript/src/components/TypedPlaceholder.d.ts +2 -2
  466. package/lib/typescript/src/components/UserActionBar.d.ts +5 -3
  467. package/lib/typescript/src/components/UserSelectableBar.d.ts +1 -1
  468. package/lib/typescript/src/constants.d.ts +1 -0
  469. package/lib/typescript/src/containers/GroupChannelPreviewContainer.d.ts +1 -1
  470. package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +19 -8
  471. package/lib/typescript/src/contexts/{Localization.d.ts → LocalizationCtx.d.ts} +2 -2
  472. package/lib/typescript/src/contexts/{PlatformService.d.ts → PlatformServiceCtx.d.ts} +1 -1
  473. package/lib/typescript/src/contexts/ReactionCtx.d.ts +18 -0
  474. package/lib/typescript/src/contexts/{SendbirdChat.d.ts → SendbirdChatCtx.d.ts} +17 -5
  475. package/lib/typescript/src/contexts/UserProfileCtx.d.ts +15 -0
  476. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +36 -7
  477. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +34 -5
  478. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +20 -3
  479. package/lib/typescript/src/domain/groupChannel/component/GroupChannelSuggestedMentionList.d.ts +3 -0
  480. package/lib/typescript/src/domain/groupChannel/index.d.ts +1 -0
  481. package/lib/typescript/src/domain/groupChannel/module/createGroupChannelModule.d.ts +1 -1
  482. package/lib/typescript/src/domain/groupChannel/types.d.ts +25 -8
  483. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.d.ts +3 -0
  484. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.d.ts +3 -0
  485. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.d.ts +2 -0
  486. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.d.ts +3 -0
  487. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.d.ts +2 -0
  488. package/lib/typescript/src/domain/groupChannelBannedUsers/index.d.ts +6 -0
  489. package/lib/typescript/src/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.d.ts +3 -0
  490. package/lib/typescript/src/domain/groupChannelBannedUsers/module/moduleContext.d.ts +3 -0
  491. package/lib/typescript/src/domain/groupChannelBannedUsers/types.d.ts +47 -0
  492. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListTypeSelector.d.ts +1 -1
  493. package/lib/typescript/src/domain/groupChannelList/types.d.ts +5 -11
  494. package/lib/typescript/src/domain/groupChannelModeration/component/GroupChannelModerationHeader.d.ts +3 -0
  495. package/lib/typescript/src/domain/groupChannelModeration/component/GroupChannelModerationMenu.d.ts +3 -0
  496. package/lib/typescript/src/domain/groupChannelModeration/index.d.ts +4 -0
  497. package/lib/typescript/src/domain/groupChannelModeration/module/createGroupChannelModerationModule.d.ts +3 -0
  498. package/lib/typescript/src/domain/groupChannelModeration/module/moduleContext.d.ts +3 -0
  499. package/lib/typescript/src/domain/groupChannelModeration/types.d.ts +43 -0
  500. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.d.ts +3 -0
  501. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.d.ts +3 -0
  502. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.d.ts +2 -0
  503. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.d.ts +3 -0
  504. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.d.ts +2 -0
  505. package/lib/typescript/src/domain/groupChannelMutedMembers/index.d.ts +7 -0
  506. package/lib/typescript/src/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.d.ts +3 -0
  507. package/lib/typescript/src/domain/groupChannelMutedMembers/module/moduleContext.d.ts +3 -0
  508. package/lib/typescript/src/domain/groupChannelMutedMembers/types.d.ts +47 -0
  509. package/lib/typescript/src/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.d.ts +3 -0
  510. package/lib/typescript/src/domain/groupChannelNotifications/component/GroupChannelNotificationsView.d.ts +2 -0
  511. package/lib/typescript/src/domain/groupChannelNotifications/index.d.ts +4 -0
  512. package/lib/typescript/src/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.d.ts +3 -0
  513. package/lib/typescript/src/domain/groupChannelNotifications/module/moduleContext.d.ts +3 -0
  514. package/lib/typescript/src/domain/groupChannelNotifications/types.d.ts +33 -0
  515. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.d.ts +3 -0
  516. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.d.ts +3 -0
  517. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.d.ts +2 -0
  518. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.d.ts +3 -0
  519. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.d.ts +2 -0
  520. package/lib/typescript/src/domain/groupChannelOperators/index.d.ts +7 -0
  521. package/lib/typescript/src/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.d.ts +3 -0
  522. package/lib/typescript/src/domain/groupChannelOperators/module/moduleContext.d.ts +3 -0
  523. package/lib/typescript/src/domain/groupChannelOperators/types.d.ts +49 -0
  524. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.d.ts +1 -1
  525. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.d.ts +1 -1
  526. package/lib/typescript/src/domain/groupChannelSettings/types.d.ts +5 -1
  527. package/lib/typescript/src/domain/groupChannelUserList/types.d.ts +17 -11
  528. package/lib/typescript/src/domain/userList/component/UserListList.d.ts +2 -1
  529. package/lib/typescript/src/domain/userList/component/UserListStatusError.d.ts +2 -2
  530. package/lib/typescript/src/domain/userList/module/createUserListModule.d.ts +2 -1
  531. package/lib/typescript/src/domain/userList/types.d.ts +4 -3
  532. package/lib/typescript/src/fragments/createGroupChannelBannedUsersFragment.d.ts +3 -0
  533. package/lib/typescript/src/fragments/createGroupChannelCreateFragment.d.ts +2 -1
  534. package/lib/typescript/src/fragments/createGroupChannelInviteFragment.d.ts +2 -1
  535. package/lib/typescript/src/fragments/createGroupChannelModerationFragment.d.ts +3 -0
  536. package/lib/typescript/src/fragments/createGroupChannelMutedMembersFragment.d.ts +3 -0
  537. package/lib/typescript/src/fragments/createGroupChannelNotificationsFragment.d.ts +3 -0
  538. package/lib/typescript/src/fragments/createGroupChannelOperatorsFragment.d.ts +3 -0
  539. package/lib/typescript/src/fragments/createGroupChannelRegisterOperatorFragment.d.ts +5 -0
  540. package/lib/typescript/src/hooks/useConnection.d.ts +1 -1
  541. package/lib/typescript/src/hooks/useContext.d.ts +7 -1
  542. package/lib/typescript/src/hooks/useKeyboardStatus.d.ts +6 -0
  543. package/lib/typescript/src/hooks/useMentionSuggestion.d.ts +17 -0
  544. package/lib/typescript/src/hooks/useMentionTextInput.d.ts +18 -0
  545. package/lib/typescript/src/index.d.ts +16 -5
  546. package/lib/typescript/src/libs/EmojiManager.d.ts +16 -0
  547. package/lib/typescript/src/libs/MentionConfig.d.ts +24 -0
  548. package/lib/typescript/src/libs/MentionManager.d.ts +61 -0
  549. package/lib/typescript/src/localization/StringSet.type.d.ts +63 -9
  550. package/lib/typescript/src/platform/createFileService.native.d.ts +1 -1
  551. package/lib/typescript/src/platform/createMediaService.expo.d.ts +1 -1
  552. package/lib/typescript/src/platform/createMediaService.native.d.ts +1 -1
  553. package/lib/typescript/src/platform/dynamicModule.d.ts +1 -1
  554. package/lib/typescript/src/platform/types.d.ts +5 -5
  555. package/lib/typescript/src/types.d.ts +13 -4
  556. package/lib/typescript/src/utils/common.d.ts +1 -0
  557. package/lib/typescript/src/version.d.ts +1 -1
  558. package/package.json +11 -11
  559. package/src/components/ChannelCover.tsx +23 -3
  560. package/src/components/ChatFlatList.tsx +2 -1
  561. package/src/components/MessageRenderer/FileMessage/BaseFileMessage.tsx +17 -12
  562. package/src/components/MessageRenderer/FileMessage/ImageFileMessage.tsx +25 -18
  563. package/src/components/MessageRenderer/FileMessage/VideoFileMessage.tsx +20 -10
  564. package/src/components/MessageRenderer/MessageIncomingAvatar.tsx +9 -2
  565. package/src/components/MessageRenderer/UserMessage/BaseUserMessage.tsx +82 -14
  566. package/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.tsx +135 -61
  567. package/src/components/MessageRenderer/UserMessage/index.tsx +8 -1
  568. package/src/components/MessageRenderer/index.tsx +40 -8
  569. package/src/components/ReactionAddons/BottomSheetReactionAddon.tsx +106 -0
  570. package/src/components/ReactionAddons/MessageReactionAddon.tsx +123 -0
  571. package/src/components/ReactionAddons/ReactionRoundedButton.tsx +71 -0
  572. package/src/components/ReactionAddons/index.tsx +7 -0
  573. package/src/components/ReactionBottomSheets/ReactionListBottomSheet.tsx +113 -0
  574. package/src/components/ReactionBottomSheets/ReactionUserListBottomSheet.tsx +249 -0
  575. package/src/components/ReactionBottomSheets/index.tsx +24 -0
  576. package/src/components/TypedPlaceholder.tsx +4 -4
  577. package/src/components/UserActionBar.tsx +10 -4
  578. package/src/constants.ts +2 -0
  579. package/src/containers/GroupChannelPreviewContainer.tsx +8 -1
  580. package/src/containers/SendbirdUIKitContainer.tsx +161 -84
  581. package/src/contexts/{Localization.tsx → LocalizationCtx.tsx} +0 -0
  582. package/src/contexts/{PlatformService.tsx → PlatformServiceCtx.tsx} +0 -0
  583. package/src/contexts/ReactionCtx.tsx +102 -0
  584. package/src/contexts/{SendbirdChat.tsx → SendbirdChatCtx.tsx} +34 -6
  585. package/src/contexts/UserProfileCtx.tsx +135 -0
  586. package/src/domain/groupChannel/component/GroupChannelInput/EditInput.tsx +57 -29
  587. package/src/domain/groupChannel/component/GroupChannelInput/SendInput.tsx +56 -13
  588. package/src/domain/groupChannel/component/GroupChannelInput/index.tsx +138 -41
  589. package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +27 -10
  590. package/src/domain/groupChannel/component/GroupChannelSuggestedMentionList.tsx +173 -0
  591. package/src/domain/groupChannel/index.ts +1 -0
  592. package/src/domain/groupChannel/module/createGroupChannelModule.tsx +12 -1
  593. package/src/domain/groupChannel/module/moduleContext.tsx +4 -4
  594. package/src/domain/groupChannel/types.ts +29 -6
  595. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.tsx +14 -0
  596. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.tsx +33 -0
  597. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.tsx +18 -0
  598. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.tsx +19 -0
  599. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.tsx +18 -0
  600. package/src/domain/groupChannelBannedUsers/index.ts +6 -0
  601. package/src/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.tsx +21 -0
  602. package/src/domain/groupChannelBannedUsers/module/moduleContext.tsx +30 -0
  603. package/src/domain/groupChannelBannedUsers/types.ts +50 -0
  604. package/src/domain/groupChannelList/component/GroupChannelListList.tsx +2 -1
  605. package/src/domain/groupChannelList/component/GroupChannelListTypeSelector.tsx +37 -43
  606. package/src/domain/groupChannelList/types.ts +3 -9
  607. package/src/domain/groupChannelModeration/component/GroupChannelModerationHeader.tsx +14 -0
  608. package/src/domain/groupChannelModeration/component/GroupChannelModerationMenu.tsx +84 -0
  609. package/src/domain/groupChannelModeration/index.ts +4 -0
  610. package/src/domain/groupChannelModeration/module/createGroupChannelModerationModule.tsx +15 -0
  611. package/src/domain/groupChannelModeration/module/moduleContext.tsx +33 -0
  612. package/src/domain/groupChannelModeration/types.ts +48 -0
  613. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.tsx +14 -0
  614. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.tsx +31 -0
  615. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.tsx +18 -0
  616. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.tsx +19 -0
  617. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.tsx +18 -0
  618. package/src/domain/groupChannelMutedMembers/index.ts +7 -0
  619. package/src/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.tsx +21 -0
  620. package/src/domain/groupChannelMutedMembers/module/moduleContext.tsx +30 -0
  621. package/src/domain/groupChannelMutedMembers/types.ts +50 -0
  622. package/src/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.tsx +14 -0
  623. package/src/domain/groupChannelNotifications/component/GroupChannelNotificationsView.tsx +128 -0
  624. package/src/domain/groupChannelNotifications/index.ts +4 -0
  625. package/src/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.tsx +15 -0
  626. package/src/domain/groupChannelNotifications/module/moduleContext.tsx +31 -0
  627. package/src/domain/groupChannelNotifications/types.ts +38 -0
  628. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.tsx +25 -0
  629. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.tsx +30 -0
  630. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.tsx +18 -0
  631. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.tsx +19 -0
  632. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.tsx +18 -0
  633. package/src/domain/groupChannelOperators/index.ts +7 -0
  634. package/src/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.tsx +21 -0
  635. package/src/domain/groupChannelOperators/module/moduleContext.tsx +30 -0
  636. package/src/domain/groupChannelOperators/types.ts +52 -0
  637. package/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.tsx +2 -7
  638. package/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.tsx +51 -3
  639. package/src/domain/groupChannelSettings/module/moduleContext.tsx +9 -12
  640. package/src/domain/groupChannelSettings/types.ts +4 -0
  641. package/src/domain/groupChannelUserList/types.ts +31 -11
  642. package/src/domain/userList/component/UserListList.tsx +5 -1
  643. package/src/domain/userList/component/UserListStatusError.tsx +2 -2
  644. package/src/domain/userList/module/createUserListModule.tsx +3 -1
  645. package/src/domain/userList/types.ts +4 -1
  646. package/src/fragments/createGroupChannelBannedUsersFragment.tsx +80 -0
  647. package/src/fragments/createGroupChannelCreateFragment.tsx +18 -32
  648. package/src/fragments/createGroupChannelFragment.tsx +31 -11
  649. package/src/fragments/createGroupChannelInviteFragment.tsx +28 -50
  650. package/src/fragments/createGroupChannelListFragment.tsx +4 -10
  651. package/src/fragments/createGroupChannelMembersFragment.tsx +110 -67
  652. package/src/fragments/createGroupChannelModerationFragment.tsx +57 -0
  653. package/src/fragments/createGroupChannelMutedMembersFragment.tsx +93 -0
  654. package/src/fragments/createGroupChannelNotificationsFragment.tsx +27 -0
  655. package/src/fragments/createGroupChannelOperatorsFragment.tsx +101 -0
  656. package/src/fragments/createGroupChannelRegisterOperatorFragment.tsx +94 -0
  657. package/src/fragments/createGroupChannelSettingsFragment.tsx +11 -1
  658. package/src/hooks/useConnection.ts +5 -1
  659. package/src/hooks/useContext.ts +17 -3
  660. package/src/hooks/useKeyboardStatus.ts +54 -0
  661. package/src/hooks/useMentionSuggestion.ts +106 -0
  662. package/src/hooks/useMentionTextInput.ts +139 -0
  663. package/src/index.ts +22 -5
  664. package/src/libs/EmojiManager.ts +80 -0
  665. package/src/libs/MentionConfig.ts +40 -0
  666. package/src/libs/MentionManager.tsx +240 -0
  667. package/src/localization/StringSet.type.ts +137 -22
  668. package/src/platform/createFileService.native.ts +1 -1
  669. package/src/types.ts +12 -0
  670. package/src/utils/common.ts +8 -0
  671. package/src/version.ts +1 -1
  672. package/lib/commonjs/contexts/Localization.js.map +0 -1
  673. package/lib/commonjs/contexts/PlatformService.js.map +0 -1
  674. package/lib/commonjs/contexts/SendbirdChat.js.map +0 -1
  675. package/lib/module/contexts/Localization.js.map +0 -1
  676. package/lib/module/contexts/PlatformService.js.map +0 -1
  677. package/lib/module/contexts/SendbirdChat.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MemoryStorage","getAllKeys","Object","keys","_data","getItem","key","removeItem","setItem","value","EmojiManager","constructor","internalStorage","InternalLocalCacheStorage","data","get","emojiStorage","strItem","freeze","JSON","parse","set","stringify","emojiContainer","container","category","emojiCategories","_emojiCategoryMap","id","emoji","emojis","_allEmojiMap","_allEmoji","values","emojiCategoryMap","allEmojiMap","allEmoji"],"sources":["EmojiManager.ts"],"sourcesContent":["import type { SendbirdEmoji, SendbirdEmojiCategory, SendbirdEmojiContainer } from '@sendbird/uikit-utils';\n\nimport type { LocalCacheStorage } from '../types';\nimport InternalLocalCacheStorage from './InternalLocalCacheStorage';\n\nclass MemoryStorage implements LocalCacheStorage {\n _data: Record<string, string> = {};\n\n async getAllKeys(): Promise<readonly string[] | string[]> {\n return Object.keys(this._data);\n }\n\n async getItem(key: string): Promise<string | null> {\n return this._data[key];\n }\n\n async removeItem(key: string): Promise<void> {\n delete this._data[key];\n }\n\n async setItem(key: string, value: string): Promise<void> {\n this._data[key] = value;\n }\n}\n\nclass EmojiManager {\n static key = 'sendbird-uikit@emoji-manager';\n\n constructor(\n private internalStorage: InternalLocalCacheStorage = new InternalLocalCacheStorage(new MemoryStorage()),\n ) {}\n\n private emojiStorage = {\n data: null as null | SendbirdEmojiContainer,\n get: async () => {\n if (!this.emojiStorage.data) {\n const strItem = await this.internalStorage.getItem(EmojiManager.key);\n if (strItem) this.emojiStorage.data = Object.freeze(JSON.parse(strItem));\n }\n return this.emojiStorage.data;\n },\n set: async (data: SendbirdEmojiContainer) => {\n this.emojiStorage.data = Object.freeze(data);\n await this.internalStorage.setItem(EmojiManager.key, JSON.stringify(data));\n },\n };\n\n private _emojiCategoryMap: Record<string, SendbirdEmojiCategory> = {};\n public get emojiCategoryMap() {\n return this._emojiCategoryMap;\n }\n\n private _allEmojiMap: Record<string, SendbirdEmoji> = {};\n public get allEmojiMap() {\n return this._allEmojiMap;\n }\n\n private _allEmoji: SendbirdEmoji[] = [];\n public get allEmoji() {\n return this._allEmoji;\n }\n\n public init = async (emojiContainer?: SendbirdEmojiContainer) => {\n if (emojiContainer) await this.emojiStorage.set(emojiContainer);\n\n const container = await this.emojiStorage.get();\n\n if (container) {\n for (const category of container.emojiCategories) {\n this._emojiCategoryMap[category.id] = category;\n for (const emoji of category.emojis) {\n this._allEmojiMap[emoji.key] = emoji;\n }\n }\n this._allEmoji = Object.values(this._allEmojiMap);\n }\n };\n}\n\nexport default EmojiManager;\n"],"mappings":";;;;;;;AAGA;;;;;;AAEA,MAAMA,aAAN,CAAiD;EAAA;IAAA,+BACf,EADe;EAAA;;EAG/B,MAAVC,UAAU,GAA0C;IACxD,OAAOC,MAAM,CAACC,IAAP,CAAY,KAAKC,KAAjB,CAAP;EACD;;EAEY,MAAPC,OAAO,CAACC,GAAD,EAAsC;IACjD,OAAO,KAAKF,KAAL,CAAWE,GAAX,CAAP;EACD;;EAEe,MAAVC,UAAU,CAACD,GAAD,EAA6B;IAC3C,OAAO,KAAKF,KAAL,CAAWE,GAAX,CAAP;EACD;;EAEY,MAAPE,OAAO,CAACF,GAAD,EAAcG,KAAd,EAA4C;IACvD,KAAKL,KAAL,CAAWE,GAAX,IAAkBG,KAAlB;EACD;;AAjB8C;;AAoBjD,MAAMC,YAAN,CAAmB;EAGjBC,WAAW,GAET;IAAA,IADQC,eACR,uEADqD,IAAIC,kCAAJ,CAA8B,IAAIb,aAAJ,EAA9B,CACrD;IAAA,KADQY,eACR,GADQA,eACR;;IAAA,sCAEqB;MACrBE,IAAI,EAAE,IADe;MAErBC,GAAG,EAAE,YAAY;QACf,IAAI,CAAC,KAAKC,YAAL,CAAkBF,IAAvB,EAA6B;UAC3B,MAAMG,OAAO,GAAG,MAAM,KAAKL,eAAL,CAAqBP,OAArB,CAA6BK,YAAY,CAACJ,GAA1C,CAAtB;UACA,IAAIW,OAAJ,EAAa,KAAKD,YAAL,CAAkBF,IAAlB,GAAyBZ,MAAM,CAACgB,MAAP,CAAcC,IAAI,CAACC,KAAL,CAAWH,OAAX,CAAd,CAAzB;QACd;;QACD,OAAO,KAAKD,YAAL,CAAkBF,IAAzB;MACD,CARoB;MASrBO,GAAG,EAAE,MAAOP,IAAP,IAAwC;QAC3C,KAAKE,YAAL,CAAkBF,IAAlB,GAAyBZ,MAAM,CAACgB,MAAP,CAAcJ,IAAd,CAAzB;QACA,MAAM,KAAKF,eAAL,CAAqBJ,OAArB,CAA6BE,YAAY,CAACJ,GAA1C,EAA+Ca,IAAI,CAACG,SAAL,CAAeR,IAAf,CAA/C,CAAN;MACD;IAZoB,CAFrB;;IAAA,2CAiBiE,EAjBjE;;IAAA,sCAsBoD,EAtBpD;;IAAA,mCA2BmC,EA3BnC;;IAAA,8BAgCY,MAAOS,cAAP,IAAmD;MAC/D,IAAIA,cAAJ,EAAoB,MAAM,KAAKP,YAAL,CAAkBK,GAAlB,CAAsBE,cAAtB,CAAN;MAEpB,MAAMC,SAAS,GAAG,MAAM,KAAKR,YAAL,CAAkBD,GAAlB,EAAxB;;MAEA,IAAIS,SAAJ,EAAe;QACb,KAAK,MAAMC,QAAX,IAAuBD,SAAS,CAACE,eAAjC,EAAkD;UAChD,KAAKC,iBAAL,CAAuBF,QAAQ,CAACG,EAAhC,IAAsCH,QAAtC;;UACA,KAAK,MAAMI,KAAX,IAAoBJ,QAAQ,CAACK,MAA7B,EAAqC;YACnC,KAAKC,YAAL,CAAkBF,KAAK,CAACvB,GAAxB,IAA+BuB,KAA/B;UACD;QACF;;QACD,KAAKG,SAAL,GAAiB9B,MAAM,CAAC+B,MAAP,CAAc,KAAKF,YAAnB,CAAjB;MACD;IACF,CA9CC;EAAE;;EAkBuB,IAAhBG,gBAAgB,GAAG;IAC5B,OAAO,KAAKP,iBAAZ;EACD;;EAGqB,IAAXQ,WAAW,GAAG;IACvB,OAAO,KAAKJ,YAAZ;EACD;;EAGkB,IAARK,QAAQ,GAAG;IACpB,OAAO,KAAKJ,SAAZ;EACD;;AAnCgB;;gBAAbtB,Y,SACS,8B;;eAqDAA,Y"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
+
10
+ class MentionConfig {
11
+ constructor(_config) {
12
+ this._config = _config;
13
+ }
14
+
15
+ get mentionLimit() {
16
+ return this._config.mentionLimit;
17
+ }
18
+
19
+ get suggestionLimit() {
20
+ return this._config.suggestionLimit;
21
+ }
22
+
23
+ get delimiter() {
24
+ return this._config.delimiter;
25
+ }
26
+
27
+ get debounceMills() {
28
+ return this._config.debounceMills;
29
+ }
30
+
31
+ get trigger() {
32
+ return this._config.trigger;
33
+ }
34
+
35
+ }
36
+
37
+ _defineProperty(MentionConfig, "DEFAULT", {
38
+ MENTION_LIMIT: 10,
39
+ SUGGESTION_LIMIT: 15,
40
+ DEBOUNCE_MILLS: 300,
41
+ DELIMITER: ' ',
42
+ TRIGGER: '@'
43
+ });
44
+
45
+ var _default = MentionConfig;
46
+ exports.default = _default;
47
+ //# sourceMappingURL=MentionConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MentionConfig","constructor","_config","mentionLimit","suggestionLimit","delimiter","debounceMills","trigger","MENTION_LIMIT","SUGGESTION_LIMIT","DEBOUNCE_MILLS","DELIMITER","TRIGGER"],"sources":["MentionConfig.ts"],"sourcesContent":["export interface MentionConfigInterface {\n mentionLimit: number;\n suggestionLimit: number;\n debounceMills: number;\n delimiter: string;\n trigger: string;\n}\n\nclass MentionConfig {\n static DEFAULT = {\n MENTION_LIMIT: 10,\n SUGGESTION_LIMIT: 15,\n DEBOUNCE_MILLS: 300,\n DELIMITER: ' ',\n TRIGGER: '@',\n };\n constructor(private _config: MentionConfigInterface) {}\n\n get mentionLimit() {\n return this._config.mentionLimit;\n }\n\n get suggestionLimit() {\n return this._config.suggestionLimit;\n }\n\n get delimiter() {\n return this._config.delimiter;\n }\n\n get debounceMills() {\n return this._config.debounceMills;\n }\n\n get trigger() {\n return this._config.trigger;\n }\n}\n\nexport default MentionConfig;\n"],"mappings":";;;;;;;;;AAQA,MAAMA,aAAN,CAAoB;EAQlBC,WAAW,CAASC,OAAT,EAA0C;IAAA,KAAjCA,OAAiC,GAAjCA,OAAiC;EAAE;;EAEvC,IAAZC,YAAY,GAAG;IACjB,OAAO,KAAKD,OAAL,CAAaC,YAApB;EACD;;EAEkB,IAAfC,eAAe,GAAG;IACpB,OAAO,KAAKF,OAAL,CAAaE,eAApB;EACD;;EAEY,IAATC,SAAS,GAAG;IACd,OAAO,KAAKH,OAAL,CAAaG,SAApB;EACD;;EAEgB,IAAbC,aAAa,GAAG;IAClB,OAAO,KAAKJ,OAAL,CAAaI,aAApB;EACD;;EAEU,IAAPC,OAAO,GAAG;IACZ,OAAO,KAAKL,OAAL,CAAaK,OAApB;EACD;;AA5BiB;;gBAAdP,a,aACa;EACfQ,aAAa,EAAE,EADA;EAEfC,gBAAgB,EAAE,EAFH;EAGfC,cAAc,EAAE,GAHD;EAIfC,SAAS,EAAE,GAJI;EAKfC,OAAO,EAAE;AALM,C;;eA8BJZ,a"}
@@ -0,0 +1,235 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _uikitReactNativeFoundation = require("@sendbird/uikit-react-native-foundation");
11
+
12
+ var _uikitUtils = require("@sendbird/uikit-utils");
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
+
18
+ class MentionManager {
19
+ constructor(config, mentionEnabled) {
20
+ var _this = this;
21
+
22
+ this.config = config;
23
+ this.mentionEnabled = mentionEnabled;
24
+
25
+ _defineProperty(this, "_invalidStartsKeywords", void 0);
26
+
27
+ _defineProperty(this, "_templateRegex", void 0);
28
+
29
+ _defineProperty(this, "rangeHelpers", {
30
+ inRangeUnderOver(start, num, end) {
31
+ return start < num && num < end;
32
+ },
33
+
34
+ inRangeUnderMore(start, num, end) {
35
+ return start < num && num <= end;
36
+ },
37
+
38
+ inRangeLessOver(start, num, end) {
39
+ return start <= num && num < end;
40
+ },
41
+
42
+ inRangeLessMore(start, num, end) {
43
+ return start <= num && num <= end;
44
+ },
45
+
46
+ overlaps(a, b) {
47
+ let compare = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'underOver';
48
+ const inRange = {
49
+ underOver: this.inRangeUnderOver,
50
+ underMore: this.inRangeUnderMore,
51
+ lessOver: this.inRangeLessOver,
52
+ lessMore: this.inRangeLessMore
53
+ }[compare];
54
+ return inRange(a.start, b.start, a.end) || inRange(a.start, b.end, a.end);
55
+ }
56
+
57
+ });
58
+
59
+ _defineProperty(this, "getSearchString", (text, selectionIndex) => {
60
+ const lastSpan = text.slice(0, selectionIndex).split(this.config.delimiter).pop() ?? '';
61
+ const triggerIdx = lastSpan.indexOf(this.config.trigger);
62
+ const mentionSpan = triggerIdx === -1 ? lastSpan : lastSpan.slice(triggerIdx);
63
+ const searchString = mentionSpan.slice(this.config.trigger.length);
64
+ return {
65
+ searchString,
66
+ isTriggered: () => mentionSpan.startsWith(this.config.trigger),
67
+ isValidSearchString: () => this._invalidStartsKeywords.every(it => !searchString.startsWith(it))
68
+ };
69
+ });
70
+
71
+ _defineProperty(this, "reconcileRangeOfMentionedUsers", (offset, selectionIndex, mentionedUsers) => {
72
+ return mentionedUsers.map(it => {
73
+ // Changes only on the right text of selection.
74
+ if (selectionIndex <= it.range.start) {
75
+ return { ...it,
76
+ range: {
77
+ start: it.range.start + offset,
78
+ end: it.range.end + offset
79
+ }
80
+ };
81
+ }
82
+
83
+ return it;
84
+ });
85
+ });
86
+
87
+ _defineProperty(this, "removeMentionedUsersInSelection", (selection, mentionedUsers) => {
88
+ let lastSelection = 0;
89
+ let removedOffset = 0;
90
+ const filtered = mentionedUsers.filter(it => {
91
+ const shouldRemove = this.rangeHelpers.overlaps(selection, it.range, 'lessMore');
92
+
93
+ if (shouldRemove) {
94
+ lastSelection = Math.max(lastSelection, it.range.end);
95
+ removedOffset -= it.range.end - it.range.start;
96
+ }
97
+
98
+ return !shouldRemove;
99
+ });
100
+ return {
101
+ filtered,
102
+ lastSelection,
103
+ removedOffset
104
+ };
105
+ });
106
+
107
+ _defineProperty(this, "getSearchStringRangeInText", (selectionIndex, searchString) => {
108
+ return {
109
+ start: selectionIndex - searchString.length - this.config.trigger.length,
110
+ end: selectionIndex
111
+ };
112
+ });
113
+
114
+ _defineProperty(this, "asMentionedMessageTemplate", function (user) {
115
+ let delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
116
+ return `${_this.config.trigger}{${user.userId}}` + (delimiter ? _this.config.delimiter : '');
117
+ });
118
+
119
+ _defineProperty(this, "asMentionedMessageText", function (user) {
120
+ let delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
121
+ return `${_this.config.trigger}${user.nickname}` + (delimiter ? _this.config.delimiter : '');
122
+ });
123
+
124
+ _defineProperty(this, "textToMentionedComponents", (text, mentionedUsers) => {
125
+ if (!this.mentionEnabled || mentionedUsers.length === 0) return text;
126
+ const {
127
+ leftText,
128
+ components
129
+ } = mentionedUsers.sort((a, b) => b.range.start - a.range.start).reduce((_ref, curr, currentIndex) => {
130
+ let {
131
+ leftText,
132
+ components
133
+ } = _ref;
134
+ const leftSpan = leftText.slice(0, curr.range.start);
135
+ const mentionSpan = leftText.slice(curr.range.start, curr.range.end);
136
+ const rightSpan = leftText.slice(curr.range.end);
137
+ return {
138
+ leftText: leftSpan,
139
+ components: [/*#__PURE__*/_react.default.createElement(_uikitReactNativeFoundation.Text, {
140
+ key: mentionSpan + currentIndex,
141
+ style: styles.mentionedText
142
+ }, mentionSpan), rightSpan, ...components]
143
+ };
144
+ }, {
145
+ leftText: text,
146
+ components: []
147
+ });
148
+ return [leftText, ...components];
149
+ });
150
+
151
+ _defineProperty(this, "textToMentionedMessageTemplate", (text, mentionedUsers) => {
152
+ if (!this.mentionEnabled) return text;
153
+ const {
154
+ leftText,
155
+ strings
156
+ } = mentionedUsers.sort((a, b) => b.range.start - a.range.start).reduce((_ref2, curr) => {
157
+ let {
158
+ leftText,
159
+ strings
160
+ } = _ref2;
161
+ const leftSpan = leftText.slice(0, curr.range.start);
162
+ const templateSpan = this.asMentionedMessageTemplate(curr.user);
163
+ const rightSpan = leftText.slice(curr.range.end);
164
+ return {
165
+ leftText: leftSpan,
166
+ strings: [templateSpan, rightSpan, ...strings]
167
+ };
168
+ }, {
169
+ leftText: text,
170
+ strings: []
171
+ });
172
+ return [leftText, ...strings].join('');
173
+ });
174
+
175
+ _defineProperty(this, "templateToTextAndMentionedUsers", (template, mentionedUsers) => {
176
+ const actualMentionedUsers = [];
177
+ let offsetToMove = 0;
178
+ const mentionedText = (0, _uikitUtils.replaceWithRegex)(template, this.templateRegex, _ref3 => {
179
+ let {
180
+ match,
181
+ matchIndex,
182
+ groups
183
+ } = _ref3;
184
+ const user = mentionedUsers.find(it => it.userId === groups[2]);
185
+
186
+ if (user && typeof matchIndex === 'number') {
187
+ const userIdSpan = match;
188
+ const userNicknameSpan = this.asMentionedMessageText(user);
189
+ const offsetAfterConverted = userNicknameSpan.length - userIdSpan.length;
190
+ const originalRange = {
191
+ start: matchIndex,
192
+ end: matchIndex + userIdSpan.length
193
+ };
194
+ const convertedRange = {
195
+ start: Math.max(0, originalRange.start + offsetToMove),
196
+ end: originalRange.end + offsetToMove + offsetAfterConverted
197
+ };
198
+ offsetToMove += offsetAfterConverted;
199
+ actualMentionedUsers.push({
200
+ range: convertedRange,
201
+ user
202
+ });
203
+ return userNicknameSpan;
204
+ }
205
+
206
+ return match;
207
+ }, '').join('');
208
+ return {
209
+ mentionedText,
210
+ mentionedUsers: actualMentionedUsers
211
+ };
212
+ });
213
+
214
+ _defineProperty(this, "shouldUseMentionedMessageTemplate", message => {
215
+ return Boolean(this.mentionEnabled && (message === null || message === void 0 ? void 0 : message.mentionedMessageTemplate) && (message === null || message === void 0 ? void 0 : message.mentionedUsers) && (message === null || message === void 0 ? void 0 : message.mentionedUsers.length) > 0);
216
+ });
217
+
218
+ this._invalidStartsKeywords = [this.config.trigger, this.config.delimiter];
219
+ this._templateRegex = (0, _uikitUtils.createMentionTemplateRegex)(this.config.trigger);
220
+ }
221
+
222
+ get templateRegex() {
223
+ return this._templateRegex;
224
+ }
225
+
226
+ }
227
+
228
+ const styles = (0, _uikitReactNativeFoundation.createStyleSheet)({
229
+ mentionedText: {
230
+ fontWeight: 'bold'
231
+ }
232
+ });
233
+ var _default = MentionManager;
234
+ exports.default = _default;
235
+ //# sourceMappingURL=MentionManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MentionManager","constructor","config","mentionEnabled","inRangeUnderOver","start","num","end","inRangeUnderMore","inRangeLessOver","inRangeLessMore","overlaps","a","b","compare","inRange","underOver","underMore","lessOver","lessMore","text","selectionIndex","lastSpan","slice","split","delimiter","pop","triggerIdx","indexOf","trigger","mentionSpan","searchString","length","isTriggered","startsWith","isValidSearchString","_invalidStartsKeywords","every","it","offset","mentionedUsers","map","range","selection","lastSelection","removedOffset","filtered","filter","shouldRemove","rangeHelpers","Math","max","user","userId","nickname","leftText","components","sort","reduce","curr","currentIndex","leftSpan","rightSpan","styles","mentionedText","strings","templateSpan","asMentionedMessageTemplate","join","template","actualMentionedUsers","offsetToMove","replaceWithRegex","templateRegex","match","matchIndex","groups","find","userIdSpan","userNicknameSpan","asMentionedMessageText","offsetAfterConverted","originalRange","convertedRange","push","message","Boolean","mentionedMessageTemplate","_templateRegex","createMentionTemplateRegex","createStyleSheet","fontWeight"],"sources":["MentionManager.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Text, createStyleSheet } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdFileMessage, SendbirdUser, SendbirdUserMessage } from '@sendbird/uikit-utils';\nimport { createMentionTemplateRegex, replaceWithRegex } from '@sendbird/uikit-utils';\n\nimport type { MentionedUser, Range } from '../types';\nimport type { MentionConfigInterface } from './MentionConfig';\n\nclass MentionManager {\n private _invalidStartsKeywords: string[];\n private _templateRegex: RegExp;\n\n constructor(public config: MentionConfigInterface, public mentionEnabled: boolean) {\n this._invalidStartsKeywords = [this.config.trigger, this.config.delimiter];\n this._templateRegex = createMentionTemplateRegex(this.config.trigger);\n }\n\n public rangeHelpers = {\n inRangeUnderOver(start: number, num: number, end: number) {\n return start < num && num < end;\n },\n inRangeUnderMore(start: number, num: number, end: number) {\n return start < num && num <= end;\n },\n inRangeLessOver(start: number, num: number, end: number) {\n return start <= num && num < end;\n },\n inRangeLessMore(start: number, num: number, end: number) {\n return start <= num && num <= end;\n },\n overlaps(a: Range, b: Range, compare: 'underOver' | 'underMore' | 'lessOver' | 'lessMore' = 'underOver') {\n const inRange = {\n underOver: this.inRangeUnderOver,\n underMore: this.inRangeUnderMore,\n lessOver: this.inRangeLessOver,\n lessMore: this.inRangeLessMore,\n }[compare];\n\n return inRange(a.start, b.start, a.end) || inRange(a.start, b.end, a.end);\n },\n };\n\n public get templateRegex() {\n return this._templateRegex;\n }\n\n public getSearchString = (text: string, selectionIndex: number) => {\n const lastSpan = text.slice(0, selectionIndex).split(this.config.delimiter).pop() ?? '';\n const triggerIdx = lastSpan.indexOf(this.config.trigger);\n const mentionSpan = triggerIdx === -1 ? lastSpan : lastSpan.slice(triggerIdx);\n const searchString = mentionSpan.slice(this.config.trigger.length);\n\n return {\n searchString,\n isTriggered: () => mentionSpan.startsWith(this.config.trigger),\n isValidSearchString: () => this._invalidStartsKeywords.every((it) => !searchString.startsWith(it)),\n };\n };\n\n /**\n * @description Reconcile the range by offset in the mentioned users\n * */\n public reconcileRangeOfMentionedUsers = (offset: number, selectionIndex: number, mentionedUsers: MentionedUser[]) => {\n return mentionedUsers.map((it) => {\n // Changes only on the right text of selection.\n if (selectionIndex <= it.range.start) {\n return {\n ...it,\n range: {\n start: it.range.start + offset,\n end: it.range.end + offset,\n },\n };\n }\n\n return it;\n });\n };\n\n /**\n * @description Remove users who in a range\n * */\n public removeMentionedUsersInSelection = (selection: Range, mentionedUsers: MentionedUser[]) => {\n let lastSelection = 0;\n let removedOffset = 0;\n const filtered = mentionedUsers.filter((it) => {\n const shouldRemove = this.rangeHelpers.overlaps(selection, it.range, 'lessMore');\n if (shouldRemove) {\n lastSelection = Math.max(lastSelection, it.range.end);\n removedOffset -= it.range.end - it.range.start;\n }\n return !shouldRemove;\n });\n\n return { filtered, lastSelection, removedOffset };\n };\n\n public getSearchStringRangeInText = (selectionIndex: number, searchString: string): Range => {\n return {\n start: selectionIndex - searchString.length - this.config.trigger.length,\n end: selectionIndex,\n };\n };\n\n /**\n * @description User to @{user.id} template format\n * */\n public asMentionedMessageTemplate = (user: SendbirdUser, delimiter = false) => {\n return `${this.config.trigger}{${user.userId}}` + (delimiter ? this.config.delimiter : '');\n };\n\n /**\n * @description User to @user.nickname text format\n * */\n public asMentionedMessageText = (user: SendbirdUser, delimiter = false) => {\n return `${this.config.trigger}${user.nickname}` + (delimiter ? this.config.delimiter : '');\n };\n\n /**\n * @description Bold @user.nickname\n * */\n public textToMentionedComponents = (text: string, mentionedUsers: MentionedUser[]) => {\n if (!this.mentionEnabled || mentionedUsers.length === 0) return text;\n\n const { leftText, components } = mentionedUsers\n .sort((a, b) => b.range.start - a.range.start)\n .reduce(\n ({ leftText, components }, curr, currentIndex) => {\n const leftSpan = leftText.slice(0, curr.range.start);\n const mentionSpan = leftText.slice(curr.range.start, curr.range.end);\n const rightSpan = leftText.slice(curr.range.end);\n\n return {\n leftText: leftSpan,\n components: [\n <Text key={mentionSpan + currentIndex} style={styles.mentionedText}>\n {mentionSpan}\n </Text>,\n rightSpan,\n ...components,\n ],\n };\n },\n { leftText: text, components: [] as (string | JSX.Element)[] },\n );\n\n return [leftText, ...components];\n };\n\n public textToMentionedMessageTemplate = (text: string, mentionedUsers: MentionedUser[]) => {\n if (!this.mentionEnabled) return text;\n\n const { leftText, strings } = mentionedUsers\n .sort((a, b) => b.range.start - a.range.start)\n .reduce(\n ({ leftText, strings }, curr) => {\n const leftSpan = leftText.slice(0, curr.range.start);\n const templateSpan = this.asMentionedMessageTemplate(curr.user);\n const rightSpan = leftText.slice(curr.range.end);\n\n return {\n leftText: leftSpan,\n strings: [templateSpan, rightSpan, ...strings],\n };\n },\n { leftText: text, strings: [] as string[] },\n );\n\n return [leftText, ...strings].join('');\n };\n\n /**\n * @description Convert @{user.id} template to @user.nickname text and MentionedUser[] array.\n * */\n public templateToTextAndMentionedUsers = (template: string, mentionedUsers: SendbirdUser[]) => {\n const actualMentionedUsers: MentionedUser[] = [];\n\n let offsetToMove = 0;\n const mentionedText = replaceWithRegex(\n template,\n this.templateRegex,\n ({ match, matchIndex, groups }) => {\n const user = mentionedUsers.find((it) => it.userId === groups[2]);\n if (user && typeof matchIndex === 'number') {\n const userIdSpan = match;\n const userNicknameSpan = this.asMentionedMessageText(user);\n\n const offsetAfterConverted = userNicknameSpan.length - userIdSpan.length;\n\n const originalRange: Range = {\n start: matchIndex,\n end: matchIndex + userIdSpan.length,\n };\n\n const convertedRange: Range = {\n start: Math.max(0, originalRange.start + offsetToMove),\n end: originalRange.end + offsetToMove + offsetAfterConverted,\n };\n\n offsetToMove += offsetAfterConverted;\n\n actualMentionedUsers.push({ range: convertedRange, user });\n return userNicknameSpan;\n }\n return match;\n },\n '',\n ).join('');\n\n return {\n mentionedText,\n mentionedUsers: actualMentionedUsers,\n };\n };\n\n public shouldUseMentionedMessageTemplate = (\n message?: SendbirdUserMessage | SendbirdFileMessage,\n ): message is RequiredSpecific<\n SendbirdUserMessage | SendbirdFileMessage,\n 'mentionedMessageTemplate' | 'mentionedUsers' | 'mentionedUserIds' | 'mentionType'\n > => {\n return Boolean(\n this.mentionEnabled &&\n message?.mentionedMessageTemplate &&\n message?.mentionedUsers &&\n message?.mentionedUsers.length > 0,\n );\n };\n}\n\ntype RequiredSpecific<T, K extends keyof T> = T & {\n [P in K]-?: T[P];\n};\n\nconst styles = createStyleSheet({\n mentionedText: { fontWeight: 'bold' },\n});\n\nexport default MentionManager;\n"],"mappings":"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"}
@@ -27,17 +27,19 @@ const createBaseStringSet = _ref => {
27
27
  GROUP_CHANNEL: {
28
28
  HEADER_TITLE: (currentUserId, channel) => (0, _uikitUtils.getGroupChannelTitle)(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),
29
29
  LIST_BANNER_FROZEN: 'Channel is frozen',
30
- LIST_DATE_SEPARATOR: (date, locale) => (0, _uikitUtils.dateSeparator)(date, locale ?? dateLocale),
30
+ LIST_DATE_SEPARATOR: (date, locale) => (0, _uikitUtils.getDateSeparatorFormat)(date, locale ?? dateLocale),
31
31
  LIST_BUTTON_NEW_MSG: newMessages => `${newMessages.length} new messages`,
32
- MESSAGE_BUBBLE_TIME: (message, locale) => (0, _uikitUtils.messageTime)(new Date(message.createdAt), locale ?? dateLocale),
32
+ MESSAGE_BUBBLE_TIME: (message, locale) => (0, _uikitUtils.getMessageTimeFormat)(new Date(message.createdAt), locale ?? dateLocale),
33
33
  MESSAGE_BUBBLE_FILE_TITLE: message => message.name,
34
34
  MESSAGE_BUBBLE_EDITED_POSTFIX: ' (edited)',
35
35
  MESSAGE_BUBBLE_UNKNOWN_TITLE: () => '(Unknown message type)',
36
36
  MESSAGE_BUBBLE_UNKNOWN_DESC: () => 'Cannot read this message.',
37
37
  INPUT_PLACEHOLDER_ACTIVE: 'Enter message',
38
- INPUT_PLACEHOLDER_DISABLED: 'Chat is unavailable in this channel',
38
+ INPUT_PLACEHOLDER_DISABLED: 'Chat not available in this channel.',
39
+ INPUT_PLACEHOLDER_MUTED: "You're muted by the operator.",
39
40
  INPUT_EDIT_OK: 'Save',
40
41
  INPUT_EDIT_CANCEL: 'Cancel',
42
+ MENTION_LIMITED: mentionLimit => `You can have up to ${mentionLimit} mentions per message.`,
41
43
  DIALOG_MESSAGE_COPY: 'Copy',
42
44
  DIALOG_MESSAGE_EDIT: 'Edit',
43
45
  DIALOG_MESSAGE_SAVE: 'Save',
@@ -55,9 +57,13 @@ const createBaseStringSet = _ref => {
55
57
  GROUP_CHANNEL_SETTINGS: {
56
58
  HEADER_TITLE: 'Channel information',
57
59
  HEADER_RIGHT: 'Edit',
58
- MENU_NOTIFICATION: 'Notifications',
60
+ MENU_MODERATION: 'Moderation',
59
61
  MENU_MEMBERS: 'Members',
60
62
  MENU_LEAVE_CHANNEL: 'Leave channel',
63
+ MENU_NOTIFICATION: 'Notifications',
64
+ MENU_NOTIFICATION_LABEL_ON: 'On',
65
+ MENU_NOTIFICATION_LABEL_OFF: 'Off',
66
+ MENU_NOTIFICATION_LABEL_MENTION_ONLY: 'Mentions only',
61
67
  DIALOG_CHANGE_NAME: 'Change channel name',
62
68
  DIALOG_CHANGE_NAME_PROMPT_TITLE: 'Change channel name',
63
69
  DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER: 'Enter name',
@@ -69,6 +75,46 @@ const createBaseStringSet = _ref => {
69
75
  DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: 'Choose photo',
70
76
  ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_SETTINGS)
71
77
  },
78
+ GROUP_CHANNEL_NOTIFICATIONS: {
79
+ HEADER_TITLE: 'Notifications',
80
+ MENU_NOTIFICATIONS: 'Notifications',
81
+ MENU_NOTIFICATIONS_DESC: 'Turn on push notifications if you wish to be notified when messages are delivered to this channel.',
82
+ MENU_NOTIFICATIONS_OPTION_ALL: 'All new messages',
83
+ MENU_NOTIFICATIONS_OPTION_MENTION_ONLY: 'Mentions only',
84
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_NOTIFICATIONS)
85
+ },
86
+ GROUP_CHANNEL_MODERATION: {
87
+ HEADER_TITLE: 'Moderation',
88
+ MENU_OPERATORS: 'Operators',
89
+ MENU_MUTED_MEMBERS: 'Muted members',
90
+ MENU_BANNED_USERS: 'Banned users',
91
+ MENU_FREEZE_CHANNEL: 'Freeze channel',
92
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_MODERATION)
93
+ },
94
+ GROUP_CHANNEL_OPERATORS: {
95
+ HEADER_TITLE: 'Operators',
96
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_OPERATORS)
97
+ },
98
+ GROUP_CHANNEL_REGISTER_OPERATOR: {
99
+ HEADER_TITLE: 'Set as operators',
100
+ HEADER_RIGHT: _ref2 => {
101
+ let {
102
+ selectedUsers
103
+ } = _ref2;
104
+ const len = selectedUsers.length;
105
+ if (len === 0) return 'Add';
106
+ return `Add (${len})`;
107
+ },
108
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_OPERATORS)
109
+ },
110
+ GROUP_CHANNEL_MUTED_MEMBERS: {
111
+ HEADER_TITLE: 'Muted members',
112
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_MUTED_MEMBERS)
113
+ },
114
+ GROUP_CHANNEL_BANNED_USERS: {
115
+ HEADER_TITLE: 'Banned users',
116
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_BANNED_USERS)
117
+ },
72
118
  GROUP_CHANNEL_LIST: {
73
119
  HEADER_TITLE: 'Channels',
74
120
  CHANNEL_PREVIEW_TITLE: (currentUserId, channel) => (0, _uikitUtils.getGroupChannelTitle)(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),
@@ -89,19 +135,20 @@ const createBaseStringSet = _ref => {
89
135
  },
90
136
  GROUP_CHANNEL_MEMBERS: {
91
137
  HEADER_TITLE: 'Members',
138
+
139
+ /** @deprecated Please use in LABELS **/
92
140
  USER_BAR_ME_POSTFIX: ' (You)',
141
+
142
+ /** @deprecated Please use in LABELS **/
93
143
  USER_BAR_OPERATOR: 'Operator',
94
- DIALOG_USER_DISMISS_OPERATOR: 'Dismiss operator',
95
- DIALOG_USER_MUTE: 'Mute',
96
- DIALOG_USER_BAN: 'Ban',
97
144
  ...(overrides === null || overrides === void 0 ? void 0 : overrides.GROUP_CHANNEL_MEMBERS)
98
145
  },
99
146
  GROUP_CHANNEL_CREATE: {
100
147
  HEADER_TITLE: 'New channel',
101
- HEADER_RIGHT: _ref2 => {
148
+ HEADER_RIGHT: _ref3 => {
102
149
  let {
103
150
  selectedUsers
104
- } = _ref2;
151
+ } = _ref3;
105
152
  const len = selectedUsers.length;
106
153
  if (len === 0) return 'Create';
107
154
  return `Create (${len})`;
@@ -110,10 +157,10 @@ const createBaseStringSet = _ref => {
110
157
  },
111
158
  GROUP_CHANNEL_INVITE: {
112
159
  HEADER_TITLE: 'Invite users',
113
- HEADER_RIGHT: _ref3 => {
160
+ HEADER_RIGHT: _ref4 => {
114
161
  let {
115
162
  selectedUsers
116
- } = _ref3;
163
+ } = _ref4;
117
164
  const len = selectedUsers.length;
118
165
  if (len === 0) return 'Invite';
119
166
  return `Invite (${len})`;
@@ -131,6 +178,14 @@ const createBaseStringSet = _ref => {
131
178
  if (users.length === 2) return `${userNames.join(' and ')} are typing...`;
132
179
  return 'Several people are typing...';
133
180
  },
181
+ USER_BAR_ME_POSTFIX: ' (You)',
182
+ USER_BAR_OPERATOR: 'Operator',
183
+ REGISTER_AS_OPERATOR: 'Register as operator',
184
+ UNREGISTER_OPERATOR: 'Unregister operator',
185
+ MUTE: 'Mute',
186
+ UNMUTE: 'Unmute',
187
+ BAN: 'Ban',
188
+ UNBAN: 'Unban',
134
189
  ...(overrides === null || overrides === void 0 ? void 0 : overrides.LABELS)
135
190
  },
136
191
  FILE_VIEWER: {
@@ -139,10 +194,10 @@ const createBaseStringSet = _ref => {
139
194
 
140
195
  return ((_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.nickname) || USER_NO_NAME;
141
196
  },
142
- SUBTITLE: message => (0, _uikitUtils.messageTime)(new Date(message.createdAt), dateLocale)
197
+ SUBTITLE: message => (0, _uikitUtils.getMessageTimeFormat)(new Date(message.createdAt), dateLocale)
143
198
  },
144
199
  PLACEHOLDER: {
145
- NO_BANNED_MEMBERS: 'No banned members',
200
+ NO_BANNED_USERS: 'No banned users',
146
201
  NO_USERS: 'No users',
147
202
  NO_CHANNELS: 'No channels',
148
203
  NO_MESSAGES: 'No messages',
@@ -157,12 +212,12 @@ const createBaseStringSet = _ref => {
157
212
  },
158
213
  DIALOG: {
159
214
  ALERT_DEFAULT_OK: 'OK',
160
- ALERT_PERMISSIONS_TITLE: 'Allow permission',
215
+ ALERT_PERMISSIONS_TITLE: 'Allow access?',
161
216
  ALERT_PERMISSIONS_MESSAGE: function (permission) {
162
217
  let appName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'Application';
163
- return `${appName} need permission to access your ${permission}. Go to Settings to allow access`;
218
+ return `${appName} need permission to access your ${permission}.`;
164
219
  },
165
- ALERT_PERMISSIONS_OK: 'SETTINGS',
220
+ ALERT_PERMISSIONS_OK: 'Go to settings',
166
221
  PROMPT_DEFAULT_OK: 'Submit',
167
222
  PROMPT_DEFAULT_CANCEL: 'Cancel',
168
223
  PROMPT_DEFAULT_PLACEHOLDER: 'Enter',
@@ -184,6 +239,12 @@ const createBaseStringSet = _ref => {
184
239
  TURN_OFF_NOTIFICATIONS_ERROR: "Couldn't turn off notifications.",
185
240
  LEAVE_CHANNEL_ERROR: "Couldn't leave channel.",
186
241
  ...(overrides === null || overrides === void 0 ? void 0 : overrides.TOAST)
242
+ },
243
+ PROFILE_CARD: {
244
+ BUTTON_MESSAGE: 'Message',
245
+ BODY_LABEL: 'User ID',
246
+ BODY: user => user.userId,
247
+ ...(overrides === null || overrides === void 0 ? void 0 : overrides.PROFILE_CARD)
187
248
  }
188
249
  };
189
250
  };
@@ -1 +1 @@
1
- {"version":3,"names":["createBaseStringSet","dateLocale","overrides","USER_NO_NAME","LABELS","CHANNEL_NO_MEMBERS","GROUP_CHANNEL","HEADER_TITLE","currentUserId","channel","getGroupChannelTitle","LIST_BANNER_FROZEN","LIST_DATE_SEPARATOR","date","locale","dateSeparator","LIST_BUTTON_NEW_MSG","newMessages","length","MESSAGE_BUBBLE_TIME","message","messageTime","Date","createdAt","MESSAGE_BUBBLE_FILE_TITLE","name","MESSAGE_BUBBLE_EDITED_POSTFIX","MESSAGE_BUBBLE_UNKNOWN_TITLE","MESSAGE_BUBBLE_UNKNOWN_DESC","INPUT_PLACEHOLDER_ACTIVE","INPUT_PLACEHOLDER_DISABLED","INPUT_EDIT_OK","INPUT_EDIT_CANCEL","DIALOG_MESSAGE_COPY","DIALOG_MESSAGE_EDIT","DIALOG_MESSAGE_SAVE","DIALOG_MESSAGE_DELETE","DIALOG_MESSAGE_DELETE_CONFIRM_TITLE","DIALOG_MESSAGE_DELETE_CONFIRM_OK","DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL","DIALOG_MESSAGE_FAILED_RETRY","DIALOG_MESSAGE_FAILED_REMOVE","DIALOG_ATTACHMENT_CAMERA","DIALOG_ATTACHMENT_PHOTO_LIBRARY","DIALOG_ATTACHMENT_FILES","GROUP_CHANNEL_SETTINGS","HEADER_RIGHT","MENU_NOTIFICATION","MENU_MEMBERS","MENU_LEAVE_CHANNEL","DIALOG_CHANGE_NAME","DIALOG_CHANGE_NAME_PROMPT_TITLE","DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER","DIALOG_CHANGE_NAME_PROMPT_OK","DIALOG_CHANGE_NAME_PROMPT_CANCEL","DIALOG_CHANGE_IMAGE","DIALOG_CHANGE_IMAGE_MENU_TITLE","DIALOG_CHANGE_IMAGE_MENU_CAMERA","DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY","GROUP_CHANNEL_LIST","CHANNEL_PREVIEW_TITLE","CHANNEL_PREVIEW_TITLE_CAPTION","getGroupChannelPreviewTime","CHANNEL_PREVIEW_BODY","getGroupChannelLastMessage","TYPE_SELECTOR_HEADER_TITLE","TYPE_SELECTOR_GROUP","TYPE_SELECTOR_SUPER_GROUP","TYPE_SELECTOR_BROADCAST","DIALOG_CHANNEL_TITLE","DIALOG_CHANNEL_NOTIFICATION","myPushTriggerOption","DIALOG_CHANNEL_LEAVE","GROUP_CHANNEL_MEMBERS","USER_BAR_ME_POSTFIX","USER_BAR_OPERATOR","DIALOG_USER_DISMISS_OPERATOR","DIALOG_USER_MUTE","DIALOG_USER_BAN","GROUP_CHANNEL_CREATE","selectedUsers","len","GROUP_CHANNEL_INVITE","TYPING_INDICATOR_TYPINGS","users","NO_NAME","userNames","map","u","nickname","join","FILE_VIEWER","TITLE","sender","SUBTITLE","PLACEHOLDER","NO_BANNED_MEMBERS","NO_USERS","NO_CHANNELS","NO_MESSAGES","NO_MUTED_MEMBERS","NO_RESULTS_FOUND","ERROR","MESSAGE","RETRY_LABEL","DIALOG","ALERT_DEFAULT_OK","ALERT_PERMISSIONS_TITLE","ALERT_PERMISSIONS_MESSAGE","permission","appName","ALERT_PERMISSIONS_OK","PROMPT_DEFAULT_OK","PROMPT_DEFAULT_CANCEL","PROMPT_DEFAULT_PLACEHOLDER","TOAST","COPY_OK","DOWNLOAD_START","DOWNLOAD_OK","DOWNLOAD_ERROR","OPEN_CAMERA_ERROR","OPEN_FILES_ERROR","OPEN_PHOTO_LIBRARY_ERROR","DELETE_MSG_ERROR","RESEND_MSG_ERROR","SEND_MSG_ERROR","UPDATE_MSG_ERROR","TURN_ON_NOTIFICATIONS_ERROR","TURN_OFF_NOTIFICATIONS_ERROR","LEAVE_CHANNEL_ERROR"],"sources":["StringSet.type.ts"],"sourcesContent":["import type { Locale } from 'date-fns';\n\nimport type {\n PartialDeep,\n SendbirdFileMessage,\n SendbirdGroupChannel,\n SendbirdMessage,\n SendbirdUser,\n} from '@sendbird/uikit-utils';\nimport {\n dateSeparator,\n getGroupChannelLastMessage,\n getGroupChannelPreviewTime,\n getGroupChannelTitle,\n messageTime,\n} from '@sendbird/uikit-utils';\n\n/**\n * StringSet interface\n * Do not configure over 3 depths (for overrides easy)\n * */\nexport interface StringSet {\n GROUP_CHANNEL: {\n /** GroupChannel > Header */\n HEADER_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n\n /** GroupChannel > List */\n LIST_BANNER_FROZEN: string;\n LIST_DATE_SEPARATOR: (date: Date, locale?: Locale) => string;\n LIST_BUTTON_NEW_MSG: (newMessages: SendbirdMessage[]) => string;\n\n /** GroupChannel > Message bubble */\n MESSAGE_BUBBLE_TIME: (message: SendbirdMessage, locale?: Locale) => string;\n MESSAGE_BUBBLE_FILE_TITLE: (message: SendbirdFileMessage) => string;\n MESSAGE_BUBBLE_EDITED_POSTFIX: string;\n MESSAGE_BUBBLE_UNKNOWN_TITLE: (message: SendbirdMessage) => string;\n MESSAGE_BUBBLE_UNKNOWN_DESC: (message: SendbirdMessage) => string;\n\n /** GroupChannel > Input */\n INPUT_PLACEHOLDER_ACTIVE: string;\n INPUT_PLACEHOLDER_DISABLED: string;\n INPUT_EDIT_OK: string;\n INPUT_EDIT_CANCEL: string;\n\n /** GroupChannel > Dialog > Message */\n DIALOG_MESSAGE_COPY: string;\n DIALOG_MESSAGE_EDIT: string;\n DIALOG_MESSAGE_SAVE: string;\n DIALOG_MESSAGE_DELETE: string;\n /** GroupChannel > Dialog > Message > Delete confirm */\n DIALOG_MESSAGE_DELETE_CONFIRM_TITLE: string;\n DIALOG_MESSAGE_DELETE_CONFIRM_OK: string;\n DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL: string;\n /** GroupChannel > Dialog > Message > Failed */\n DIALOG_MESSAGE_FAILED_RETRY: string;\n DIALOG_MESSAGE_FAILED_REMOVE: string;\n\n /** GroupChannel > Dialog > Attachments */\n DIALOG_ATTACHMENT_CAMERA: string;\n DIALOG_ATTACHMENT_PHOTO_LIBRARY: string;\n DIALOG_ATTACHMENT_FILES: string;\n };\n GROUP_CHANNEL_SETTINGS: {\n /** GroupChannelSettings > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: string;\n\n /** GroupChannelSettings > Menu */\n MENU_NOTIFICATION: string;\n MENU_MEMBERS: string;\n MENU_LEAVE_CHANNEL: string;\n\n /** GroupChannelSettings > Dialog */\n DIALOG_CHANGE_NAME: string;\n DIALOG_CHANGE_IMAGE: string;\n DIALOG_CHANGE_NAME_PROMPT_TITLE: string;\n DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER: string;\n DIALOG_CHANGE_NAME_PROMPT_CANCEL: string;\n DIALOG_CHANGE_NAME_PROMPT_OK: string;\n DIALOG_CHANGE_IMAGE_MENU_TITLE: string;\n DIALOG_CHANGE_IMAGE_MENU_CAMERA: string;\n DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: string;\n };\n GROUP_CHANNEL_LIST: {\n /** GroupChannelList > Header */\n HEADER_TITLE: string;\n\n /** GroupChannelList > Channel preview */\n CHANNEL_PREVIEW_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n CHANNEL_PREVIEW_TITLE_CAPTION: (channel: SendbirdGroupChannel, locale?: Locale) => string;\n CHANNEL_PREVIEW_BODY: (channel: SendbirdGroupChannel) => string;\n\n /** GroupChannelList > TypeSelector > Header */\n TYPE_SELECTOR_HEADER_TITLE: string;\n /** GroupChannelList > TypeSelector > Type string */\n TYPE_SELECTOR_GROUP: string;\n TYPE_SELECTOR_SUPER_GROUP: string;\n TYPE_SELECTOR_BROADCAST: string;\n\n /** GroupChannelList > Dialog > Channel */\n DIALOG_CHANNEL_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n DIALOG_CHANNEL_NOTIFICATION: (channel?: SendbirdGroupChannel) => string;\n DIALOG_CHANNEL_LEAVE: string;\n };\n GROUP_CHANNEL_MEMBERS: {\n /** GroupChannelMembers > Header */\n HEADER_TITLE: string;\n\n /** GroupChannelMembers > UserBar */\n USER_BAR_ME_POSTFIX: string;\n USER_BAR_OPERATOR: string;\n\n /** GroupChannelMembers > Dialog */\n DIALOG_USER_DISMISS_OPERATOR: string;\n DIALOG_USER_MUTE: string;\n DIALOG_USER_BAN: string;\n };\n GROUP_CHANNEL_INVITE: {\n /** GroupChannelInvite > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: <T>(params: { selectedUsers: Array<T> }) => string;\n };\n GROUP_CHANNEL_CREATE: {\n /** GroupChannelCreate > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: <T>(params: { selectedUsers: Array<T> }) => string;\n };\n // UI\n LABELS: {\n USER_NO_NAME: string;\n CHANNEL_NO_MEMBERS: string;\n TYPING_INDICATOR_TYPINGS: (users: SendbirdUser[]) => string | undefined;\n };\n FILE_VIEWER: {\n TITLE: (message: SendbirdFileMessage) => string;\n SUBTITLE: (message: SendbirdFileMessage) => string;\n };\n PLACEHOLDER: {\n NO_BANNED_MEMBERS: string;\n NO_USERS: string;\n NO_CHANNELS: string;\n NO_MESSAGES: string;\n NO_MUTED_MEMBERS: string;\n NO_RESULTS_FOUND: string;\n ERROR: {\n MESSAGE: string;\n RETRY_LABEL: string;\n };\n };\n DIALOG: {\n ALERT_DEFAULT_OK: string;\n\n ALERT_PERMISSIONS_TITLE: string;\n ALERT_PERMISSIONS_MESSAGE: (permission: string, appName: string) => string;\n ALERT_PERMISSIONS_OK: string;\n\n PROMPT_DEFAULT_OK: string;\n PROMPT_DEFAULT_CANCEL: string;\n PROMPT_DEFAULT_PLACEHOLDER: string;\n };\n TOAST: {\n COPY_OK: string;\n DOWNLOAD_START: string;\n DOWNLOAD_OK: string;\n DOWNLOAD_ERROR: string;\n OPEN_CAMERA_ERROR: string;\n OPEN_PHOTO_LIBRARY_ERROR: string;\n OPEN_FILES_ERROR: string;\n RESEND_MSG_ERROR: string;\n DELETE_MSG_ERROR: string;\n SEND_MSG_ERROR: string;\n UPDATE_MSG_ERROR: string;\n TURN_ON_NOTIFICATIONS_ERROR: string;\n TURN_OFF_NOTIFICATIONS_ERROR: string;\n LEAVE_CHANNEL_ERROR: string;\n };\n}\n\ntype StringSetCreateOptions = {\n dateLocale: Locale;\n overrides?: PartialDeep<StringSet>;\n};\n\n/**\n * Create string set\n * You can create localized String set, you should provide locale for date and string as a parameters\n *\n * @param {StringSetCreateOptions.dateLocale} dateLocale Date locale (from date-fns)\n * @param {StringSetCreateOptions.overrides} [overrides] Localized strings\n * */\nexport const createBaseStringSet = ({ dateLocale, overrides }: StringSetCreateOptions): StringSet => {\n const USER_NO_NAME = overrides?.LABELS?.USER_NO_NAME ?? '(No name)';\n const CHANNEL_NO_MEMBERS = overrides?.LABELS?.CHANNEL_NO_MEMBERS ?? '(No members)';\n return {\n GROUP_CHANNEL: {\n HEADER_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n LIST_BANNER_FROZEN: 'Channel is frozen',\n LIST_DATE_SEPARATOR: (date, locale) => dateSeparator(date, locale ?? dateLocale),\n LIST_BUTTON_NEW_MSG: (newMessages) => `${newMessages.length} new messages`,\n\n MESSAGE_BUBBLE_TIME: (message, locale) => messageTime(new Date(message.createdAt), locale ?? dateLocale),\n MESSAGE_BUBBLE_FILE_TITLE: (message) => message.name,\n MESSAGE_BUBBLE_EDITED_POSTFIX: ' (edited)',\n MESSAGE_BUBBLE_UNKNOWN_TITLE: () => '(Unknown message type)',\n MESSAGE_BUBBLE_UNKNOWN_DESC: () => 'Cannot read this message.',\n\n INPUT_PLACEHOLDER_ACTIVE: 'Enter message',\n INPUT_PLACEHOLDER_DISABLED: 'Chat is unavailable in this channel',\n INPUT_EDIT_OK: 'Save',\n INPUT_EDIT_CANCEL: 'Cancel',\n\n DIALOG_MESSAGE_COPY: 'Copy',\n DIALOG_MESSAGE_EDIT: 'Edit',\n DIALOG_MESSAGE_SAVE: 'Save',\n DIALOG_MESSAGE_DELETE: 'Delete',\n DIALOG_MESSAGE_DELETE_CONFIRM_TITLE: 'Delete message?',\n DIALOG_MESSAGE_DELETE_CONFIRM_OK: 'Delete',\n DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL: 'Cancel',\n DIALOG_MESSAGE_FAILED_RETRY: 'Retry',\n DIALOG_MESSAGE_FAILED_REMOVE: 'Remove',\n\n DIALOG_ATTACHMENT_CAMERA: 'Camera',\n DIALOG_ATTACHMENT_PHOTO_LIBRARY: 'Photo library',\n DIALOG_ATTACHMENT_FILES: 'Files',\n ...overrides?.GROUP_CHANNEL,\n },\n GROUP_CHANNEL_SETTINGS: {\n HEADER_TITLE: 'Channel information',\n HEADER_RIGHT: 'Edit',\n MENU_NOTIFICATION: 'Notifications',\n MENU_MEMBERS: 'Members',\n MENU_LEAVE_CHANNEL: 'Leave channel',\n DIALOG_CHANGE_NAME: 'Change channel name',\n DIALOG_CHANGE_NAME_PROMPT_TITLE: 'Change channel name',\n DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER: 'Enter name',\n DIALOG_CHANGE_NAME_PROMPT_OK: 'Save',\n DIALOG_CHANGE_NAME_PROMPT_CANCEL: 'Cancel',\n DIALOG_CHANGE_IMAGE: 'Change channel image',\n DIALOG_CHANGE_IMAGE_MENU_TITLE: 'Change channel image',\n DIALOG_CHANGE_IMAGE_MENU_CAMERA: 'Take photo',\n DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: 'Choose photo',\n ...overrides?.GROUP_CHANNEL_SETTINGS,\n },\n GROUP_CHANNEL_LIST: {\n HEADER_TITLE: 'Channels',\n CHANNEL_PREVIEW_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n CHANNEL_PREVIEW_TITLE_CAPTION: (channel, locale) => getGroupChannelPreviewTime(channel, locale ?? dateLocale),\n CHANNEL_PREVIEW_BODY: (channel) => getGroupChannelLastMessage(channel),\n TYPE_SELECTOR_HEADER_TITLE: 'Channel type',\n TYPE_SELECTOR_GROUP: 'Group',\n TYPE_SELECTOR_SUPER_GROUP: 'Super group',\n TYPE_SELECTOR_BROADCAST: 'Broadcast',\n DIALOG_CHANNEL_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n DIALOG_CHANNEL_NOTIFICATION: (channel) => {\n if (!channel) return '';\n if (channel.myPushTriggerOption === 'off') return 'Turn on notifications';\n return 'Turn off notifications';\n },\n DIALOG_CHANNEL_LEAVE: 'Leave channel',\n ...overrides?.GROUP_CHANNEL_LIST,\n },\n GROUP_CHANNEL_MEMBERS: {\n HEADER_TITLE: 'Members',\n USER_BAR_ME_POSTFIX: ' (You)',\n USER_BAR_OPERATOR: 'Operator',\n DIALOG_USER_DISMISS_OPERATOR: 'Dismiss operator',\n DIALOG_USER_MUTE: 'Mute',\n DIALOG_USER_BAN: 'Ban',\n ...overrides?.GROUP_CHANNEL_MEMBERS,\n },\n GROUP_CHANNEL_CREATE: {\n HEADER_TITLE: 'New channel',\n HEADER_RIGHT: ({ selectedUsers }) => {\n const len = selectedUsers.length;\n if (len === 0) return 'Create';\n return `Create (${len})`;\n },\n ...overrides?.GROUP_CHANNEL_CREATE,\n },\n GROUP_CHANNEL_INVITE: {\n HEADER_TITLE: 'Invite users',\n HEADER_RIGHT: ({ selectedUsers }) => {\n const len = selectedUsers.length;\n if (len === 0) return 'Invite';\n return `Invite (${len})`;\n },\n ...overrides?.GROUP_CHANNEL_INVITE,\n },\n LABELS: {\n USER_NO_NAME,\n CHANNEL_NO_MEMBERS,\n TYPING_INDICATOR_TYPINGS: (users, NO_NAME = USER_NO_NAME) => {\n const userNames = users.map((u) => u.nickname || NO_NAME);\n if (userNames.length === 0) return;\n if (userNames.length === 1) return `${userNames[0]} is typing...`;\n if (users.length === 2) return `${userNames.join(' and ')} are typing...`;\n return 'Several people are typing...';\n },\n ...overrides?.LABELS,\n },\n FILE_VIEWER: {\n TITLE: (message) => message.sender?.nickname || USER_NO_NAME,\n SUBTITLE: (message) => messageTime(new Date(message.createdAt), dateLocale),\n },\n PLACEHOLDER: {\n NO_BANNED_MEMBERS: 'No banned members',\n NO_USERS: 'No users',\n NO_CHANNELS: 'No channels',\n NO_MESSAGES: 'No messages',\n NO_MUTED_MEMBERS: 'No muted members',\n NO_RESULTS_FOUND: 'No results found',\n ...overrides?.PLACEHOLDER,\n ERROR: {\n MESSAGE: 'Something went wrong',\n RETRY_LABEL: 'Retry',\n ...overrides?.PLACEHOLDER?.ERROR,\n },\n },\n DIALOG: {\n ALERT_DEFAULT_OK: 'OK',\n ALERT_PERMISSIONS_TITLE: 'Allow permission',\n ALERT_PERMISSIONS_MESSAGE: (permission, appName = 'Application') => {\n return `${appName} need permission to access your ${permission}. Go to Settings to allow access`;\n },\n ALERT_PERMISSIONS_OK: 'SETTINGS',\n PROMPT_DEFAULT_OK: 'Submit',\n PROMPT_DEFAULT_CANCEL: 'Cancel',\n PROMPT_DEFAULT_PLACEHOLDER: 'Enter',\n ...overrides?.DIALOG,\n },\n TOAST: {\n COPY_OK: 'Copied',\n DOWNLOAD_START: 'Downloading...',\n DOWNLOAD_OK: 'File saved',\n DOWNLOAD_ERROR: \"Couldn't download file.\",\n OPEN_CAMERA_ERROR: \"Couldn't open camera.\",\n OPEN_FILES_ERROR: \"Couldn't open files.\",\n OPEN_PHOTO_LIBRARY_ERROR: \"Couldn't open photo library.\",\n DELETE_MSG_ERROR: \"Couldn't delete message.\",\n RESEND_MSG_ERROR: \"Couldn't send message.\",\n SEND_MSG_ERROR: \"Couldn't send message.\",\n UPDATE_MSG_ERROR: \"Couldn't edit message.\",\n TURN_ON_NOTIFICATIONS_ERROR: \"Couldn't turn on notifications.\",\n TURN_OFF_NOTIFICATIONS_ERROR: \"Couldn't turn off notifications.\",\n LEAVE_CHANNEL_ERROR: \"Couldn't leave channel.\",\n ...overrides?.TOAST,\n },\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["createBaseStringSet","dateLocale","overrides","USER_NO_NAME","LABELS","CHANNEL_NO_MEMBERS","GROUP_CHANNEL","HEADER_TITLE","currentUserId","channel","getGroupChannelTitle","LIST_BANNER_FROZEN","LIST_DATE_SEPARATOR","date","locale","getDateSeparatorFormat","LIST_BUTTON_NEW_MSG","newMessages","length","MESSAGE_BUBBLE_TIME","message","getMessageTimeFormat","Date","createdAt","MESSAGE_BUBBLE_FILE_TITLE","name","MESSAGE_BUBBLE_EDITED_POSTFIX","MESSAGE_BUBBLE_UNKNOWN_TITLE","MESSAGE_BUBBLE_UNKNOWN_DESC","INPUT_PLACEHOLDER_ACTIVE","INPUT_PLACEHOLDER_DISABLED","INPUT_PLACEHOLDER_MUTED","INPUT_EDIT_OK","INPUT_EDIT_CANCEL","MENTION_LIMITED","mentionLimit","DIALOG_MESSAGE_COPY","DIALOG_MESSAGE_EDIT","DIALOG_MESSAGE_SAVE","DIALOG_MESSAGE_DELETE","DIALOG_MESSAGE_DELETE_CONFIRM_TITLE","DIALOG_MESSAGE_DELETE_CONFIRM_OK","DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL","DIALOG_MESSAGE_FAILED_RETRY","DIALOG_MESSAGE_FAILED_REMOVE","DIALOG_ATTACHMENT_CAMERA","DIALOG_ATTACHMENT_PHOTO_LIBRARY","DIALOG_ATTACHMENT_FILES","GROUP_CHANNEL_SETTINGS","HEADER_RIGHT","MENU_MODERATION","MENU_MEMBERS","MENU_LEAVE_CHANNEL","MENU_NOTIFICATION","MENU_NOTIFICATION_LABEL_ON","MENU_NOTIFICATION_LABEL_OFF","MENU_NOTIFICATION_LABEL_MENTION_ONLY","DIALOG_CHANGE_NAME","DIALOG_CHANGE_NAME_PROMPT_TITLE","DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER","DIALOG_CHANGE_NAME_PROMPT_OK","DIALOG_CHANGE_NAME_PROMPT_CANCEL","DIALOG_CHANGE_IMAGE","DIALOG_CHANGE_IMAGE_MENU_TITLE","DIALOG_CHANGE_IMAGE_MENU_CAMERA","DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY","GROUP_CHANNEL_NOTIFICATIONS","MENU_NOTIFICATIONS","MENU_NOTIFICATIONS_DESC","MENU_NOTIFICATIONS_OPTION_ALL","MENU_NOTIFICATIONS_OPTION_MENTION_ONLY","GROUP_CHANNEL_MODERATION","MENU_OPERATORS","MENU_MUTED_MEMBERS","MENU_BANNED_USERS","MENU_FREEZE_CHANNEL","GROUP_CHANNEL_OPERATORS","GROUP_CHANNEL_REGISTER_OPERATOR","selectedUsers","len","GROUP_CHANNEL_MUTED_MEMBERS","GROUP_CHANNEL_BANNED_USERS","GROUP_CHANNEL_LIST","CHANNEL_PREVIEW_TITLE","CHANNEL_PREVIEW_TITLE_CAPTION","getGroupChannelPreviewTime","CHANNEL_PREVIEW_BODY","getGroupChannelLastMessage","TYPE_SELECTOR_HEADER_TITLE","TYPE_SELECTOR_GROUP","TYPE_SELECTOR_SUPER_GROUP","TYPE_SELECTOR_BROADCAST","DIALOG_CHANNEL_TITLE","DIALOG_CHANNEL_NOTIFICATION","myPushTriggerOption","DIALOG_CHANNEL_LEAVE","GROUP_CHANNEL_MEMBERS","USER_BAR_ME_POSTFIX","USER_BAR_OPERATOR","GROUP_CHANNEL_CREATE","GROUP_CHANNEL_INVITE","TYPING_INDICATOR_TYPINGS","users","NO_NAME","userNames","map","u","nickname","join","REGISTER_AS_OPERATOR","UNREGISTER_OPERATOR","MUTE","UNMUTE","BAN","UNBAN","FILE_VIEWER","TITLE","sender","SUBTITLE","PLACEHOLDER","NO_BANNED_USERS","NO_USERS","NO_CHANNELS","NO_MESSAGES","NO_MUTED_MEMBERS","NO_RESULTS_FOUND","ERROR","MESSAGE","RETRY_LABEL","DIALOG","ALERT_DEFAULT_OK","ALERT_PERMISSIONS_TITLE","ALERT_PERMISSIONS_MESSAGE","permission","appName","ALERT_PERMISSIONS_OK","PROMPT_DEFAULT_OK","PROMPT_DEFAULT_CANCEL","PROMPT_DEFAULT_PLACEHOLDER","TOAST","COPY_OK","DOWNLOAD_START","DOWNLOAD_OK","DOWNLOAD_ERROR","OPEN_CAMERA_ERROR","OPEN_FILES_ERROR","OPEN_PHOTO_LIBRARY_ERROR","DELETE_MSG_ERROR","RESEND_MSG_ERROR","SEND_MSG_ERROR","UPDATE_MSG_ERROR","TURN_ON_NOTIFICATIONS_ERROR","TURN_OFF_NOTIFICATIONS_ERROR","LEAVE_CHANNEL_ERROR","PROFILE_CARD","BUTTON_MESSAGE","BODY_LABEL","BODY","user","userId"],"sources":["StringSet.type.ts"],"sourcesContent":["import type { Locale } from 'date-fns';\n\nimport type {\n PartialDeep,\n SendbirdFileMessage,\n SendbirdGroupChannel,\n SendbirdMember,\n SendbirdMessage,\n SendbirdUser,\n} from '@sendbird/uikit-utils';\nimport {\n getDateSeparatorFormat,\n getGroupChannelLastMessage,\n getGroupChannelPreviewTime,\n getGroupChannelTitle,\n getMessageTimeFormat,\n} from '@sendbird/uikit-utils';\n\n/**\n * StringSet interface\n * Do not configure over 3 depths (for overrides easy)\n * */\nexport interface StringSet {\n GROUP_CHANNEL: {\n /** GroupChannel > Header */\n HEADER_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n\n /** GroupChannel > List */\n LIST_BANNER_FROZEN: string;\n LIST_DATE_SEPARATOR: (date: Date, locale?: Locale) => string;\n LIST_BUTTON_NEW_MSG: (newMessages: SendbirdMessage[]) => string;\n\n /** GroupChannel > Message bubble */\n MESSAGE_BUBBLE_TIME: (message: SendbirdMessage, locale?: Locale) => string;\n MESSAGE_BUBBLE_FILE_TITLE: (message: SendbirdFileMessage) => string;\n MESSAGE_BUBBLE_EDITED_POSTFIX: string;\n MESSAGE_BUBBLE_UNKNOWN_TITLE: (message: SendbirdMessage) => string;\n MESSAGE_BUBBLE_UNKNOWN_DESC: (message: SendbirdMessage) => string;\n\n /** GroupChannel > Input */\n INPUT_PLACEHOLDER_ACTIVE: string;\n INPUT_PLACEHOLDER_DISABLED: string;\n INPUT_PLACEHOLDER_MUTED: string;\n INPUT_EDIT_OK: string;\n INPUT_EDIT_CANCEL: string;\n\n /** GroupChannel > Suggested mention list */\n MENTION_LIMITED: (mentionLimit: number) => string;\n\n /** GroupChannel > Dialog > Message */\n DIALOG_MESSAGE_COPY: string;\n DIALOG_MESSAGE_EDIT: string;\n DIALOG_MESSAGE_SAVE: string;\n DIALOG_MESSAGE_DELETE: string;\n /** GroupChannel > Dialog > Message > Delete confirm */\n DIALOG_MESSAGE_DELETE_CONFIRM_TITLE: string;\n DIALOG_MESSAGE_DELETE_CONFIRM_OK: string;\n DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL: string;\n /** GroupChannel > Dialog > Message > Failed */\n DIALOG_MESSAGE_FAILED_RETRY: string;\n DIALOG_MESSAGE_FAILED_REMOVE: string;\n\n /** GroupChannel > Dialog > Attachments */\n DIALOG_ATTACHMENT_CAMERA: string;\n DIALOG_ATTACHMENT_PHOTO_LIBRARY: string;\n DIALOG_ATTACHMENT_FILES: string;\n };\n GROUP_CHANNEL_SETTINGS: {\n /** GroupChannelSettings > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: string;\n\n /** GroupChannelSettings > Menu */\n MENU_MODERATION: string;\n MENU_MEMBERS: string;\n MENU_LEAVE_CHANNEL: string;\n MENU_NOTIFICATION: string;\n MENU_NOTIFICATION_LABEL_ON: string;\n MENU_NOTIFICATION_LABEL_OFF: string;\n MENU_NOTIFICATION_LABEL_MENTION_ONLY: string;\n\n /** GroupChannelSettings > Dialog */\n DIALOG_CHANGE_NAME: string;\n DIALOG_CHANGE_IMAGE: string;\n DIALOG_CHANGE_NAME_PROMPT_TITLE: string;\n DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER: string;\n DIALOG_CHANGE_NAME_PROMPT_CANCEL: string;\n DIALOG_CHANGE_NAME_PROMPT_OK: string;\n DIALOG_CHANGE_IMAGE_MENU_TITLE: string;\n DIALOG_CHANGE_IMAGE_MENU_CAMERA: string;\n DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: string;\n };\n GROUP_CHANNEL_NOTIFICATIONS: {\n /** GroupChannelNotifications > Header */\n HEADER_TITLE: string;\n\n /** GroupChannelNotifications > Menu */\n MENU_NOTIFICATIONS: string;\n MENU_NOTIFICATIONS_DESC: string;\n MENU_NOTIFICATIONS_OPTION_ALL: string;\n MENU_NOTIFICATIONS_OPTION_MENTION_ONLY: string;\n };\n GROUP_CHANNEL_MODERATION: {\n /** GroupChannelModeration > Header */\n HEADER_TITLE: string;\n\n /** GroupChannelModeration > Menu */\n MENU_OPERATORS: string;\n MENU_MUTED_MEMBERS: string;\n MENU_BANNED_USERS: string;\n MENU_FREEZE_CHANNEL: string;\n };\n GROUP_CHANNEL_OPERATORS: {\n /** GroupChannelOperators > Header */\n HEADER_TITLE: string;\n };\n GROUP_CHANNEL_REGISTER_OPERATOR: {\n /** GroupChannelRegisterOperator > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: (params: { selectedUsers: Array<SendbirdMember> }) => string;\n };\n GROUP_CHANNEL_MUTED_MEMBERS: {\n /** GroupChannelMutedMembers > Header */\n HEADER_TITLE: string;\n };\n GROUP_CHANNEL_BANNED_USERS: {\n /** GroupChannelBannedUsers > Header */\n HEADER_TITLE: string;\n };\n GROUP_CHANNEL_LIST: {\n /** GroupChannelList > Header */\n HEADER_TITLE: string;\n\n /** GroupChannelList > Channel preview */\n CHANNEL_PREVIEW_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n CHANNEL_PREVIEW_TITLE_CAPTION: (channel: SendbirdGroupChannel, locale?: Locale) => string;\n CHANNEL_PREVIEW_BODY: (channel: SendbirdGroupChannel) => string;\n\n /** GroupChannelList > TypeSelector > Header */\n TYPE_SELECTOR_HEADER_TITLE: string;\n /** GroupChannelList > TypeSelector > Type string */\n TYPE_SELECTOR_GROUP: string;\n TYPE_SELECTOR_SUPER_GROUP: string;\n TYPE_SELECTOR_BROADCAST: string;\n\n /** GroupChannelList > Dialog > Channel */\n DIALOG_CHANNEL_TITLE: (currentUserId: string, channel: SendbirdGroupChannel) => string;\n DIALOG_CHANNEL_NOTIFICATION: (channel?: SendbirdGroupChannel) => string;\n DIALOG_CHANNEL_LEAVE: string;\n };\n GROUP_CHANNEL_MEMBERS: {\n /** GroupChannelMembers > Header */\n HEADER_TITLE: string;\n\n /** @deprecated Please use in LABELS **/\n USER_BAR_ME_POSTFIX: string;\n /** @deprecated Please use in LABELS **/\n USER_BAR_OPERATOR: string;\n };\n GROUP_CHANNEL_INVITE: {\n /** GroupChannelInvite > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: <T>(params: { selectedUsers: Array<T> }) => string;\n };\n GROUP_CHANNEL_CREATE: {\n /** GroupChannelCreate > Header */\n HEADER_TITLE: string;\n HEADER_RIGHT: <T>(params: { selectedUsers: Array<T> }) => string;\n };\n // UI\n LABELS: {\n USER_NO_NAME: string;\n CHANNEL_NO_MEMBERS: string;\n TYPING_INDICATOR_TYPINGS: (users: SendbirdUser[]) => string | undefined;\n\n USER_BAR_ME_POSTFIX: string;\n USER_BAR_OPERATOR: string;\n\n REGISTER_AS_OPERATOR: string;\n UNREGISTER_OPERATOR: string;\n MUTE: string;\n UNMUTE: string;\n BAN: string;\n UNBAN: string;\n };\n FILE_VIEWER: {\n TITLE: (message: SendbirdFileMessage) => string;\n SUBTITLE: (message: SendbirdFileMessage) => string;\n };\n PLACEHOLDER: {\n NO_BANNED_USERS: string;\n NO_USERS: string;\n NO_CHANNELS: string;\n NO_MESSAGES: string;\n NO_MUTED_MEMBERS: string;\n NO_RESULTS_FOUND: string;\n ERROR: {\n MESSAGE: string;\n RETRY_LABEL: string;\n };\n };\n DIALOG: {\n ALERT_DEFAULT_OK: string;\n\n ALERT_PERMISSIONS_TITLE: string;\n ALERT_PERMISSIONS_MESSAGE: (permission: string, appName: string) => string;\n ALERT_PERMISSIONS_OK: string;\n\n PROMPT_DEFAULT_OK: string;\n PROMPT_DEFAULT_CANCEL: string;\n PROMPT_DEFAULT_PLACEHOLDER: string;\n };\n TOAST: {\n COPY_OK: string;\n DOWNLOAD_START: string;\n DOWNLOAD_OK: string;\n DOWNLOAD_ERROR: string;\n OPEN_CAMERA_ERROR: string;\n OPEN_PHOTO_LIBRARY_ERROR: string;\n OPEN_FILES_ERROR: string;\n RESEND_MSG_ERROR: string;\n DELETE_MSG_ERROR: string;\n SEND_MSG_ERROR: string;\n UPDATE_MSG_ERROR: string;\n TURN_ON_NOTIFICATIONS_ERROR: string;\n TURN_OFF_NOTIFICATIONS_ERROR: string;\n LEAVE_CHANNEL_ERROR: string;\n };\n PROFILE_CARD: {\n BUTTON_MESSAGE: string;\n BODY_LABEL: string;\n BODY: (user: SendbirdUser | SendbirdMember) => string;\n };\n}\n\ntype StringSetCreateOptions = {\n dateLocale: Locale;\n overrides?: PartialDeep<StringSet>;\n};\n\n/**\n * Create string set\n * You can create localized String set, you should provide locale for date and string as a parameters\n *\n * @param {StringSetCreateOptions.dateLocale} dateLocale Date locale (from date-fns)\n * @param {StringSetCreateOptions.overrides} [overrides] Localized strings\n * */\nexport const createBaseStringSet = ({ dateLocale, overrides }: StringSetCreateOptions): StringSet => {\n const USER_NO_NAME = overrides?.LABELS?.USER_NO_NAME ?? '(No name)';\n const CHANNEL_NO_MEMBERS = overrides?.LABELS?.CHANNEL_NO_MEMBERS ?? '(No members)';\n return {\n GROUP_CHANNEL: {\n HEADER_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n LIST_BANNER_FROZEN: 'Channel is frozen',\n LIST_DATE_SEPARATOR: (date, locale) => getDateSeparatorFormat(date, locale ?? dateLocale),\n LIST_BUTTON_NEW_MSG: (newMessages) => `${newMessages.length} new messages`,\n\n MESSAGE_BUBBLE_TIME: (message, locale) => getMessageTimeFormat(new Date(message.createdAt), locale ?? dateLocale),\n MESSAGE_BUBBLE_FILE_TITLE: (message) => message.name,\n MESSAGE_BUBBLE_EDITED_POSTFIX: ' (edited)',\n MESSAGE_BUBBLE_UNKNOWN_TITLE: () => '(Unknown message type)',\n MESSAGE_BUBBLE_UNKNOWN_DESC: () => 'Cannot read this message.',\n\n INPUT_PLACEHOLDER_ACTIVE: 'Enter message',\n INPUT_PLACEHOLDER_DISABLED: 'Chat not available in this channel.',\n INPUT_PLACEHOLDER_MUTED: \"You're muted by the operator.\",\n INPUT_EDIT_OK: 'Save',\n INPUT_EDIT_CANCEL: 'Cancel',\n\n MENTION_LIMITED: (mentionLimit) => `You can have up to ${mentionLimit} mentions per message.`,\n\n DIALOG_MESSAGE_COPY: 'Copy',\n DIALOG_MESSAGE_EDIT: 'Edit',\n DIALOG_MESSAGE_SAVE: 'Save',\n DIALOG_MESSAGE_DELETE: 'Delete',\n DIALOG_MESSAGE_DELETE_CONFIRM_TITLE: 'Delete message?',\n DIALOG_MESSAGE_DELETE_CONFIRM_OK: 'Delete',\n DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL: 'Cancel',\n DIALOG_MESSAGE_FAILED_RETRY: 'Retry',\n DIALOG_MESSAGE_FAILED_REMOVE: 'Remove',\n\n DIALOG_ATTACHMENT_CAMERA: 'Camera',\n DIALOG_ATTACHMENT_PHOTO_LIBRARY: 'Photo library',\n DIALOG_ATTACHMENT_FILES: 'Files',\n ...overrides?.GROUP_CHANNEL,\n },\n GROUP_CHANNEL_SETTINGS: {\n HEADER_TITLE: 'Channel information',\n HEADER_RIGHT: 'Edit',\n MENU_MODERATION: 'Moderation',\n MENU_MEMBERS: 'Members',\n MENU_LEAVE_CHANNEL: 'Leave channel',\n MENU_NOTIFICATION: 'Notifications',\n MENU_NOTIFICATION_LABEL_ON: 'On',\n MENU_NOTIFICATION_LABEL_OFF: 'Off',\n MENU_NOTIFICATION_LABEL_MENTION_ONLY: 'Mentions only',\n DIALOG_CHANGE_NAME: 'Change channel name',\n DIALOG_CHANGE_NAME_PROMPT_TITLE: 'Change channel name',\n DIALOG_CHANGE_NAME_PROMPT_PLACEHOLDER: 'Enter name',\n DIALOG_CHANGE_NAME_PROMPT_OK: 'Save',\n DIALOG_CHANGE_NAME_PROMPT_CANCEL: 'Cancel',\n DIALOG_CHANGE_IMAGE: 'Change channel image',\n DIALOG_CHANGE_IMAGE_MENU_TITLE: 'Change channel image',\n DIALOG_CHANGE_IMAGE_MENU_CAMERA: 'Take photo',\n DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: 'Choose photo',\n ...overrides?.GROUP_CHANNEL_SETTINGS,\n },\n GROUP_CHANNEL_NOTIFICATIONS: {\n HEADER_TITLE: 'Notifications',\n MENU_NOTIFICATIONS: 'Notifications',\n MENU_NOTIFICATIONS_DESC:\n 'Turn on push notifications if you wish to be notified when messages are delivered to this channel.',\n MENU_NOTIFICATIONS_OPTION_ALL: 'All new messages',\n MENU_NOTIFICATIONS_OPTION_MENTION_ONLY: 'Mentions only',\n ...overrides?.GROUP_CHANNEL_NOTIFICATIONS,\n },\n GROUP_CHANNEL_MODERATION: {\n HEADER_TITLE: 'Moderation',\n MENU_OPERATORS: 'Operators',\n MENU_MUTED_MEMBERS: 'Muted members',\n MENU_BANNED_USERS: 'Banned users',\n MENU_FREEZE_CHANNEL: 'Freeze channel',\n ...overrides?.GROUP_CHANNEL_MODERATION,\n },\n GROUP_CHANNEL_OPERATORS: {\n HEADER_TITLE: 'Operators',\n ...overrides?.GROUP_CHANNEL_OPERATORS,\n },\n GROUP_CHANNEL_REGISTER_OPERATOR: {\n HEADER_TITLE: 'Set as operators',\n HEADER_RIGHT: ({ selectedUsers }) => {\n const len = selectedUsers.length;\n if (len === 0) return 'Add';\n return `Add (${len})`;\n },\n ...overrides?.GROUP_CHANNEL_OPERATORS,\n },\n GROUP_CHANNEL_MUTED_MEMBERS: {\n HEADER_TITLE: 'Muted members',\n ...overrides?.GROUP_CHANNEL_MUTED_MEMBERS,\n },\n GROUP_CHANNEL_BANNED_USERS: {\n HEADER_TITLE: 'Banned users',\n ...overrides?.GROUP_CHANNEL_BANNED_USERS,\n },\n GROUP_CHANNEL_LIST: {\n HEADER_TITLE: 'Channels',\n CHANNEL_PREVIEW_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n CHANNEL_PREVIEW_TITLE_CAPTION: (channel, locale) => getGroupChannelPreviewTime(channel, locale ?? dateLocale),\n CHANNEL_PREVIEW_BODY: (channel) => getGroupChannelLastMessage(channel),\n TYPE_SELECTOR_HEADER_TITLE: 'Channel type',\n TYPE_SELECTOR_GROUP: 'Group',\n TYPE_SELECTOR_SUPER_GROUP: 'Super group',\n TYPE_SELECTOR_BROADCAST: 'Broadcast',\n DIALOG_CHANNEL_TITLE: (currentUserId, channel) =>\n getGroupChannelTitle(currentUserId, channel, USER_NO_NAME, CHANNEL_NO_MEMBERS),\n DIALOG_CHANNEL_NOTIFICATION: (channel) => {\n if (!channel) return '';\n if (channel.myPushTriggerOption === 'off') return 'Turn on notifications';\n return 'Turn off notifications';\n },\n DIALOG_CHANNEL_LEAVE: 'Leave channel',\n ...overrides?.GROUP_CHANNEL_LIST,\n },\n GROUP_CHANNEL_MEMBERS: {\n HEADER_TITLE: 'Members',\n /** @deprecated Please use in LABELS **/\n USER_BAR_ME_POSTFIX: ' (You)',\n /** @deprecated Please use in LABELS **/\n USER_BAR_OPERATOR: 'Operator',\n ...overrides?.GROUP_CHANNEL_MEMBERS,\n },\n GROUP_CHANNEL_CREATE: {\n HEADER_TITLE: 'New channel',\n HEADER_RIGHT: ({ selectedUsers }) => {\n const len = selectedUsers.length;\n if (len === 0) return 'Create';\n return `Create (${len})`;\n },\n ...overrides?.GROUP_CHANNEL_CREATE,\n },\n GROUP_CHANNEL_INVITE: {\n HEADER_TITLE: 'Invite users',\n HEADER_RIGHT: ({ selectedUsers }) => {\n const len = selectedUsers.length;\n if (len === 0) return 'Invite';\n return `Invite (${len})`;\n },\n ...overrides?.GROUP_CHANNEL_INVITE,\n },\n LABELS: {\n USER_NO_NAME,\n CHANNEL_NO_MEMBERS,\n TYPING_INDICATOR_TYPINGS: (users, NO_NAME = USER_NO_NAME) => {\n const userNames = users.map((u) => u.nickname || NO_NAME);\n if (userNames.length === 0) return;\n if (userNames.length === 1) return `${userNames[0]} is typing...`;\n if (users.length === 2) return `${userNames.join(' and ')} are typing...`;\n return 'Several people are typing...';\n },\n USER_BAR_ME_POSTFIX: ' (You)',\n USER_BAR_OPERATOR: 'Operator',\n REGISTER_AS_OPERATOR: 'Register as operator',\n UNREGISTER_OPERATOR: 'Unregister operator',\n MUTE: 'Mute',\n UNMUTE: 'Unmute',\n BAN: 'Ban',\n UNBAN: 'Unban',\n ...overrides?.LABELS,\n },\n FILE_VIEWER: {\n TITLE: (message) => message.sender?.nickname || USER_NO_NAME,\n SUBTITLE: (message) => getMessageTimeFormat(new Date(message.createdAt), dateLocale),\n },\n PLACEHOLDER: {\n NO_BANNED_USERS: 'No banned users',\n NO_USERS: 'No users',\n NO_CHANNELS: 'No channels',\n NO_MESSAGES: 'No messages',\n NO_MUTED_MEMBERS: 'No muted members',\n NO_RESULTS_FOUND: 'No results found',\n ...overrides?.PLACEHOLDER,\n ERROR: {\n MESSAGE: 'Something went wrong',\n RETRY_LABEL: 'Retry',\n ...overrides?.PLACEHOLDER?.ERROR,\n },\n },\n DIALOG: {\n ALERT_DEFAULT_OK: 'OK',\n ALERT_PERMISSIONS_TITLE: 'Allow access?',\n ALERT_PERMISSIONS_MESSAGE: (permission, appName = 'Application') => {\n return `${appName} need permission to access your ${permission}.`;\n },\n ALERT_PERMISSIONS_OK: 'Go to settings',\n PROMPT_DEFAULT_OK: 'Submit',\n PROMPT_DEFAULT_CANCEL: 'Cancel',\n PROMPT_DEFAULT_PLACEHOLDER: 'Enter',\n ...overrides?.DIALOG,\n },\n TOAST: {\n COPY_OK: 'Copied',\n DOWNLOAD_START: 'Downloading...',\n DOWNLOAD_OK: 'File saved',\n DOWNLOAD_ERROR: \"Couldn't download file.\",\n OPEN_CAMERA_ERROR: \"Couldn't open camera.\",\n OPEN_FILES_ERROR: \"Couldn't open files.\",\n OPEN_PHOTO_LIBRARY_ERROR: \"Couldn't open photo library.\",\n DELETE_MSG_ERROR: \"Couldn't delete message.\",\n RESEND_MSG_ERROR: \"Couldn't send message.\",\n SEND_MSG_ERROR: \"Couldn't send message.\",\n UPDATE_MSG_ERROR: \"Couldn't edit message.\",\n TURN_ON_NOTIFICATIONS_ERROR: \"Couldn't turn on notifications.\",\n TURN_OFF_NOTIFICATIONS_ERROR: \"Couldn't turn off notifications.\",\n LEAVE_CHANNEL_ERROR: \"Couldn't leave channel.\",\n ...overrides?.TOAST,\n },\n PROFILE_CARD: {\n BUTTON_MESSAGE: 'Message',\n BODY_LABEL: 'User ID',\n BODY: (user) => user.userId,\n ...overrides?.PROFILE_CARD,\n },\n };\n};\n"],"mappings":"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"}