@sendbird/uikit-react-native 2.5.0 → 3.0.0-rc.1

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 (326) hide show
  1. package/README.md +6 -1
  2. package/lib/commonjs/components/{MessageRenderer/MessageTime.js → ChannelInput/AttachmentsButton.js} +20 -17
  3. package/lib/commonjs/components/ChannelInput/AttachmentsButton.js.map +1 -0
  4. package/lib/commonjs/components/ChannelInput/EditInput.js +10 -18
  5. package/lib/commonjs/components/ChannelInput/EditInput.js.map +1 -1
  6. package/lib/commonjs/components/ChannelInput/SendInput.js +220 -163
  7. package/lib/commonjs/components/ChannelInput/SendInput.js.map +1 -1
  8. package/lib/commonjs/components/ChannelInput/index.js +5 -3
  9. package/lib/commonjs/components/ChannelInput/index.js.map +1 -1
  10. package/lib/commonjs/components/ChannelMessageList/index.js +27 -27
  11. package/lib/commonjs/components/ChannelMessageList/index.js.map +1 -1
  12. package/lib/commonjs/components/ChatFlatList/FlatListInternal.js +33 -0
  13. package/lib/commonjs/components/ChatFlatList/FlatListInternal.js.map +1 -0
  14. package/lib/commonjs/components/{ChatFlatList.js → ChatFlatList/index.js} +5 -7
  15. package/lib/commonjs/components/ChatFlatList/index.js.map +1 -0
  16. package/lib/commonjs/components/{MessageRenderer/MessageDateSeparator.js → GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js} +3 -3
  17. package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -0
  18. package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js +47 -0
  19. package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js.map +1 -0
  20. package/lib/commonjs/components/{MessageRenderer/MessageOutgoingStatus.js → GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js} +11 -14
  21. package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js.map +1 -0
  22. package/lib/commonjs/components/GroupChannelMessageRenderer/index.js +204 -0
  23. package/lib/commonjs/components/GroupChannelMessageRenderer/index.js.map +1 -0
  24. package/lib/commonjs/components/MessageSearchResultItem.js +3 -2
  25. package/lib/commonjs/components/MessageSearchResultItem.js.map +1 -1
  26. package/lib/commonjs/components/OpenChannelMessageRenderer/index.js +15 -9
  27. package/lib/commonjs/components/OpenChannelMessageRenderer/index.js.map +1 -1
  28. package/lib/commonjs/constants.js +1 -7
  29. package/lib/commonjs/constants.js.map +1 -1
  30. package/lib/commonjs/containers/GroupChannelPreviewContainer.js +13 -13
  31. package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
  32. package/lib/commonjs/containers/SendbirdUIKitContainer.js +29 -19
  33. package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
  34. package/lib/commonjs/contexts/SendbirdChatCtx.js +17 -14
  35. package/lib/commonjs/contexts/SendbirdChatCtx.js.map +1 -1
  36. package/lib/commonjs/contexts/UserProfileCtx.js +6 -4
  37. package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -1
  38. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js +4 -13
  39. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js.map +1 -1
  40. package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
  41. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +10 -6
  42. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  43. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js +3 -3
  44. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  45. package/lib/commonjs/domain/groupChannelList/types.js.map +1 -1
  46. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +11 -10
  47. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  48. package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js +4 -8
  49. package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js.map +1 -1
  50. package/lib/commonjs/domain/openChannel/types.js.map +1 -1
  51. package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js +3 -1
  52. package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js.map +1 -1
  53. package/lib/commonjs/domain/openChannelList/types.js.map +1 -1
  54. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +1 -1
  55. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
  56. package/lib/commonjs/fragments/createGroupChannelFragment.js +22 -100
  57. package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
  58. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js +1 -1
  59. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -1
  60. package/lib/commonjs/fragments/createGroupChannelListFragment.js +8 -13
  61. package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
  62. package/lib/commonjs/fragments/createMessageSearchFragment.js +2 -2
  63. package/lib/commonjs/fragments/createMessageSearchFragment.js.map +1 -1
  64. package/lib/commonjs/fragments/createOpenChannelFragment.js +1 -7
  65. package/lib/commonjs/fragments/createOpenChannelFragment.js.map +1 -1
  66. package/lib/commonjs/fragments/createOpenChannelListFragment.js +2 -1
  67. package/lib/commonjs/fragments/createOpenChannelListFragment.js.map +1 -1
  68. package/lib/commonjs/hooks/useConnection.js +11 -7
  69. package/lib/commonjs/hooks/useConnection.js.map +1 -1
  70. package/lib/commonjs/hooks/useMentionTextInput.js +3 -2
  71. package/lib/commonjs/hooks/useMentionTextInput.js.map +1 -1
  72. package/lib/commonjs/index.js +20 -4
  73. package/lib/commonjs/index.js.map +1 -1
  74. package/lib/commonjs/libs/MentionManager.js +8 -9
  75. package/lib/commonjs/libs/MentionManager.js.map +1 -1
  76. package/lib/commonjs/libs/SBUUtils.js +7 -3
  77. package/lib/commonjs/libs/SBUUtils.js.map +1 -1
  78. package/lib/commonjs/localization/StringSet.type.js.map +1 -1
  79. package/lib/commonjs/localization/createBaseStringSet.js +20 -62
  80. package/lib/commonjs/localization/createBaseStringSet.js.map +1 -1
  81. package/lib/commonjs/version.js +1 -1
  82. package/lib/commonjs/version.js.map +1 -1
  83. package/lib/module/components/ChannelInput/AttachmentsButton.js +29 -0
  84. package/lib/module/components/ChannelInput/AttachmentsButton.js.map +1 -0
  85. package/lib/module/components/ChannelInput/EditInput.js +10 -18
  86. package/lib/module/components/ChannelInput/EditInput.js.map +1 -1
  87. package/lib/module/components/ChannelInput/SendInput.js +221 -164
  88. package/lib/module/components/ChannelInput/SendInput.js.map +1 -1
  89. package/lib/module/components/ChannelInput/index.js +5 -3
  90. package/lib/module/components/ChannelInput/index.js.map +1 -1
  91. package/lib/module/components/ChannelMessageList/index.js +28 -28
  92. package/lib/module/components/ChannelMessageList/index.js.map +1 -1
  93. package/lib/module/components/ChatFlatList/FlatListInternal.js +26 -0
  94. package/lib/module/components/ChatFlatList/FlatListInternal.js.map +1 -0
  95. package/lib/module/components/{ChatFlatList.js → ChatFlatList/index.js} +4 -7
  96. package/lib/module/components/ChatFlatList/index.js.map +1 -0
  97. package/lib/module/components/{MessageRenderer/MessageDateSeparator.js → GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js} +3 -3
  98. package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -0
  99. package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js +38 -0
  100. package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js.map +1 -0
  101. package/lib/module/components/{MessageRenderer/MessageOutgoingStatus.js → GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js} +12 -15
  102. package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js.map +1 -0
  103. package/lib/module/components/GroupChannelMessageRenderer/index.js +196 -0
  104. package/lib/module/components/GroupChannelMessageRenderer/index.js.map +1 -0
  105. package/lib/module/components/MessageSearchResultItem.js +2 -1
  106. package/lib/module/components/MessageSearchResultItem.js.map +1 -1
  107. package/lib/module/components/OpenChannelMessageRenderer/index.js +16 -10
  108. package/lib/module/components/OpenChannelMessageRenderer/index.js.map +1 -1
  109. package/lib/module/constants.js +0 -5
  110. package/lib/module/constants.js.map +1 -1
  111. package/lib/module/containers/GroupChannelPreviewContainer.js +13 -13
  112. package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
  113. package/lib/module/containers/SendbirdUIKitContainer.js +29 -19
  114. package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
  115. package/lib/module/contexts/SendbirdChatCtx.js +17 -14
  116. package/lib/module/contexts/SendbirdChatCtx.js.map +1 -1
  117. package/lib/module/contexts/UserProfileCtx.js +6 -4
  118. package/lib/module/contexts/UserProfileCtx.js.map +1 -1
  119. package/lib/module/domain/groupChannel/component/GroupChannelInput.js +4 -13
  120. package/lib/module/domain/groupChannel/component/GroupChannelInput.js.map +1 -1
  121. package/lib/module/domain/groupChannel/types.js.map +1 -1
  122. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +9 -4
  123. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  124. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js +3 -3
  125. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  126. package/lib/module/domain/groupChannelList/types.js.map +1 -1
  127. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +11 -10
  128. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  129. package/lib/module/domain/openChannel/component/OpenChannelInput.js +4 -8
  130. package/lib/module/domain/openChannel/component/OpenChannelInput.js.map +1 -1
  131. package/lib/module/domain/openChannel/types.js.map +1 -1
  132. package/lib/module/domain/openChannelList/component/OpenChannelListList.js +3 -1
  133. package/lib/module/domain/openChannelList/component/OpenChannelListList.js.map +1 -1
  134. package/lib/module/domain/openChannelList/types.js.map +1 -1
  135. package/lib/module/fragments/createGroupChannelCreateFragment.js +1 -1
  136. package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
  137. package/lib/module/fragments/createGroupChannelFragment.js +24 -102
  138. package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
  139. package/lib/module/fragments/createGroupChannelInviteFragment.js +1 -1
  140. package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -1
  141. package/lib/module/fragments/createGroupChannelListFragment.js +8 -13
  142. package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
  143. package/lib/module/fragments/createMessageSearchFragment.js +1 -1
  144. package/lib/module/fragments/createMessageSearchFragment.js.map +1 -1
  145. package/lib/module/fragments/createOpenChannelFragment.js +2 -8
  146. package/lib/module/fragments/createOpenChannelFragment.js.map +1 -1
  147. package/lib/module/fragments/createOpenChannelListFragment.js +2 -1
  148. package/lib/module/fragments/createOpenChannelListFragment.js.map +1 -1
  149. package/lib/module/hooks/useConnection.js +11 -7
  150. package/lib/module/hooks/useConnection.js.map +1 -1
  151. package/lib/module/hooks/useMentionTextInput.js +3 -2
  152. package/lib/module/hooks/useMentionTextInput.js.map +1 -1
  153. package/lib/module/index.js +5 -2
  154. package/lib/module/index.js.map +1 -1
  155. package/lib/module/libs/MentionManager.js +8 -9
  156. package/lib/module/libs/MentionManager.js.map +1 -1
  157. package/lib/module/libs/SBUUtils.js +7 -3
  158. package/lib/module/libs/SBUUtils.js.map +1 -1
  159. package/lib/module/localization/StringSet.type.js.map +1 -1
  160. package/lib/module/localization/createBaseStringSet.js +20 -62
  161. package/lib/module/localization/createBaseStringSet.js.map +1 -1
  162. package/lib/module/version.js +1 -1
  163. package/lib/module/version.js.map +1 -1
  164. package/lib/typescript/src/components/ChannelInput/AttachmentsButton.d.ts +6 -0
  165. package/lib/typescript/src/components/ChannelInput/index.d.ts +2 -14
  166. package/lib/typescript/src/components/ChannelMessageList/index.d.ts +2 -4
  167. package/lib/typescript/src/components/ChatFlatList/FlatListInternal.d.ts +20 -0
  168. package/lib/typescript/src/components/{ChatFlatList.d.ts → ChatFlatList/index.d.ts} +1 -5
  169. package/lib/typescript/src/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.d.ts +6 -0
  170. package/lib/typescript/src/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.d.ts +5 -0
  171. package/lib/typescript/src/components/{MessageRenderer/MessageOutgoingStatus.d.ts → GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.d.ts} +3 -1
  172. package/lib/typescript/src/components/{MessageRenderer → GroupChannelMessageRenderer}/index.d.ts +2 -13
  173. package/lib/typescript/src/components/MessageSearchResultItem.d.ts +2 -1
  174. package/lib/typescript/src/components/OpenChannelMessageRenderer/index.d.ts +1 -1
  175. package/lib/typescript/src/constants.d.ts +0 -5
  176. package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +16 -11
  177. package/lib/typescript/src/contexts/SendbirdChatCtx.d.ts +33 -19
  178. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput.d.ts +1 -1
  179. package/lib/typescript/src/domain/groupChannel/component/GroupChannelMessageList.d.ts +1 -4
  180. package/lib/typescript/src/domain/groupChannel/types.d.ts +2 -9
  181. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListList.d.ts +1 -1
  182. package/lib/typescript/src/domain/groupChannelList/types.d.ts +8 -23
  183. package/lib/typescript/src/domain/openChannel/component/OpenChannelHeader.d.ts +1 -1
  184. package/lib/typescript/src/domain/openChannel/component/OpenChannelInput.d.ts +1 -1
  185. package/lib/typescript/src/domain/openChannel/component/OpenChannelMessageList.d.ts +1 -1
  186. package/lib/typescript/src/domain/openChannel/types.d.ts +2 -2
  187. package/lib/typescript/src/domain/openChannelList/component/OpenChannelListList.d.ts +1 -1
  188. package/lib/typescript/src/domain/openChannelList/types.d.ts +3 -12
  189. package/lib/typescript/src/index.d.ts +4 -1
  190. package/lib/typescript/src/libs/MentionManager.d.ts +4 -5
  191. package/lib/typescript/src/libs/SBUUtils.d.ts +1 -1
  192. package/lib/typescript/src/localization/StringSet.type.d.ts +2 -43
  193. package/lib/typescript/src/version.d.ts +1 -1
  194. package/package.json +14 -10
  195. package/src/components/ChannelInput/AttachmentsButton.tsx +32 -0
  196. package/src/components/ChannelInput/EditInput.tsx +17 -18
  197. package/src/components/ChannelInput/SendInput.tsx +237 -181
  198. package/src/components/ChannelInput/index.tsx +8 -21
  199. package/src/components/ChannelMessageList/index.tsx +33 -41
  200. package/src/components/ChatFlatList/FlatListInternal.tsx +40 -0
  201. package/src/components/{ChatFlatList.tsx → ChatFlatList/index.tsx} +7 -12
  202. package/src/components/{MessageRenderer/MessageDateSeparator.tsx → GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.tsx} +7 -5
  203. package/src/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.tsx +29 -0
  204. package/src/components/{MessageRenderer/MessageOutgoingStatus.tsx → GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.tsx} +15 -15
  205. package/src/components/GroupChannelMessageRenderer/index.tsx +203 -0
  206. package/src/components/MessageSearchResultItem.tsx +3 -1
  207. package/src/components/OpenChannelMessageRenderer/index.tsx +10 -5
  208. package/src/constants.ts +0 -5
  209. package/src/containers/GroupChannelPreviewContainer.tsx +14 -13
  210. package/src/containers/SendbirdUIKitContainer.tsx +98 -90
  211. package/src/contexts/SendbirdChatCtx.tsx +49 -36
  212. package/src/contexts/UserProfileCtx.tsx +10 -5
  213. package/src/domain/groupChannel/component/GroupChannelInput.tsx +1 -10
  214. package/src/domain/groupChannel/types.ts +1 -14
  215. package/src/domain/groupChannelList/component/GroupChannelListList.tsx +8 -4
  216. package/src/domain/groupChannelList/component/GroupChannelListTypeSelector.tsx +3 -3
  217. package/src/domain/groupChannelList/types.ts +8 -30
  218. package/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.tsx +22 -10
  219. package/src/domain/openChannel/component/OpenChannelInput.tsx +1 -5
  220. package/src/domain/openChannel/types.ts +1 -1
  221. package/src/domain/openChannelList/component/OpenChannelListList.tsx +2 -1
  222. package/src/domain/openChannelList/types.ts +6 -13
  223. package/src/fragments/createGroupChannelCreateFragment.tsx +1 -1
  224. package/src/fragments/createGroupChannelFragment.tsx +21 -97
  225. package/src/fragments/createGroupChannelInviteFragment.tsx +1 -1
  226. package/src/fragments/createGroupChannelListFragment.tsx +9 -15
  227. package/src/fragments/createMessageSearchFragment.tsx +1 -1
  228. package/src/fragments/createOpenChannelFragment.tsx +2 -3
  229. package/src/fragments/createOpenChannelListFragment.tsx +2 -1
  230. package/src/hooks/useConnection.ts +9 -7
  231. package/src/hooks/useMentionTextInput.ts +7 -2
  232. package/src/index.ts +4 -2
  233. package/src/libs/MentionManager.tsx +8 -7
  234. package/src/libs/SBUUtils.ts +7 -3
  235. package/src/localization/StringSet.type.ts +2 -46
  236. package/src/localization/createBaseStringSet.ts +19 -71
  237. package/src/version.ts +1 -1
  238. package/lib/commonjs/components/ChatFlatList.js.map +0 -1
  239. package/lib/commonjs/components/MessageRenderer/AdminMessage/index.js +0 -46
  240. package/lib/commonjs/components/MessageRenderer/AdminMessage/index.js.map +0 -1
  241. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js +0 -73
  242. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +0 -1
  243. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js +0 -93
  244. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +0 -1
  245. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js +0 -132
  246. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +0 -1
  247. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js +0 -24
  248. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js.map +0 -1
  249. package/lib/commonjs/components/MessageRenderer/MessageContainer.js +0 -27
  250. package/lib/commonjs/components/MessageRenderer/MessageContainer.js.map +0 -1
  251. package/lib/commonjs/components/MessageRenderer/MessageDateSeparator.js.map +0 -1
  252. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js +0 -41
  253. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js.map +0 -1
  254. package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js +0 -41
  255. package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js.map +0 -1
  256. package/lib/commonjs/components/MessageRenderer/MessageOutgoingStatus.js.map +0 -1
  257. package/lib/commonjs/components/MessageRenderer/MessageTime.js.map +0 -1
  258. package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js +0 -46
  259. package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js.map +0 -1
  260. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js +0 -113
  261. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +0 -1
  262. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +0 -200
  263. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +0 -1
  264. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js +0 -22
  265. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js.map +0 -1
  266. package/lib/commonjs/components/MessageRenderer/index.js +0 -186
  267. package/lib/commonjs/components/MessageRenderer/index.js.map +0 -1
  268. package/lib/module/components/ChatFlatList.js.map +0 -1
  269. package/lib/module/components/MessageRenderer/AdminMessage/index.js +0 -38
  270. package/lib/module/components/MessageRenderer/AdminMessage/index.js.map +0 -1
  271. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js +0 -65
  272. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +0 -1
  273. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js +0 -84
  274. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +0 -1
  275. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js +0 -123
  276. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +0 -1
  277. package/lib/module/components/MessageRenderer/FileMessage/index.js +0 -16
  278. package/lib/module/components/MessageRenderer/FileMessage/index.js.map +0 -1
  279. package/lib/module/components/MessageRenderer/MessageContainer.js +0 -19
  280. package/lib/module/components/MessageRenderer/MessageContainer.js.map +0 -1
  281. package/lib/module/components/MessageRenderer/MessageDateSeparator.js.map +0 -1
  282. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js +0 -33
  283. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js.map +0 -1
  284. package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js +0 -33
  285. package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js.map +0 -1
  286. package/lib/module/components/MessageRenderer/MessageOutgoingStatus.js.map +0 -1
  287. package/lib/module/components/MessageRenderer/MessageTime.js +0 -26
  288. package/lib/module/components/MessageRenderer/MessageTime.js.map +0 -1
  289. package/lib/module/components/MessageRenderer/UnknownMessage/index.js +0 -38
  290. package/lib/module/components/MessageRenderer/UnknownMessage/index.js.map +0 -1
  291. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js +0 -105
  292. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +0 -1
  293. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +0 -190
  294. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +0 -1
  295. package/lib/module/components/MessageRenderer/UserMessage/index.js +0 -14
  296. package/lib/module/components/MessageRenderer/UserMessage/index.js.map +0 -1
  297. package/lib/module/components/MessageRenderer/index.js +0 -178
  298. package/lib/module/components/MessageRenderer/index.js.map +0 -1
  299. package/lib/typescript/src/components/MessageRenderer/AdminMessage/index.d.ts +0 -5
  300. package/lib/typescript/src/components/MessageRenderer/FileMessage/BaseFileMessage.d.ts +0 -6
  301. package/lib/typescript/src/components/MessageRenderer/FileMessage/ImageFileMessage.d.ts +0 -3
  302. package/lib/typescript/src/components/MessageRenderer/FileMessage/VideoFileMessage.d.ts +0 -3
  303. package/lib/typescript/src/components/MessageRenderer/FileMessage/index.d.ts +0 -15
  304. package/lib/typescript/src/components/MessageRenderer/MessageContainer.d.ts +0 -3
  305. package/lib/typescript/src/components/MessageRenderer/MessageDateSeparator.d.ts +0 -7
  306. package/lib/typescript/src/components/MessageRenderer/MessageIncomingAvatar.d.ts +0 -7
  307. package/lib/typescript/src/components/MessageRenderer/MessageIncomingSenderName.d.ts +0 -7
  308. package/lib/typescript/src/components/MessageRenderer/MessageTime.d.ts +0 -9
  309. package/lib/typescript/src/components/MessageRenderer/UnknownMessage/index.d.ts +0 -4
  310. package/lib/typescript/src/components/MessageRenderer/UserMessage/BaseUserMessage.d.ts +0 -3
  311. package/lib/typescript/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.d.ts +0 -7
  312. package/lib/typescript/src/components/MessageRenderer/UserMessage/index.d.ts +0 -9
  313. package/src/components/MessageRenderer/AdminMessage/index.tsx +0 -40
  314. package/src/components/MessageRenderer/FileMessage/BaseFileMessage.tsx +0 -51
  315. package/src/components/MessageRenderer/FileMessage/ImageFileMessage.tsx +0 -98
  316. package/src/components/MessageRenderer/FileMessage/VideoFileMessage.tsx +0 -113
  317. package/src/components/MessageRenderer/FileMessage/index.tsx +0 -20
  318. package/src/components/MessageRenderer/MessageContainer.tsx +0 -17
  319. package/src/components/MessageRenderer/MessageIncomingAvatar.tsx +0 -34
  320. package/src/components/MessageRenderer/MessageIncomingSenderName.tsx +0 -36
  321. package/src/components/MessageRenderer/MessageTime.tsx +0 -28
  322. package/src/components/MessageRenderer/UnknownMessage/index.tsx +0 -34
  323. package/src/components/MessageRenderer/UserMessage/BaseUserMessage.tsx +0 -102
  324. package/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.tsx +0 -188
  325. package/src/components/MessageRenderer/UserMessage/index.tsx +0 -24
  326. package/src/components/MessageRenderer/index.tsx +0 -198
@@ -1,84 +0,0 @@
1
- import React, { useEffect, useRef, useState } from 'react';
2
- import { Platform, StyleSheet, View } from 'react-native';
3
- import { Icon, Image, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { getAvailableUriFromFileMessage, useForceUpdate } from '@sendbird/uikit-utils';
5
- const useRetry = function (hasError) {
6
- let retryCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;
7
- if (Platform.OS === 'android') return '';
8
- const forceUpdate = useForceUpdate();
9
- const retryCountRef = useRef(1);
10
- const retryTimeoutRef = useRef();
11
- useEffect(() => {
12
- if (hasError) {
13
- const reloadReservation = () => {
14
- if (retryCountRef.current < retryCount) {
15
- retryTimeoutRef.current = setTimeout(() => {
16
- retryCountRef.current++;
17
- reloadReservation();
18
- forceUpdate();
19
- }, retryCountRef.current * 5000);
20
- }
21
- };
22
- return reloadReservation();
23
- } else {
24
- return clearTimeout(retryTimeoutRef.current);
25
- }
26
- }, [hasError]);
27
- return retryCountRef.current;
28
- };
29
- const ImageFileMessage = _ref => {
30
- let {
31
- message,
32
- children,
33
- variant
34
- } = _ref;
35
- const {
36
- colors
37
- } = useUIKitTheme();
38
- const [imageNotFound, setImageNotFound] = useState(false);
39
- const fileUrl = getAvailableUriFromFileMessage(message);
40
- const style = [styles.image, {
41
- backgroundColor: colors.onBackground04
42
- }];
43
- const key = useRetry(imageNotFound);
44
- return /*#__PURE__*/React.createElement(View, {
45
- style: [styles.bubbleContainer, {
46
- backgroundColor: imageNotFound ? colors.onBackground04 : colors.ui.groupChannelMessage[variant].enabled.background
47
- }]
48
- }, /*#__PURE__*/React.createElement(View, {
49
- style: style
50
- }, /*#__PURE__*/React.createElement(Image, {
51
- key: key,
52
- source: {
53
- uri: fileUrl
54
- },
55
- style: [StyleSheet.absoluteFill, imageNotFound && styles.hide],
56
- resizeMode: 'cover',
57
- resizeMethod: 'resize',
58
- onError: () => setImageNotFound(true),
59
- onLoad: () => setImageNotFound(false)
60
- }), imageNotFound && /*#__PURE__*/React.createElement(Icon, {
61
- containerStyle: StyleSheet.absoluteFill,
62
- icon: 'thumbnail-none',
63
- size: 48,
64
- color: colors.onBackground02
65
- })), children);
66
- };
67
- const styles = createStyleSheet({
68
- bubbleContainer: {
69
- borderRadius: 16,
70
- overflow: 'hidden'
71
- },
72
- image: {
73
- width: 240,
74
- maxWidth: 240,
75
- height: 160,
76
- borderRadius: 16,
77
- overflow: 'hidden'
78
- },
79
- hide: {
80
- display: 'none'
81
- }
82
- });
83
- export default ImageFileMessage;
84
- //# sourceMappingURL=ImageFileMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","useEffect","useRef","useState","Platform","StyleSheet","View","Icon","Image","createStyleSheet","useUIKitTheme","getAvailableUriFromFileMessage","useForceUpdate","useRetry","hasError","retryCount","arguments","length","undefined","OS","forceUpdate","retryCountRef","retryTimeoutRef","reloadReservation","current","setTimeout","clearTimeout","ImageFileMessage","_ref","message","children","variant","colors","imageNotFound","setImageNotFound","fileUrl","style","styles","image","backgroundColor","onBackground04","key","createElement","bubbleContainer","ui","groupChannelMessage","enabled","background","source","uri","absoluteFill","hide","resizeMode","resizeMethod","onError","onLoad","containerStyle","icon","size","color","onBackground02","borderRadius","overflow","width","maxWidth","height","display"],"sources":["ImageFileMessage.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Platform, StyleSheet, View } from 'react-native';\n\nimport { Icon, Image, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport { getAvailableUriFromFileMessage, useForceUpdate } from '@sendbird/uikit-utils';\n\nimport type { FileMessageProps } from './index';\n\nconst useRetry = (hasError: boolean, retryCount = 5) => {\n if (Platform.OS === 'android') return '';\n\n const forceUpdate = useForceUpdate();\n const retryCountRef = useRef(1);\n const retryTimeoutRef = useRef<NodeJS.Timeout>();\n\n useEffect(() => {\n if (hasError) {\n const reloadReservation = () => {\n if (retryCountRef.current < retryCount) {\n retryTimeoutRef.current = setTimeout(() => {\n retryCountRef.current++;\n reloadReservation();\n forceUpdate();\n }, retryCountRef.current * 5000);\n }\n };\n\n return reloadReservation();\n } else {\n return clearTimeout(retryTimeoutRef.current);\n }\n }, [hasError]);\n\n return retryCountRef.current;\n};\n\nconst ImageFileMessage = ({ message, children, variant }: FileMessageProps) => {\n const { colors } = useUIKitTheme();\n const [imageNotFound, setImageNotFound] = useState(false);\n\n const fileUrl = getAvailableUriFromFileMessage(message);\n const style = [styles.image, { backgroundColor: colors.onBackground04 }];\n\n const key = useRetry(imageNotFound);\n\n return (\n <View\n style={[\n styles.bubbleContainer,\n {\n backgroundColor: imageNotFound\n ? colors.onBackground04\n : colors.ui.groupChannelMessage[variant].enabled.background,\n },\n ]}\n >\n <View style={style}>\n <Image\n key={key}\n source={{ uri: fileUrl }}\n style={[StyleSheet.absoluteFill, imageNotFound && styles.hide]}\n resizeMode={'cover'}\n resizeMethod={'resize'}\n onError={() => setImageNotFound(true)}\n onLoad={() => setImageNotFound(false)}\n />\n {imageNotFound && (\n <Icon\n containerStyle={StyleSheet.absoluteFill}\n icon={'thumbnail-none'}\n size={48}\n color={colors.onBackground02}\n />\n )}\n </View>\n {children}\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n bubbleContainer: {\n borderRadius: 16,\n overflow: 'hidden',\n },\n image: {\n width: 240,\n maxWidth: 240,\n height: 160,\n borderRadius: 16,\n overflow: 'hidden',\n },\n hide: {\n display: 'none',\n },\n});\n\nexport default ImageFileMessage;\n"],"mappings":"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"}
@@ -1,123 +0,0 @@
1
- import React, { useEffect, useRef, useState } from 'react';
2
- import { View } from 'react-native';
3
- import { Icon, Image, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { getAvailableUriFromFileMessage } from '@sendbird/uikit-utils';
5
- import { usePlatformService } from '../../../hooks/useContext';
6
- const useRetry = function (videoFileUrl) {
7
- let retryCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;
8
- const [state, setState] = useState({
9
- thumbnail: null,
10
- loading: true
11
- });
12
- const retryCountRef = useRef(0);
13
- const retryTimeoutRef = useRef();
14
- const {
15
- mediaService
16
- } = usePlatformService();
17
- const fetchThumbnail = () => {
18
- return mediaService.getVideoThumbnail({
19
- url: videoFileUrl,
20
- timeMills: 1000
21
- }).then(result => {
22
- setState({
23
- loading: false,
24
- thumbnail: (result === null || result === void 0 ? void 0 : result.path) ?? null
25
- });
26
- });
27
- };
28
- useEffect(() => {
29
- if (!state.thumbnail) {
30
- const reloadReservation = () => {
31
- if (retryCountRef.current < retryCount) {
32
- retryTimeoutRef.current = setTimeout(() => {
33
- retryCountRef.current++;
34
- reloadReservation();
35
- fetchThumbnail();
36
- }, retryCountRef.current * 5000);
37
- }
38
- };
39
- return reloadReservation();
40
- } else {
41
- return clearTimeout(retryTimeoutRef.current);
42
- }
43
- }, [state.thumbnail]);
44
- return state;
45
- };
46
- const VideoFileMessage = _ref => {
47
- let {
48
- message,
49
- variant,
50
- children
51
- } = _ref;
52
- const {
53
- colors
54
- } = useUIKitTheme();
55
- const fileUrl = getAvailableUriFromFileMessage(message);
56
- const style = [styles.video, {
57
- backgroundColor: colors.onBackground04
58
- }];
59
- const {
60
- loading,
61
- thumbnail
62
- } = useRetry(fileUrl);
63
- if (loading) {
64
- return /*#__PURE__*/React.createElement(View, {
65
- style: [styles.bubbleContainer, {
66
- backgroundColor: colors.ui.groupChannelMessage[variant].enabled.background
67
- }]
68
- }, /*#__PURE__*/React.createElement(View, {
69
- style: [styles.bubbleContainer, styles.bubbleInnerContainer]
70
- }, /*#__PURE__*/React.createElement(View, {
71
- style: style
72
- }), /*#__PURE__*/React.createElement(PlayIcon, null)), children);
73
- }
74
- return /*#__PURE__*/React.createElement(View, {
75
- style: [styles.bubbleContainer, {
76
- backgroundColor: colors.ui.groupChannelMessage[variant].enabled.background
77
- }]
78
- }, /*#__PURE__*/React.createElement(View, {
79
- style: [styles.bubbleContainer, styles.bubbleInnerContainer]
80
- }, /*#__PURE__*/React.createElement(Image, {
81
- source: {
82
- uri: thumbnail || fileUrl
83
- },
84
- style: style,
85
- resizeMode: 'cover',
86
- resizeMethod: 'resize'
87
- }), /*#__PURE__*/React.createElement(PlayIcon, null)), children);
88
- };
89
- const PlayIcon = () => {
90
- const {
91
- colors
92
- } = useUIKitTheme();
93
- return /*#__PURE__*/React.createElement(Icon, {
94
- icon: 'play',
95
- size: 28,
96
- color: colors.onBackground02,
97
- containerStyle: [styles.playIcon, {
98
- backgroundColor: colors.onBackgroundReverse01
99
- }]
100
- });
101
- };
102
- const styles = createStyleSheet({
103
- bubbleContainer: {
104
- borderRadius: 16,
105
- overflow: 'hidden'
106
- },
107
- bubbleInnerContainer: {
108
- alignItems: 'center',
109
- justifyContent: 'center'
110
- },
111
- video: {
112
- width: 240,
113
- maxWidth: 240,
114
- height: 160
115
- },
116
- playIcon: {
117
- position: 'absolute',
118
- padding: 10,
119
- borderRadius: 50
120
- }
121
- });
122
- export default VideoFileMessage;
123
- //# sourceMappingURL=VideoFileMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","useEffect","useRef","useState","View","Icon","Image","createStyleSheet","useUIKitTheme","getAvailableUriFromFileMessage","usePlatformService","useRetry","videoFileUrl","retryCount","arguments","length","undefined","state","setState","thumbnail","loading","retryCountRef","retryTimeoutRef","mediaService","fetchThumbnail","getVideoThumbnail","url","timeMills","then","result","path","reloadReservation","current","setTimeout","clearTimeout","VideoFileMessage","_ref","message","variant","children","colors","fileUrl","style","styles","video","backgroundColor","onBackground04","createElement","bubbleContainer","ui","groupChannelMessage","enabled","background","bubbleInnerContainer","PlayIcon","source","uri","resizeMode","resizeMethod","icon","size","color","onBackground02","containerStyle","playIcon","onBackgroundReverse01","borderRadius","overflow","alignItems","justifyContent","width","maxWidth","height","position","padding"],"sources":["VideoFileMessage.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { View } from 'react-native';\n\nimport { Icon, Image, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport { getAvailableUriFromFileMessage } from '@sendbird/uikit-utils';\n\nimport { usePlatformService } from '../../../hooks/useContext';\nimport type { FileMessageProps } from './index';\n\nconst useRetry = (videoFileUrl: string, retryCount = 5) => {\n const [state, setState] = useState({ thumbnail: null as null | string, loading: true });\n const retryCountRef = useRef(0);\n const retryTimeoutRef = useRef<NodeJS.Timeout>();\n\n const { mediaService } = usePlatformService();\n\n const fetchThumbnail = () => {\n return mediaService.getVideoThumbnail({ url: videoFileUrl, timeMills: 1000 }).then((result) => {\n setState({ loading: false, thumbnail: result?.path ?? null });\n });\n };\n\n useEffect(() => {\n if (!state.thumbnail) {\n const reloadReservation = () => {\n if (retryCountRef.current < retryCount) {\n retryTimeoutRef.current = setTimeout(() => {\n retryCountRef.current++;\n reloadReservation();\n fetchThumbnail();\n }, retryCountRef.current * 5000);\n }\n };\n\n return reloadReservation();\n } else {\n return clearTimeout(retryTimeoutRef.current);\n }\n }, [state.thumbnail]);\n\n return state;\n};\n\nconst VideoFileMessage = ({ message, variant, children }: FileMessageProps) => {\n const { colors } = useUIKitTheme();\n\n const fileUrl = getAvailableUriFromFileMessage(message);\n const style = [styles.video, { backgroundColor: colors.onBackground04 }];\n\n const { loading, thumbnail } = useRetry(fileUrl);\n\n if (loading) {\n return (\n <View\n style={[styles.bubbleContainer, { backgroundColor: colors.ui.groupChannelMessage[variant].enabled.background }]}\n >\n <View style={[styles.bubbleContainer, styles.bubbleInnerContainer]}>\n <View style={style} />\n <PlayIcon />\n </View>\n {children}\n </View>\n );\n }\n\n return (\n <View\n style={[styles.bubbleContainer, { backgroundColor: colors.ui.groupChannelMessage[variant].enabled.background }]}\n >\n <View style={[styles.bubbleContainer, styles.bubbleInnerContainer]}>\n <Image source={{ uri: thumbnail || fileUrl }} style={style} resizeMode={'cover'} resizeMethod={'resize'} />\n <PlayIcon />\n </View>\n {children}\n </View>\n );\n};\n\nconst PlayIcon = () => {\n const { colors } = useUIKitTheme();\n\n return (\n <Icon\n icon={'play'}\n size={28}\n color={colors.onBackground02}\n containerStyle={[styles.playIcon, { backgroundColor: colors.onBackgroundReverse01 }]}\n />\n );\n};\n\nconst styles = createStyleSheet({\n bubbleContainer: {\n borderRadius: 16,\n overflow: 'hidden',\n },\n bubbleInnerContainer: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n video: {\n width: 240,\n maxWidth: 240,\n height: 160,\n },\n playIcon: {\n position: 'absolute',\n padding: 10,\n borderRadius: 50,\n },\n});\n\nexport default VideoFileMessage;\n"],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import React from 'react';
3
- import { getFileExtension, getFileType } from '@sendbird/uikit-utils';
4
- import BaseFileMessage from './BaseFileMessage';
5
- import ImageFileMessage from './ImageFileMessage';
6
- import VideoFileMessage from './VideoFileMessage';
7
- const FileMessage = props => {
8
- const fileType = getFileType(props.message.type || getFileExtension(props.message.name));
9
- if (fileType === 'image') return /*#__PURE__*/React.createElement(ImageFileMessage, props);
10
- if (fileType === 'video') return /*#__PURE__*/React.createElement(VideoFileMessage, props);
11
- return /*#__PURE__*/React.createElement(BaseFileMessage, _extends({}, props, {
12
- type: fileType
13
- }));
14
- };
15
- export default /*#__PURE__*/React.memo(FileMessage);
16
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","getFileExtension","getFileType","BaseFileMessage","ImageFileMessage","VideoFileMessage","FileMessage","props","fileType","message","type","name","createElement","_extends","memo"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\n\nimport { SendbirdFileMessage, getFileExtension, getFileType } from '@sendbird/uikit-utils';\n\nimport type { MessageRendererInterface } from '../index';\nimport BaseFileMessage from './BaseFileMessage';\nimport ImageFileMessage from './ImageFileMessage';\nimport VideoFileMessage from './VideoFileMessage';\n\nexport type FileMessageProps = MessageRendererInterface<SendbirdFileMessage>;\nconst FileMessage = (props: FileMessageProps) => {\n const fileType = getFileType(props.message.type || getFileExtension(props.message.name));\n\n if (fileType === 'image') return <ImageFileMessage {...props} />;\n if (fileType === 'video') return <VideoFileMessage {...props} />;\n\n return <BaseFileMessage {...props} type={fileType} />;\n};\n\nexport default React.memo(FileMessage);\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAA8BC,gBAAgB,EAAEC,WAAW,QAAQ,uBAAuB;AAG1F,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,OAAOC,gBAAgB,MAAM,oBAAoB;AAGjD,MAAMC,WAAW,GAAIC,KAAuB,IAAK;EAC/C,MAAMC,QAAQ,GAAGN,WAAW,CAACK,KAAK,CAACE,OAAO,CAACC,IAAI,IAAIT,gBAAgB,CAACM,KAAK,CAACE,OAAO,CAACE,IAAI,CAAC,CAAC;EAExF,IAAIH,QAAQ,KAAK,OAAO,EAAE,oBAAOR,KAAA,CAAAY,aAAA,CAACR,gBAAgB,EAAKG,KAAK,CAAI;EAChE,IAAIC,QAAQ,KAAK,OAAO,EAAE,oBAAOR,KAAA,CAAAY,aAAA,CAACP,gBAAgB,EAAKE,KAAK,CAAI;EAEhE,oBAAOP,KAAA,CAAAY,aAAA,CAACT,eAAe,EAAAU,QAAA,KAAKN,KAAK;IAAEG,IAAI,EAAEF;EAAS,GAAG;AACvD,CAAC;AAED,4BAAeR,KAAK,CAACc,IAAI,CAACR,WAAW,CAAC"}
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import { createStyleSheet } from '@sendbird/uikit-react-native-foundation';
4
- const MessageContainer = _ref => {
5
- let {
6
- children
7
- } = _ref;
8
- return /*#__PURE__*/React.createElement(View, {
9
- style: styles.container
10
- }, children);
11
- };
12
- const styles = createStyleSheet({
13
- container: {
14
- flexDirection: 'column',
15
- paddingHorizontal: 16
16
- }
17
- });
18
- export default MessageContainer;
19
- //# sourceMappingURL=MessageContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","createStyleSheet","MessageContainer","_ref","children","createElement","style","styles","container","flexDirection","paddingHorizontal"],"sources":["MessageContainer.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\n\nimport { createStyleSheet } from '@sendbird/uikit-react-native-foundation';\n\nconst MessageContainer = ({ children }: React.PropsWithChildren) => {\n return <View style={styles.container}>{children}</View>;\n};\n\nconst styles = createStyleSheet({\n container: {\n flexDirection: 'column',\n paddingHorizontal: 16,\n },\n});\n\nexport default MessageContainer;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,gBAAgB,QAAQ,yCAAyC;AAE1E,MAAMC,gBAAgB,GAAGC,IAAA,IAA2C;EAAA,IAA1C;IAAEC;EAAkC,CAAC,GAAAD,IAAA;EAC7D,oBAAOJ,KAAA,CAAAM,aAAA,CAACL,IAAI;IAACM,KAAK,EAAEC,MAAM,CAACC;EAAU,GAAEJ,QAAQ,CAAQ;AACzD,CAAC;AAED,MAAMG,MAAM,GAAGN,gBAAgB,CAAC;EAC9BO,SAAS,EAAE;IACTC,aAAa,EAAE,QAAQ;IACvBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAeR,gBAAgB"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["isSameDay","React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","MessageDateSeparator","_ref","message","prevMessage","STRINGS","colors","sameDay","createdAt","createElement","style","styles","container","view","backgroundColor","ui","dateSeparator","default","none","background","caption1","color","text","GROUP_CHANNEL","LIST_DATE_SEPARATOR","Date","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal"],"sources":["MessageDateSeparator.tsx"],"sourcesContent":["import isSameDay from 'date-fns/isSameDay';\nimport React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\ntype Props = {\n message: SendbirdMessage;\n prevMessage?: SendbirdMessage;\n};\n\nconst MessageDateSeparator = ({ message, prevMessage }: Props) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const sameDay = isSameDay(message.createdAt, prevMessage?.createdAt ?? 0);\n if (sameDay) return null;\n return (\n <View style={styles.container}>\n <View style={[styles.view, { backgroundColor: colors.ui.dateSeparator.default.none.background }]}>\n <Text caption1 color={colors.ui.dateSeparator.default.none.text}>\n {STRINGS.GROUP_CHANNEL.LIST_DATE_SEPARATOR(new Date(message.createdAt))}\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n marginVertical: 16,\n },\n view: {\n borderRadius: 10,\n paddingVertical: 4,\n paddingHorizontal: 10,\n },\n});\n\nexport default MessageDateSeparator;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAG/F,SAASC,eAAe,QAAQ,wBAAwB;AAOxD,MAAMC,oBAAoB,GAAGC,IAAA,IAAqC;EAAA,IAApC;IAAEC,OAAO;IAAEC;EAAmB,CAAC,GAAAF,IAAA;EAC3D,MAAM;IAAEG;EAAQ,CAAC,GAAGL,eAAe,EAAE;EACrC,MAAM;IAAEM;EAAO,CAAC,GAAGP,aAAa,EAAE;EAElC,MAAMQ,OAAO,GAAGb,SAAS,CAACS,OAAO,CAACK,SAAS,EAAE,CAAAJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEI,SAAS,KAAI,CAAC,CAAC;EACzE,IAAID,OAAO,EAAE,OAAO,IAAI;EACxB,oBACEZ,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5BjB,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAE;MAAEC,eAAe,EAAER,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC;EAAE,gBAC/FxB,KAAA,CAAAc,aAAA,CAACZ,IAAI;IAACuB,QAAQ;IAACC,KAAK,EAAEf,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACI;EAAK,GAC7DjB,OAAO,CAACkB,aAAa,CAACC,mBAAmB,CAAC,IAAIC,IAAI,CAACtB,OAAO,CAACK,SAAS,CAAC,CAAC,CAClE,CACF,CACF;AAEX,CAAC;AAED,MAAMG,MAAM,GAAGb,gBAAgB,CAAC;EAC9Bc,SAAS,EAAE;IACTc,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDd,IAAI,EAAE;IACJe,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAe7B,oBAAoB"}
@@ -1,33 +0,0 @@
1
- import React from 'react';
2
- import { Pressable, View } from 'react-native';
3
- import { Avatar, createStyleSheet } from '@sendbird/uikit-react-native-foundation';
4
- import { useUserProfile } from '../../hooks/useContext';
5
- const MessageIncomingAvatar = _ref => {
6
- var _message$sender;
7
- let {
8
- message,
9
- grouping
10
- } = _ref;
11
- const {
12
- show
13
- } = useUserProfile();
14
- if (grouping) return /*#__PURE__*/React.createElement(View, {
15
- style: styles.avatar
16
- });
17
- return /*#__PURE__*/React.createElement(View, {
18
- style: styles.avatar
19
- }, (message.isFileMessage() || message.isUserMessage()) && /*#__PURE__*/React.createElement(Pressable, {
20
- onPress: () => show(message.sender)
21
- }, /*#__PURE__*/React.createElement(Avatar, {
22
- size: 26,
23
- uri: (_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.profileUrl
24
- })));
25
- };
26
- const styles = createStyleSheet({
27
- avatar: {
28
- width: 26,
29
- marginRight: 12
30
- }
31
- });
32
- export default MessageIncomingAvatar;
33
- //# sourceMappingURL=MessageIncomingAvatar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Pressable","View","Avatar","createStyleSheet","useUserProfile","MessageIncomingAvatar","_ref","_message$sender","message","grouping","show","createElement","style","styles","avatar","isFileMessage","isUserMessage","onPress","sender","size","uri","profileUrl","width","marginRight"],"sources":["MessageIncomingAvatar.tsx"],"sourcesContent":["import React from 'react';\nimport { Pressable, View } from 'react-native';\n\nimport { Avatar, createStyleSheet } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useUserProfile } from '../../hooks/useContext';\n\ntype Props = {\n message: SendbirdMessage;\n grouping: boolean;\n};\nconst MessageIncomingAvatar = ({ message, grouping }: Props) => {\n const { show } = useUserProfile();\n if (grouping) return <View style={styles.avatar} />;\n return (\n <View style={styles.avatar}>\n {(message.isFileMessage() || message.isUserMessage()) && (\n <Pressable onPress={() => show(message.sender)}>\n <Avatar size={26} uri={message.sender?.profileUrl} />\n </Pressable>\n )}\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n avatar: {\n width: 26,\n marginRight: 12,\n },\n});\n\nexport default MessageIncomingAvatar;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AAE9C,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,yCAAyC;AAGlF,SAASC,cAAc,QAAQ,wBAAwB;AAMvD,MAAMC,qBAAqB,GAAGC,IAAA,IAAkC;EAAA,IAAAC,eAAA;EAAA,IAAjC;IAAEC,OAAO;IAAEC;EAAgB,CAAC,GAAAH,IAAA;EACzD,MAAM;IAAEI;EAAK,CAAC,GAAGN,cAAc,EAAE;EACjC,IAAIK,QAAQ,EAAE,oBAAOV,KAAA,CAAAY,aAAA,CAACV,IAAI;IAACW,KAAK,EAAEC,MAAM,CAACC;EAAO,EAAG;EACnD,oBACEf,KAAA,CAAAY,aAAA,CAACV,IAAI;IAACW,KAAK,EAAEC,MAAM,CAACC;EAAO,GACxB,CAACN,OAAO,CAACO,aAAa,EAAE,IAAIP,OAAO,CAACQ,aAAa,EAAE,kBAClDjB,KAAA,CAAAY,aAAA,CAACX,SAAS;IAACiB,OAAO,EAAEA,CAAA,KAAMP,IAAI,CAACF,OAAO,CAACU,MAAM;EAAE,gBAC7CnB,KAAA,CAAAY,aAAA,CAACT,MAAM;IAACiB,IAAI,EAAE,EAAG;IAACC,GAAG,GAAAb,eAAA,GAAEC,OAAO,CAACU,MAAM,cAAAX,eAAA,uBAAdA,eAAA,CAAgBc;EAAW,EAAG,CAExD,CACI;AAEX,CAAC;AAED,MAAMR,MAAM,GAAGV,gBAAgB,CAAC;EAC9BW,MAAM,EAAE;IACNQ,KAAK,EAAE,EAAE;IACTC,WAAW,EAAE;EACf;AACF,CAAC,CAAC;AAEF,eAAelB,qBAAqB"}
@@ -1,33 +0,0 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { useLocalization } from '../../hooks/useContext';
5
- const MessageIncomingSenderName = _ref => {
6
- var _message$sender;
7
- let {
8
- message,
9
- grouping
10
- } = _ref;
11
- const {
12
- colors
13
- } = useUIKitTheme();
14
- const {
15
- STRINGS
16
- } = useLocalization();
17
- if (grouping) return null;
18
- return /*#__PURE__*/React.createElement(View, {
19
- style: styles.sender
20
- }, (message.isFileMessage() || message.isUserMessage()) && /*#__PURE__*/React.createElement(Text, {
21
- caption1: true,
22
- color: colors.ui.groupChannelMessage.incoming.enabled.textSenderName,
23
- numberOfLines: 1
24
- }, ((_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.nickname) || STRINGS.LABELS.USER_NO_NAME));
25
- };
26
- const styles = createStyleSheet({
27
- sender: {
28
- marginLeft: 12,
29
- marginBottom: 4
30
- }
31
- });
32
- export default MessageIncomingSenderName;
33
- //# sourceMappingURL=MessageIncomingSenderName.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","MessageIncomingSenderName","_ref","_message$sender","message","grouping","colors","STRINGS","createElement","style","styles","sender","isFileMessage","isUserMessage","caption1","color","ui","groupChannelMessage","incoming","enabled","textSenderName","numberOfLines","nickname","LABELS","USER_NO_NAME","marginLeft","marginBottom"],"sources":["MessageIncomingSenderName.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\ntype Props = {\n message: SendbirdMessage;\n grouping: boolean;\n};\nconst MessageIncomingSenderName = ({ message, grouping }: Props) => {\n const { colors } = useUIKitTheme();\n const { STRINGS } = useLocalization();\n if (grouping) return null;\n\n return (\n <View style={styles.sender}>\n {(message.isFileMessage() || message.isUserMessage()) && (\n <Text caption1 color={colors.ui.groupChannelMessage.incoming.enabled.textSenderName} numberOfLines={1}>\n {message.sender?.nickname || STRINGS.LABELS.USER_NO_NAME}\n </Text>\n )}\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n sender: {\n marginLeft: 12,\n marginBottom: 4,\n },\n});\n\nexport default MessageIncomingSenderName;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAG/F,SAASC,eAAe,QAAQ,wBAAwB;AAMxD,MAAMC,yBAAyB,GAAGC,IAAA,IAAkC;EAAA,IAAAC,eAAA;EAAA,IAAjC;IAAEC,OAAO;IAAEC;EAAgB,CAAC,GAAAH,IAAA;EAC7D,MAAM;IAAEI;EAAO,CAAC,GAAGP,aAAa,EAAE;EAClC,MAAM;IAAEQ;EAAQ,CAAC,GAAGP,eAAe,EAAE;EACrC,IAAIK,QAAQ,EAAE,OAAO,IAAI;EAEzB,oBACEV,KAAA,CAAAa,aAAA,CAACZ,IAAI;IAACa,KAAK,EAAEC,MAAM,CAACC;EAAO,GACxB,CAACP,OAAO,CAACQ,aAAa,EAAE,IAAIR,OAAO,CAACS,aAAa,EAAE,kBAClDlB,KAAA,CAAAa,aAAA,CAACX,IAAI;IAACiB,QAAQ;IAACC,KAAK,EAAET,MAAM,CAACU,EAAE,CAACC,mBAAmB,CAACC,QAAQ,CAACC,OAAO,CAACC,cAAe;IAACC,aAAa,EAAE;EAAE,GACnG,EAAAlB,eAAA,GAAAC,OAAO,CAACO,MAAM,cAAAR,eAAA,uBAAdA,eAAA,CAAgBmB,QAAQ,KAAIf,OAAO,CAACgB,MAAM,CAACC,YAAY,CAE3D,CACI;AAEX,CAAC;AAED,MAAMd,MAAM,GAAGZ,gBAAgB,CAAC;EAC9Ba,MAAM,EAAE;IACNc,UAAU,EAAE,EAAE;IACdC,YAAY,EAAE;EAChB;AACF,CAAC,CAAC;AAEF,eAAezB,yBAAyB"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","useMessageOutgoingStatus","Icon","LoadingSpinner","createStyleSheet","useUIKitTheme","useSendbirdChat","SIZE","MessageOutgoingStatus","_ref","channel","message","isUserMessage","isFileMessage","sdk","colors","outgoingStatus","createElement","size","style","styles","container","icon","color","error","secondary","onBackground03","marginRight","memo"],"sources":["MessageOutgoingStatus.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useMessageOutgoingStatus } from '@sendbird/uikit-chat-hooks';\nimport { Icon, LoadingSpinner, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdGroupChannel, SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useSendbirdChat } from '../../hooks/useContext';\n\nconst SIZE = 16;\n\ntype Props = { channel: SendbirdGroupChannel; message: SendbirdMessage };\nconst MessageOutgoingStatus = ({ channel, message }: Props) => {\n if (!message.isUserMessage() && !message.isFileMessage()) return null;\n\n const { sdk } = useSendbirdChat();\n const { colors } = useUIKitTheme();\n const outgoingStatus = useMessageOutgoingStatus(sdk, channel, message);\n\n if (outgoingStatus === 'PENDING') {\n return <LoadingSpinner size={SIZE} style={styles.container} />;\n }\n\n if (outgoingStatus === 'FAILED') {\n return <Icon icon={'error'} size={SIZE} color={colors.error} style={styles.container} />;\n }\n\n if (outgoingStatus === 'READ') {\n return <Icon icon={'done-all'} size={SIZE} color={colors.secondary} style={styles.container} />;\n }\n\n if (outgoingStatus === 'UNREAD' || outgoingStatus === 'DELIVERED') {\n return <Icon icon={'done-all'} size={SIZE} color={colors.onBackground03} style={styles.container} />;\n }\n\n if (outgoingStatus === 'UNDELIVERED') {\n return <Icon icon={'done'} size={SIZE} color={colors.onBackground03} style={styles.container} />;\n }\n\n return null;\n};\n\nconst styles = createStyleSheet({\n container: {\n marginRight: 4,\n },\n});\n\nexport default React.memo(MessageOutgoingStatus);\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,IAAI,EAAEC,cAAc,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAG/G,SAASC,eAAe,QAAQ,wBAAwB;AAExD,MAAMC,IAAI,GAAG,EAAE;AAGf,MAAMC,qBAAqB,GAAGC,IAAA,IAAiC;EAAA,IAAhC;IAAEC,OAAO;IAAEC;EAAe,CAAC,GAAAF,IAAA;EACxD,IAAI,CAACE,OAAO,CAACC,aAAa,EAAE,IAAI,CAACD,OAAO,CAACE,aAAa,EAAE,EAAE,OAAO,IAAI;EAErE,MAAM;IAAEC;EAAI,CAAC,GAAGR,eAAe,EAAE;EACjC,MAAM;IAAES;EAAO,CAAC,GAAGV,aAAa,EAAE;EAClC,MAAMW,cAAc,GAAGf,wBAAwB,CAACa,GAAG,EAAEJ,OAAO,EAAEC,OAAO,CAAC;EAEtE,IAAIK,cAAc,KAAK,SAAS,EAAE;IAChC,oBAAOhB,KAAA,CAAAiB,aAAA,CAACd,cAAc;MAACe,IAAI,EAAEX,IAAK;MAACY,KAAK,EAAEC,MAAM,CAACC;IAAU,EAAG;EAChE;EAEA,IAAIL,cAAc,KAAK,QAAQ,EAAE;IAC/B,oBAAOhB,KAAA,CAAAiB,aAAA,CAACf,IAAI;MAACoB,IAAI,EAAE,OAAQ;MAACJ,IAAI,EAAEX,IAAK;MAACgB,KAAK,EAAER,MAAM,CAACS,KAAM;MAACL,KAAK,EAAEC,MAAM,CAACC;IAAU,EAAG;EAC1F;EAEA,IAAIL,cAAc,KAAK,MAAM,EAAE;IAC7B,oBAAOhB,KAAA,CAAAiB,aAAA,CAACf,IAAI;MAACoB,IAAI,EAAE,UAAW;MAACJ,IAAI,EAAEX,IAAK;MAACgB,KAAK,EAAER,MAAM,CAACU,SAAU;MAACN,KAAK,EAAEC,MAAM,CAACC;IAAU,EAAG;EACjG;EAEA,IAAIL,cAAc,KAAK,QAAQ,IAAIA,cAAc,KAAK,WAAW,EAAE;IACjE,oBAAOhB,KAAA,CAAAiB,aAAA,CAACf,IAAI;MAACoB,IAAI,EAAE,UAAW;MAACJ,IAAI,EAAEX,IAAK;MAACgB,KAAK,EAAER,MAAM,CAACW,cAAe;MAACP,KAAK,EAAEC,MAAM,CAACC;IAAU,EAAG;EACtG;EAEA,IAAIL,cAAc,KAAK,aAAa,EAAE;IACpC,oBAAOhB,KAAA,CAAAiB,aAAA,CAACf,IAAI;MAACoB,IAAI,EAAE,MAAO;MAACJ,IAAI,EAAEX,IAAK;MAACgB,KAAK,EAAER,MAAM,CAACW,cAAe;MAACP,KAAK,EAAEC,MAAM,CAACC;IAAU,EAAG;EAClG;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMD,MAAM,GAAGhB,gBAAgB,CAAC;EAC9BiB,SAAS,EAAE;IACTM,WAAW,EAAE;EACf;AACF,CAAC,CAAC;AAEF,4BAAe3B,KAAK,CAAC4B,IAAI,CAACpB,qBAAqB,CAAC"}
@@ -1,26 +0,0 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import { Text, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { useLocalization } from '../../hooks/useContext';
5
- const MessageTime = _ref => {
6
- let {
7
- message,
8
- grouping,
9
- style
10
- } = _ref;
11
- const {
12
- STRINGS
13
- } = useLocalization();
14
- const {
15
- colors
16
- } = useUIKitTheme();
17
- if (grouping) return null;
18
- return /*#__PURE__*/React.createElement(View, {
19
- style: style
20
- }, /*#__PURE__*/React.createElement(Text, {
21
- caption4: true,
22
- color: colors.ui.groupChannelMessage.incoming.enabled.textTime
23
- }, STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_TIME(message)));
24
- };
25
- export default MessageTime;
26
- //# sourceMappingURL=MessageTime.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","Text","useUIKitTheme","useLocalization","MessageTime","_ref","message","grouping","style","STRINGS","colors","createElement","caption4","color","ui","groupChannelMessage","incoming","enabled","textTime","GROUP_CHANNEL","MESSAGE_BUBBLE_TIME"],"sources":["MessageTime.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport { Text, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\ntype Props = {\n message: SendbirdMessage;\n grouping: boolean;\n style?: StyleProp<ViewStyle>;\n};\nconst MessageTime = ({ message, grouping, style }: Props) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n if (grouping) return null;\n\n return (\n <View style={style}>\n <Text caption4 color={colors.ui.groupChannelMessage.incoming.enabled.textTime}>\n {STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_TIME(message)}\n </Text>\n </View>\n );\n};\n\nexport default MessageTime;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAoBC,IAAI,QAAmB,cAAc;AAEzD,SAASC,IAAI,EAAEC,aAAa,QAAQ,yCAAyC;AAG7E,SAASC,eAAe,QAAQ,wBAAwB;AAOxD,MAAMC,WAAW,GAAGC,IAAA,IAAyC;EAAA,IAAxC;IAAEC,OAAO;IAAEC,QAAQ;IAAEC;EAAa,CAAC,GAAAH,IAAA;EACtD,MAAM;IAAEI;EAAQ,CAAC,GAAGN,eAAe,EAAE;EACrC,MAAM;IAAEO;EAAO,CAAC,GAAGR,aAAa,EAAE;EAClC,IAAIK,QAAQ,EAAE,OAAO,IAAI;EAEzB,oBACER,KAAA,CAAAY,aAAA,CAACX,IAAI;IAACQ,KAAK,EAAEA;EAAM,gBACjBT,KAAA,CAAAY,aAAA,CAACV,IAAI;IAACW,QAAQ;IAACC,KAAK,EAAEH,MAAM,CAACI,EAAE,CAACC,mBAAmB,CAACC,QAAQ,CAACC,OAAO,CAACC;EAAS,GAC3ET,OAAO,CAACU,aAAa,CAACC,mBAAmB,CAACd,OAAO,CAAC,CAC9C,CACF;AAEX,CAAC;AAED,eAAeF,WAAW"}
@@ -1,38 +0,0 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { useLocalization } from '../../../hooks/useContext';
5
- const UnknownMessage = _ref => {
6
- let {
7
- message,
8
- variant,
9
- pressed
10
- } = _ref;
11
- const {
12
- STRINGS
13
- } = useLocalization();
14
- const {
15
- colors
16
- } = useUIKitTheme();
17
- const color = colors.ui.groupChannelMessage[variant][pressed ? 'pressed' : 'enabled'];
18
- return /*#__PURE__*/React.createElement(View, {
19
- style: [styles.container, {
20
- backgroundColor: color.background
21
- }]
22
- }, /*#__PURE__*/React.createElement(Text, {
23
- body3: true,
24
- color: colors.onBackground01
25
- }, STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_UNKNOWN_TITLE(message)), /*#__PURE__*/React.createElement(Text, {
26
- body3: true,
27
- color: colors.onBackground02
28
- }, STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_UNKNOWN_DESC(message)));
29
- };
30
- const styles = createStyleSheet({
31
- container: {
32
- paddingHorizontal: 12,
33
- paddingVertical: 6,
34
- borderRadius: 16
35
- }
36
- });
37
- export default UnknownMessage;
38
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","UnknownMessage","_ref","message","variant","pressed","STRINGS","colors","color","ui","groupChannelMessage","createElement","style","styles","container","backgroundColor","background","body3","onBackground01","GROUP_CHANNEL","MESSAGE_BUBBLE_UNKNOWN_TITLE","onBackground02","MESSAGE_BUBBLE_UNKNOWN_DESC","paddingHorizontal","paddingVertical","borderRadius"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\n\nimport { useLocalization } from '../../../hooks/useContext';\nimport type { MessageRendererInterface } from '../index';\n\nexport type UnknownMessageProps = MessageRendererInterface;\nconst UnknownMessage = ({ message, variant, pressed }: UnknownMessageProps) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage[variant][pressed ? 'pressed' : 'enabled'];\n return (\n <View style={[styles.container, { backgroundColor: color.background }]}>\n <Text body3 color={colors.onBackground01}>\n {STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_UNKNOWN_TITLE(message)}\n </Text>\n <Text body3 color={colors.onBackground02}>\n {STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_UNKNOWN_DESC(message)}\n </Text>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n paddingHorizontal: 12,\n paddingVertical: 6,\n borderRadius: 16,\n },\n});\n\nexport default UnknownMessage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAE/F,SAASC,eAAe,QAAQ,2BAA2B;AAI3D,MAAMC,cAAc,GAAGC,IAAA,IAAwD;EAAA,IAAvD;IAAEC,OAAO;IAAEC,OAAO;IAAEC;EAA6B,CAAC,GAAAH,IAAA;EACxE,MAAM;IAAEI;EAAQ,CAAC,GAAGN,eAAe,EAAE;EACrC,MAAM;IAAEO;EAAO,CAAC,GAAGR,aAAa,EAAE;EAClC,MAAMS,KAAK,GAAGD,MAAM,CAACE,EAAE,CAACC,mBAAmB,CAACN,OAAO,CAAC,CAACC,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;EACrF,oBACEV,KAAA,CAAAgB,aAAA,CAACf,IAAI;IAACgB,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE;MAAEC,eAAe,EAAEP,KAAK,CAACQ;IAAW,CAAC;EAAE,gBACrErB,KAAA,CAAAgB,aAAA,CAACd,IAAI;IAACoB,KAAK;IAACT,KAAK,EAAED,MAAM,CAACW;EAAe,GACtCZ,OAAO,CAACa,aAAa,CAACC,4BAA4B,CAACjB,OAAO,CAAC,CACvD,eACPR,KAAA,CAAAgB,aAAA,CAACd,IAAI;IAACoB,KAAK;IAACT,KAAK,EAAED,MAAM,CAACc;EAAe,GACtCf,OAAO,CAACa,aAAa,CAACG,2BAA2B,CAACnB,OAAO,CAAC,CACtD,CACF;AAEX,CAAC;AAED,MAAMU,MAAM,GAAGf,gBAAgB,CAAC;EAC9BgB,SAAS,EAAE;IACTS,iBAAiB,EAAE,EAAE;IACrBC,eAAe,EAAE,CAAC;IAClBC,YAAY,EAAE;EAChB;AACF,CAAC,CAAC;AAEF,eAAexB,cAAc"}
@@ -1,105 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import React from 'react';
3
- import { View } from 'react-native';
4
- import { RegexText, Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
5
- import { urlRegexStrict } from '@sendbird/uikit-utils';
6
- import { useLocalization, useSendbirdChat, useUserProfile } from '../../../hooks/useContext';
7
- import SBUUtils from '../../../libs/SBUUtils';
8
- const BaseUserMessage = _ref => {
9
- let {
10
- message,
11
- variant,
12
- pressed,
13
- children,
14
- onLongPressMentionedUser,
15
- onLongPressURL
16
- } = _ref;
17
- const {
18
- mentionManager,
19
- currentUser
20
- } = useSendbirdChat();
21
- const {
22
- show
23
- } = useUserProfile();
24
- const {
25
- STRINGS
26
- } = useLocalization();
27
- const {
28
- colors,
29
- palette
30
- } = useUIKitTheme();
31
- const color = colors.ui.groupChannelMessage[variant][pressed ? 'pressed' : 'enabled'];
32
- return /*#__PURE__*/React.createElement(View, {
33
- style: [styles.container, {
34
- backgroundColor: color.background
35
- }]
36
- }, /*#__PURE__*/React.createElement(View, {
37
- style: styles.wrapper
38
- }, /*#__PURE__*/React.createElement(Text, {
39
- body3: true,
40
- color: color.textMsg
41
- }, /*#__PURE__*/React.createElement(RegexText, {
42
- body3: true,
43
- color: color.textMsg,
44
- patterns: [{
45
- regex: mentionManager.templateRegex,
46
- replacer(_ref2) {
47
- var _message$mentionedUse;
48
- let {
49
- match,
50
- groups,
51
- parentProps,
52
- index,
53
- keyPrefix
54
- } = _ref2;
55
- const user = (_message$mentionedUse = message.mentionedUsers) === null || _message$mentionedUse === void 0 ? void 0 : _message$mentionedUse.find(it => it.userId === groups[2]);
56
- if (user) {
57
- return /*#__PURE__*/React.createElement(Text, _extends({}, parentProps, {
58
- key: `${keyPrefix}-${index}`,
59
- onPress: () => show(user),
60
- onLongPress: onLongPressMentionedUser,
61
- style: [parentProps === null || parentProps === void 0 ? void 0 : parentProps.style, {
62
- fontWeight: 'bold'
63
- }, user.userId === (currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId) && {
64
- backgroundColor: palette.highlight
65
- }]
66
- }), `${mentionManager.asMentionedMessageText(user)}`);
67
- }
68
- return match;
69
- }
70
- }, {
71
- regex: urlRegexStrict,
72
- replacer(_ref3) {
73
- let {
74
- match,
75
- parentProps,
76
- index,
77
- keyPrefix
78
- } = _ref3;
79
- return /*#__PURE__*/React.createElement(Text, _extends({}, parentProps, {
80
- key: `${keyPrefix}-${index}`,
81
- onPress: () => SBUUtils.openURL(match),
82
- onLongPress: onLongPressURL,
83
- style: [parentProps === null || parentProps === void 0 ? void 0 : parentProps.style, {
84
- textDecorationLine: 'underline'
85
- }]
86
- }), match);
87
- }
88
- }]
89
- }, mentionManager.shouldUseMentionedMessageTemplate(message) ? message.mentionedMessageTemplate : message.message), Boolean(message.updatedAt) && /*#__PURE__*/React.createElement(Text, {
90
- body3: true,
91
- color: color.textEdited
92
- }, STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_EDITED_POSTFIX))), children);
93
- };
94
- const styles = createStyleSheet({
95
- container: {
96
- borderRadius: 16,
97
- overflow: 'hidden'
98
- },
99
- wrapper: {
100
- paddingHorizontal: 12,
101
- paddingVertical: 6
102
- }
103
- });
104
- export default BaseUserMessage;
105
- //# sourceMappingURL=BaseUserMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","RegexText","Text","createStyleSheet","useUIKitTheme","urlRegexStrict","useLocalization","useSendbirdChat","useUserProfile","SBUUtils","BaseUserMessage","_ref","message","variant","pressed","children","onLongPressMentionedUser","onLongPressURL","mentionManager","currentUser","show","STRINGS","colors","palette","color","ui","groupChannelMessage","createElement","style","styles","container","backgroundColor","background","wrapper","body3","textMsg","patterns","regex","templateRegex","replacer","_ref2","_message$mentionedUse","match","groups","parentProps","index","keyPrefix","user","mentionedUsers","find","it","userId","_extends","key","onPress","onLongPress","fontWeight","highlight","asMentionedMessageText","_ref3","openURL","textDecorationLine","shouldUseMentionedMessageTemplate","mentionedMessageTemplate","Boolean","updatedAt","textEdited","GROUP_CHANNEL","MESSAGE_BUBBLE_EDITED_POSTFIX","borderRadius","overflow","paddingHorizontal","paddingVertical"],"sources":["BaseUserMessage.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\n\nimport { RegexText, Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport { urlRegexStrict } from '@sendbird/uikit-utils';\n\nimport { useLocalization, useSendbirdChat, useUserProfile } from '../../../hooks/useContext';\nimport SBUUtils from '../../../libs/SBUUtils';\nimport type { UserMessageProps } from './index';\n\nconst BaseUserMessage = ({\n message,\n variant,\n pressed,\n children,\n onLongPressMentionedUser,\n onLongPressURL,\n}: UserMessageProps) => {\n const { mentionManager, currentUser } = useSendbirdChat();\n const { show } = useUserProfile();\n const { STRINGS } = useLocalization();\n const { colors, palette } = useUIKitTheme();\n\n const color = colors.ui.groupChannelMessage[variant][pressed ? 'pressed' : 'enabled'];\n\n return (\n <View style={[styles.container, { backgroundColor: color.background }]}>\n <View style={styles.wrapper}>\n <Text body3 color={color.textMsg}>\n <RegexText\n body3\n color={color.textMsg}\n patterns={[\n {\n regex: mentionManager.templateRegex,\n replacer({ match, groups, parentProps, index, keyPrefix }) {\n const user = message.mentionedUsers?.find((it) => it.userId === groups[2]);\n if (user) {\n return (\n <Text\n {...parentProps}\n key={`${keyPrefix}-${index}`}\n onPress={() => show(user)}\n onLongPress={onLongPressMentionedUser}\n style={[\n parentProps?.style,\n { fontWeight: 'bold' },\n user.userId === currentUser?.userId && { backgroundColor: palette.highlight },\n ]}\n >\n {`${mentionManager.asMentionedMessageText(user)}`}\n </Text>\n );\n }\n return match;\n },\n },\n {\n regex: urlRegexStrict,\n replacer({ match, parentProps, index, keyPrefix }) {\n return (\n <Text\n {...parentProps}\n key={`${keyPrefix}-${index}`}\n onPress={() => SBUUtils.openURL(match)}\n onLongPress={onLongPressURL}\n style={[parentProps?.style, { textDecorationLine: 'underline' }]}\n >\n {match}\n </Text>\n );\n },\n },\n ]}\n >\n {mentionManager.shouldUseMentionedMessageTemplate(message)\n ? message.mentionedMessageTemplate\n : message.message}\n </RegexText>\n {Boolean(message.updatedAt) && (\n <Text body3 color={color.textEdited}>\n {STRINGS.GROUP_CHANNEL.MESSAGE_BUBBLE_EDITED_POSTFIX}\n </Text>\n )}\n </Text>\n </View>\n {children}\n </View>\n );\n};\nconst styles = createStyleSheet({\n container: {\n borderRadius: 16,\n overflow: 'hidden',\n },\n wrapper: {\n paddingHorizontal: 12,\n paddingVertical: 6,\n },\n});\n\nexport default BaseUserMessage;\n"],"mappings":"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"}