@sendbird/uikit-react-native 2.3.0 → 2.4.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.
- package/README.md +13 -16
- package/lib/commonjs/components/ChannelCover.js +54 -40
- package/lib/commonjs/components/ChannelCover.js.map +1 -1
- package/lib/commonjs/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/EditInput.js +28 -13
- package/lib/commonjs/components/ChannelInput/EditInput.js.map +1 -0
- package/lib/commonjs/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/SendInput.js +64 -30
- package/lib/commonjs/components/ChannelInput/SendInput.js.map +1 -0
- package/lib/commonjs/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/index.js +33 -34
- package/lib/commonjs/components/ChannelInput/index.js.map +1 -0
- package/lib/commonjs/components/FileViewer.js +3 -3
- package/lib/commonjs/components/FileViewer.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js +2 -2
- package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageTime.js +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageTime.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js +1 -1
- package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +58 -0
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -0
- package/lib/commonjs/components/OpenChannelMessageRenderer/index.js +135 -0
- package/lib/commonjs/components/OpenChannelMessageRenderer/index.js.map +1 -0
- package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js +2 -4
- package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -1
- package/lib/commonjs/components/TypedPlaceholder.js +6 -0
- package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
- package/lib/commonjs/containers/GroupChannelPreviewContainer.js +2 -2
- package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
- package/lib/commonjs/containers/SendbirdUIKitContainer.js +39 -9
- package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
- package/lib/commonjs/contexts/UserProfileCtx.js +20 -10
- package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js +54 -0
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js.map +1 -0
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +10 -10
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/module/moduleContext.js +2 -2
- package/lib/commonjs/domain/groupChannel/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/index.js +8 -0
- package/lib/commonjs/domain/groupChannelBannedUsers/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +4 -2
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +4 -2
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +2 -3
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelHeader.js +83 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js +95 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js.map +1 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelMessageList.js +351 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelMessageList.js.map +1 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusEmpty.js +34 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusEmpty.js.map +1 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusLoading.js +34 -0
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannel/index.js +62 -0
- package/lib/commonjs/domain/openChannel/index.js.map +1 -0
- package/lib/commonjs/domain/openChannel/module/createOpenChannelModule.js +45 -0
- package/lib/commonjs/domain/openChannel/module/createOpenChannelModule.js.map +1 -0
- package/lib/commonjs/domain/openChannel/module/moduleContext.js +53 -0
- package/lib/commonjs/domain/openChannel/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannel/types.js +6 -0
- package/lib/commonjs/domain/openChannel/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js +39 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js +54 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js +28 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js +32 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js +28 -0
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/index.js +70 -0
- package/lib/commonjs/domain/openChannelBannedUsers/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js +45 -0
- package/lib/commonjs/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/module/moduleContext.js +45 -0
- package/lib/commonjs/domain/openChannelBannedUsers/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelBannedUsers/types.js +6 -0
- package/lib/commonjs/domain/openChannelBannedUsers/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateHeader.js +53 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js +169 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js +22 -0
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/index.js +54 -0
- package/lib/commonjs/domain/openChannelCreate/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/module/createOpenChannelCreateModule.js +37 -0
- package/lib/commonjs/domain/openChannelCreate/module/createOpenChannelCreateModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/module/moduleContext.js +44 -0
- package/lib/commonjs/domain/openChannelCreate/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelCreate/types.js +6 -0
- package/lib/commonjs/domain/openChannelCreate/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListHeader.js +39 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js +58 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusEmpty.js +34 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusEmpty.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusError.js +32 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusError.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusLoading.js +34 -0
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/index.js +70 -0
- package/lib/commonjs/domain/openChannelList/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/module/createOpenChannelListModule.js +45 -0
- package/lib/commonjs/domain/openChannelList/module/createOpenChannelListModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/module/moduleContext.js +42 -0
- package/lib/commonjs/domain/openChannelList/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelList/types.js +6 -0
- package/lib/commonjs/domain/openChannelList/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationHeader.js +39 -0
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationMenu.js +74 -0
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationMenu.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/index.js +46 -0
- package/lib/commonjs/domain/openChannelModeration/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/module/createOpenChannelModerationModule.js +33 -0
- package/lib/commonjs/domain/openChannelModeration/module/createOpenChannelModerationModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/module/moduleContext.js +45 -0
- package/lib/commonjs/domain/openChannelModeration/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelModeration/types.js +6 -0
- package/lib/commonjs/domain/openChannelModeration/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js +39 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js +54 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js +28 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js +32 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js +28 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/index.js +62 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js +45 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/module/moduleContext.js +45 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/types.js +6 -0
- package/lib/commonjs/domain/openChannelMutedParticipants/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js +44 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsList.js +54 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsList.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js +28 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js +32 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js +28 -0
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/index.js +62 -0
- package/lib/commonjs/domain/openChannelOperators/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js +45 -0
- package/lib/commonjs/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/module/moduleContext.js +45 -0
- package/lib/commonjs/domain/openChannelOperators/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelOperators/types.js +6 -0
- package/lib/commonjs/domain/openChannelOperators/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsHeader.js +49 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsHeader.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsInfo.js +68 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsInfo.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsMenu.js +118 -0
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsMenu.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/index.js +54 -0
- package/lib/commonjs/domain/openChannelSettings/index.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/module/createOpenChannelSettingsModule.js +37 -0
- package/lib/commonjs/domain/openChannelSettings/module/createOpenChannelSettingsModule.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/module/moduleContext.js +186 -0
- package/lib/commonjs/domain/openChannelSettings/module/moduleContext.js.map +1 -0
- package/lib/commonjs/domain/openChannelSettings/types.js +6 -0
- package/lib/commonjs/domain/openChannelSettings/types.js.map +1 -0
- package/lib/commonjs/domain/openChannelUserList/types.js +6 -0
- package/lib/commonjs/domain/openChannelUserList/types.js.map +1 -0
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +3 -6
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelFragment.js +33 -3
- package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +6 -8
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js +13 -4
- package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js +2 -4
- package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelBannedUsersFragment.js +101 -0
- package/lib/commonjs/fragments/createOpenChannelBannedUsersFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelCreateFragment.js +86 -0
- package/lib/commonjs/fragments/createOpenChannelCreateFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelFragment.js +177 -0
- package/lib/commonjs/fragments/createOpenChannelFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelListFragment.js +93 -0
- package/lib/commonjs/fragments/createOpenChannelListFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelModerationFragment.js +68 -0
- package/lib/commonjs/fragments/createOpenChannelModerationFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelMutedParticipantsFragment.js +117 -0
- package/lib/commonjs/fragments/createOpenChannelMutedParticipantsFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelOperatorsFragment.js +124 -0
- package/lib/commonjs/fragments/createOpenChannelOperatorsFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelParticipantsFragment.js +162 -0
- package/lib/commonjs/fragments/createOpenChannelParticipantsFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelRegisterOperatorFragment.js +116 -0
- package/lib/commonjs/fragments/createOpenChannelRegisterOperatorFragment.js.map +1 -0
- package/lib/commonjs/fragments/createOpenChannelSettingsFragment.js +70 -0
- package/lib/commonjs/fragments/createOpenChannelSettingsFragment.js.map +1 -0
- package/lib/commonjs/hooks/useMentionSuggestion.js +3 -12
- package/lib/commonjs/hooks/useMentionSuggestion.js.map +1 -1
- package/lib/commonjs/index.js +475 -46
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/localization/StringSet.en.js +2 -2
- package/lib/commonjs/localization/StringSet.en.js.map +1 -1
- package/lib/commonjs/localization/StringSet.type.js +0 -250
- package/lib/commonjs/localization/StringSet.type.js.map +1 -1
- package/lib/commonjs/localization/createBaseStringSet.js +393 -0
- package/lib/commonjs/localization/createBaseStringSet.js.map +1 -0
- package/lib/commonjs/platform/createFileService.expo.js +6 -14
- package/lib/commonjs/platform/createFileService.expo.js.map +1 -1
- package/lib/commonjs/platform/createFileService.native.js +70 -37
- package/lib/commonjs/platform/createFileService.native.js.map +1 -1
- package/lib/commonjs/utils/normalizeFile.js +41 -0
- package/lib/commonjs/utils/normalizeFile.js.map +1 -0
- package/lib/commonjs/version.js +1 -1
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/components/ChannelCover.js +47 -33
- package/lib/module/components/ChannelCover.js.map +1 -1
- package/lib/module/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/EditInput.js +28 -13
- package/lib/module/components/ChannelInput/EditInput.js.map +1 -0
- package/lib/module/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/SendInput.js +65 -31
- package/lib/module/components/ChannelInput/SendInput.js.map +1 -0
- package/lib/module/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/index.js +35 -35
- package/lib/module/components/ChannelInput/index.js.map +1 -0
- package/lib/module/components/FileViewer.js +3 -3
- package/lib/module/components/FileViewer.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js +2 -2
- package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageDateSeparator.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js +1 -1
- package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageTime.js +1 -1
- package/lib/module/components/MessageRenderer/MessageTime.js.map +1 -1
- package/lib/module/components/MessageRenderer/UnknownMessage/index.js +1 -1
- package/lib/module/components/MessageRenderer/UnknownMessage/index.js.map +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +44 -0
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -0
- package/lib/module/components/OpenChannelMessageRenderer/index.js +119 -0
- package/lib/module/components/OpenChannelMessageRenderer/index.js.map +1 -0
- package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js +3 -4
- package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -1
- package/lib/module/components/TypedPlaceholder.js +6 -0
- package/lib/module/components/TypedPlaceholder.js.map +1 -1
- package/lib/module/containers/GroupChannelPreviewContainer.js +3 -3
- package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
- package/lib/module/containers/SendbirdUIKitContainer.js +40 -10
- package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
- package/lib/module/contexts/UserProfileCtx.js +21 -11
- package/lib/module/contexts/UserProfileCtx.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput.js +36 -0
- package/lib/module/domain/groupChannel/component/GroupChannelInput.js.map +1 -0
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +10 -10
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/module/domain/groupChannel/module/moduleContext.js +3 -3
- package/lib/module/domain/groupChannel/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannel/types.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/index.js +1 -0
- package/lib/module/domain/groupChannelBannedUsers/index.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +2 -2
- package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +4 -2
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +4 -2
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js +3 -4
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelHeader.js +63 -0
- package/lib/module/domain/openChannel/component/OpenChannelHeader.js.map +1 -0
- package/lib/module/domain/openChannel/component/OpenChannelInput.js +74 -0
- package/lib/module/domain/openChannel/component/OpenChannelInput.js.map +1 -0
- package/lib/module/domain/openChannel/component/OpenChannelMessageList.js +325 -0
- package/lib/module/domain/openChannel/component/OpenChannelMessageList.js.map +1 -0
- package/lib/module/domain/openChannel/component/OpenChannelStatusEmpty.js +21 -0
- package/lib/module/domain/openChannel/component/OpenChannelStatusEmpty.js.map +1 -0
- package/lib/module/domain/openChannel/component/OpenChannelStatusLoading.js +21 -0
- package/lib/module/domain/openChannel/component/OpenChannelStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannel/index.js +7 -0
- package/lib/module/domain/openChannel/index.js.map +1 -0
- package/lib/module/domain/openChannel/module/createOpenChannelModule.js +30 -0
- package/lib/module/domain/openChannel/module/createOpenChannelModule.js.map +1 -0
- package/lib/module/domain/openChannel/module/moduleContext.js +32 -0
- package/lib/module/domain/openChannel/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannel/types.js +2 -0
- package/lib/module/domain/openChannel/types.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js +25 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js +41 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js +16 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js +20 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js +16 -0
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/index.js +8 -0
- package/lib/module/domain/openChannelBannedUsers/index.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js +30 -0
- package/lib/module/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/module/moduleContext.js +25 -0
- package/lib/module/domain/openChannelBannedUsers/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelBannedUsers/types.js +2 -0
- package/lib/module/domain/openChannelBannedUsers/types.js.map +1 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateHeader.js +38 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateHeader.js.map +1 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js +153 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js.map +1 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js +11 -0
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannelCreate/index.js +6 -0
- package/lib/module/domain/openChannelCreate/index.js.map +1 -0
- package/lib/module/domain/openChannelCreate/module/createOpenChannelCreateModule.js +24 -0
- package/lib/module/domain/openChannelCreate/module/createOpenChannelCreateModule.js.map +1 -0
- package/lib/module/domain/openChannelCreate/module/moduleContext.js +24 -0
- package/lib/module/domain/openChannelCreate/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelCreate/types.js +2 -0
- package/lib/module/domain/openChannelCreate/types.js.map +1 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListHeader.js +25 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListHeader.js.map +1 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListList.js +45 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListList.js.map +1 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusEmpty.js +21 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusEmpty.js.map +1 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusError.js +20 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusError.js.map +1 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusLoading.js +21 -0
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannelList/index.js +8 -0
- package/lib/module/domain/openChannelList/index.js.map +1 -0
- package/lib/module/domain/openChannelList/module/createOpenChannelListModule.js +30 -0
- package/lib/module/domain/openChannelList/module/createOpenChannelListModule.js.map +1 -0
- package/lib/module/domain/openChannelList/module/moduleContext.js +22 -0
- package/lib/module/domain/openChannelList/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelList/types.js +2 -0
- package/lib/module/domain/openChannelList/types.js.map +1 -0
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationHeader.js +25 -0
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationHeader.js.map +1 -0
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationMenu.js +61 -0
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationMenu.js.map +1 -0
- package/lib/module/domain/openChannelModeration/index.js +5 -0
- package/lib/module/domain/openChannelModeration/index.js.map +1 -0
- package/lib/module/domain/openChannelModeration/module/createOpenChannelModerationModule.js +21 -0
- package/lib/module/domain/openChannelModeration/module/createOpenChannelModerationModule.js.map +1 -0
- package/lib/module/domain/openChannelModeration/module/moduleContext.js +25 -0
- package/lib/module/domain/openChannelModeration/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelModeration/types.js +2 -0
- package/lib/module/domain/openChannelModeration/types.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js +25 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js +41 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js +16 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js +20 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js +16 -0
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/index.js +7 -0
- package/lib/module/domain/openChannelMutedParticipants/index.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js +30 -0
- package/lib/module/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/module/moduleContext.js +25 -0
- package/lib/module/domain/openChannelMutedParticipants/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelMutedParticipants/types.js +2 -0
- package/lib/module/domain/openChannelMutedParticipants/types.js.map +1 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js +30 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js.map +1 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsList.js +41 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsList.js.map +1 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js +16 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js.map +1 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js +20 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js.map +1 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js +16 -0
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js.map +1 -0
- package/lib/module/domain/openChannelOperators/index.js +7 -0
- package/lib/module/domain/openChannelOperators/index.js.map +1 -0
- package/lib/module/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js +30 -0
- package/lib/module/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js.map +1 -0
- package/lib/module/domain/openChannelOperators/module/moduleContext.js +25 -0
- package/lib/module/domain/openChannelOperators/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelOperators/types.js +2 -0
- package/lib/module/domain/openChannelOperators/types.js.map +1 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsHeader.js +35 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsHeader.js.map +1 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsInfo.js +49 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsInfo.js.map +1 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsMenu.js +99 -0
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsMenu.js.map +1 -0
- package/lib/module/domain/openChannelSettings/index.js +6 -0
- package/lib/module/domain/openChannelSettings/index.js.map +1 -0
- package/lib/module/domain/openChannelSettings/module/createOpenChannelSettingsModule.js +24 -0
- package/lib/module/domain/openChannelSettings/module/createOpenChannelSettingsModule.js.map +1 -0
- package/lib/module/domain/openChannelSettings/module/moduleContext.js +161 -0
- package/lib/module/domain/openChannelSettings/module/moduleContext.js.map +1 -0
- package/lib/module/domain/openChannelSettings/types.js +2 -0
- package/lib/module/domain/openChannelSettings/types.js.map +1 -0
- package/lib/module/domain/openChannelUserList/types.js +2 -0
- package/lib/module/domain/openChannelUserList/types.js.map +1 -0
- package/lib/module/fragments/createGroupChannelCreateFragment.js +4 -7
- package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelFragment.js +33 -3
- package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelMembersFragment.js +7 -9
- package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelMutedMembersFragment.js +14 -4
- package/lib/module/fragments/createGroupChannelMutedMembersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelOperatorsFragment.js +3 -4
- package/lib/module/fragments/createGroupChannelOperatorsFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelBannedUsersFragment.js +84 -0
- package/lib/module/fragments/createOpenChannelBannedUsersFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelCreateFragment.js +69 -0
- package/lib/module/fragments/createOpenChannelCreateFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelFragment.js +153 -0
- package/lib/module/fragments/createOpenChannelFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelListFragment.js +77 -0
- package/lib/module/fragments/createOpenChannelListFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelModerationFragment.js +53 -0
- package/lib/module/fragments/createOpenChannelModerationFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelMutedParticipantsFragment.js +100 -0
- package/lib/module/fragments/createOpenChannelMutedParticipantsFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelOperatorsFragment.js +106 -0
- package/lib/module/fragments/createOpenChannelOperatorsFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelParticipantsFragment.js +140 -0
- package/lib/module/fragments/createOpenChannelParticipantsFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelRegisterOperatorFragment.js +96 -0
- package/lib/module/fragments/createOpenChannelRegisterOperatorFragment.js.map +1 -0
- package/lib/module/fragments/createOpenChannelSettingsFragment.js +55 -0
- package/lib/module/fragments/createOpenChannelSettingsFragment.js.map +1 -0
- package/lib/module/hooks/useMentionSuggestion.js +5 -14
- package/lib/module/hooks/useMentionSuggestion.js.map +1 -1
- package/lib/module/index.js +48 -6
- package/lib/module/index.js.map +1 -1
- package/lib/module/localization/StringSet.en.js +1 -1
- package/lib/module/localization/StringSet.en.js.map +1 -1
- package/lib/module/localization/StringSet.type.js +1 -250
- package/lib/module/localization/StringSet.type.js.map +1 -1
- package/lib/module/localization/createBaseStringSet.js +384 -0
- package/lib/module/localization/createBaseStringSet.js.map +1 -0
- package/lib/module/platform/createFileService.expo.js +7 -15
- package/lib/module/platform/createFileService.expo.js.map +1 -1
- package/lib/module/platform/createFileService.native.js +69 -36
- package/lib/module/platform/createFileService.native.js.map +1 -1
- package/lib/module/utils/normalizeFile.js +33 -0
- package/lib/module/utils/normalizeFile.js.map +1 -0
- package/lib/module/version.js +1 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/src/components/ChannelCover.d.ts +2 -2
- package/lib/typescript/src/components/ChannelInput/EditInput.d.ts +16 -0
- package/lib/typescript/src/components/ChannelInput/SendInput.d.ts +12 -0
- package/lib/typescript/src/components/ChannelInput/index.d.ts +43 -0
- package/lib/typescript/src/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.d.ts +6 -0
- package/lib/typescript/src/components/OpenChannelMessageRenderer/index.d.ts +16 -0
- package/lib/typescript/src/components/TypedPlaceholder.d.ts +1 -1
- package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +4 -3
- package/lib/typescript/src/contexts/UserProfileCtx.d.ts +6 -2
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput.d.ts +3 -0
- package/lib/typescript/src/domain/groupChannel/types.d.ts +9 -28
- package/lib/typescript/src/domain/groupChannelBannedUsers/index.d.ts +1 -0
- package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.d.ts +1 -1
- package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.d.ts +1 -1
- package/lib/typescript/src/domain/openChannel/component/OpenChannelHeader.d.ts +7 -0
- package/lib/typescript/src/domain/openChannel/component/OpenChannelInput.d.ts +3 -0
- package/lib/typescript/src/domain/openChannel/component/OpenChannelMessageList.d.ts +39 -0
- package/lib/typescript/src/domain/openChannel/component/OpenChannelStatusEmpty.d.ts +2 -0
- package/lib/typescript/src/domain/openChannel/component/OpenChannelStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannel/index.d.ts +6 -0
- package/lib/typescript/src/domain/openChannel/module/createOpenChannelModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannel/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannel/types.d.ts +97 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/index.d.ts +7 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelBannedUsers/types.d.ts +47 -0
- package/lib/typescript/src/domain/openChannelCreate/component/OpenChannelCreateHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelCreate/component/OpenChannelCreateProfileInput.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelCreate/index.d.ts +5 -0
- package/lib/typescript/src/domain/openChannelCreate/module/createOpenChannelCreateModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelCreate/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelCreate/types.d.ts +40 -0
- package/lib/typescript/src/domain/openChannelList/component/OpenChannelListHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelList/component/OpenChannelListList.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelList/component/OpenChannelListStatusEmpty.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelList/component/OpenChannelListStatusError.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelList/component/OpenChannelListStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelList/index.d.ts +7 -0
- package/lib/typescript/src/domain/openChannelList/module/createOpenChannelListModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelList/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelList/types.d.ts +60 -0
- package/lib/typescript/src/domain/openChannelModeration/component/OpenChannelModerationHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelModeration/component/OpenChannelModerationMenu.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelModeration/index.d.ts +4 -0
- package/lib/typescript/src/domain/openChannelModeration/module/createOpenChannelModerationModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelModeration/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelModeration/types.d.ts +43 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/index.d.ts +6 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelMutedParticipants/types.d.ts +47 -0
- package/lib/typescript/src/domain/openChannelOperators/component/OpenChannelOperatorsHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelOperators/component/OpenChannelOperatorsList.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.d.ts +2 -0
- package/lib/typescript/src/domain/openChannelOperators/index.d.ts +6 -0
- package/lib/typescript/src/domain/openChannelOperators/module/createOpenChannelOperatorsModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelOperators/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelOperators/types.d.ts +49 -0
- package/lib/typescript/src/domain/openChannelSettings/component/OpenChannelSettingsHeader.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelSettings/component/OpenChannelSettingsInfo.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelSettings/component/OpenChannelSettingsMenu.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelSettings/index.d.ts +5 -0
- package/lib/typescript/src/domain/openChannelSettings/module/createOpenChannelSettingsModule.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelSettings/module/moduleContext.d.ts +3 -0
- package/lib/typescript/src/domain/openChannelSettings/types.d.ts +49 -0
- package/lib/typescript/src/domain/openChannelUserList/types.d.ts +23 -0
- package/lib/typescript/src/fragments/createOpenChannelBannedUsersFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelCreateFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelListFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelModerationFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelMutedParticipantsFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelOperatorsFragment.d.ts +3 -0
- package/lib/typescript/src/fragments/createOpenChannelParticipantsFragment.d.ts +5 -0
- package/lib/typescript/src/fragments/createOpenChannelRegisterOperatorFragment.d.ts +5 -0
- package/lib/typescript/src/fragments/createOpenChannelSettingsFragment.d.ts +3 -0
- package/lib/typescript/src/index.d.ts +44 -11
- package/lib/typescript/src/libs/MentionManager.d.ts +1 -1
- package/lib/typescript/src/localization/StringSet.type.d.ts +136 -26
- package/lib/typescript/src/localization/createBaseStringSet.d.ts +16 -0
- package/lib/typescript/src/utils/normalizeFile.d.ts +4 -0
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +9 -8
- package/src/components/ChannelCover.tsx +46 -37
- package/src/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/EditInput.tsx +30 -19
- package/src/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/SendInput.tsx +69 -43
- package/src/{domain/groupChannel/component/GroupChannelInput → components/ChannelInput}/index.tsx +92 -37
- package/src/components/FileViewer.tsx +3 -3
- package/src/components/MessageRenderer/FileMessage/BaseFileMessage.tsx +1 -1
- package/src/components/MessageRenderer/FileMessage/ImageFileMessage.tsx +5 -1
- package/src/components/MessageRenderer/FileMessage/VideoFileMessage.tsx +6 -2
- package/src/components/MessageRenderer/MessageDateSeparator.tsx +1 -0
- package/src/components/MessageRenderer/MessageIncomingSenderName.tsx +1 -1
- package/src/components/MessageRenderer/MessageTime.tsx +1 -1
- package/src/components/MessageRenderer/UnknownMessage/index.tsx +1 -1
- package/src/components/MessageRenderer/UserMessage/BaseUserMessage.tsx +1 -1
- package/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.tsx +1 -1
- package/src/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.tsx +46 -0
- package/src/components/OpenChannelMessageRenderer/index.tsx +91 -0
- package/src/components/ReactionAddons/BottomSheetReactionAddon.tsx +3 -4
- package/src/components/TypedPlaceholder.tsx +3 -0
- package/src/containers/GroupChannelPreviewContainer.tsx +3 -3
- package/src/containers/SendbirdUIKitContainer.tsx +46 -16
- package/src/contexts/UserProfileCtx.tsx +27 -12
- package/src/domain/groupChannel/component/GroupChannelInput.tsx +42 -0
- package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +10 -10
- package/src/domain/groupChannel/module/moduleContext.tsx +3 -3
- package/src/domain/groupChannel/types.ts +24 -37
- package/src/domain/groupChannelBannedUsers/index.ts +1 -0
- package/src/domain/groupChannelList/component/GroupChannelListList.tsx +2 -2
- package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.tsx +2 -0
- package/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.tsx +2 -0
- package/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.tsx +1 -1
- package/src/domain/groupChannelSettings/module/moduleContext.tsx +3 -4
- package/src/domain/openChannel/component/OpenChannelHeader.tsx +47 -0
- package/src/domain/openChannel/component/OpenChannelInput.tsx +80 -0
- package/src/domain/openChannel/component/OpenChannelMessageList.tsx +322 -0
- package/src/domain/openChannel/component/OpenChannelStatusEmpty.tsx +18 -0
- package/src/domain/openChannel/component/OpenChannelStatusLoading.tsx +18 -0
- package/src/domain/openChannel/index.ts +6 -0
- package/src/domain/openChannel/module/createOpenChannelModule.tsx +21 -0
- package/src/domain/openChannel/module/moduleContext.tsx +41 -0
- package/src/domain/openChannel/types.ts +127 -0
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.tsx +14 -0
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.tsx +33 -0
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.tsx +15 -0
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.tsx +16 -0
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.tsx +15 -0
- package/src/domain/openChannelBannedUsers/index.ts +7 -0
- package/src/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.tsx +21 -0
- package/src/domain/openChannelBannedUsers/module/moduleContext.tsx +30 -0
- package/src/domain/openChannelBannedUsers/types.ts +50 -0
- package/src/domain/openChannelCreate/component/OpenChannelCreateHeader.tsx +35 -0
- package/src/domain/openChannelCreate/component/OpenChannelCreateProfileInput.tsx +155 -0
- package/src/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.tsx +9 -0
- package/src/domain/openChannelCreate/index.ts +5 -0
- package/src/domain/openChannelCreate/module/createOpenChannelCreateModule.tsx +17 -0
- package/src/domain/openChannelCreate/module/moduleContext.tsx +28 -0
- package/src/domain/openChannelCreate/types.ts +45 -0
- package/src/domain/openChannelList/component/OpenChannelListHeader.tsx +14 -0
- package/src/domain/openChannelList/component/OpenChannelListList.tsx +37 -0
- package/src/domain/openChannelList/component/OpenChannelListStatusEmpty.tsx +18 -0
- package/src/domain/openChannelList/component/OpenChannelListStatusError.tsx +16 -0
- package/src/domain/openChannelList/component/OpenChannelListStatusLoading.tsx +18 -0
- package/src/domain/openChannelList/index.ts +7 -0
- package/src/domain/openChannelList/module/createOpenChannelListModule.tsx +21 -0
- package/src/domain/openChannelList/module/moduleContext.tsx +22 -0
- package/src/domain/openChannelList/types.ts +63 -0
- package/src/domain/openChannelModeration/component/OpenChannelModerationHeader.tsx +15 -0
- package/src/domain/openChannelModeration/component/OpenChannelModerationMenu.tsx +62 -0
- package/src/domain/openChannelModeration/index.ts +4 -0
- package/src/domain/openChannelModeration/module/createOpenChannelModerationModule.tsx +15 -0
- package/src/domain/openChannelModeration/module/moduleContext.tsx +33 -0
- package/src/domain/openChannelModeration/types.ts +48 -0
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.tsx +14 -0
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.tsx +33 -0
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.tsx +15 -0
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.tsx +18 -0
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.tsx +15 -0
- package/src/domain/openChannelMutedParticipants/index.ts +9 -0
- package/src/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.tsx +21 -0
- package/src/domain/openChannelMutedParticipants/module/moduleContext.tsx +30 -0
- package/src/domain/openChannelMutedParticipants/types.ts +50 -0
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsHeader.tsx +22 -0
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsList.tsx +31 -0
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.tsx +15 -0
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.tsx +16 -0
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.tsx +15 -0
- package/src/domain/openChannelOperators/index.ts +6 -0
- package/src/domain/openChannelOperators/module/createOpenChannelOperatorsModule.tsx +21 -0
- package/src/domain/openChannelOperators/module/moduleContext.tsx +27 -0
- package/src/domain/openChannelOperators/types.ts +52 -0
- package/src/domain/openChannelSettings/component/OpenChannelSettingsHeader.tsx +29 -0
- package/src/domain/openChannelSettings/component/OpenChannelSettingsInfo.tsx +47 -0
- package/src/domain/openChannelSettings/component/OpenChannelSettingsMenu.tsx +105 -0
- package/src/domain/openChannelSettings/index.ts +5 -0
- package/src/domain/openChannelSettings/module/createOpenChannelSettingsModule.tsx +17 -0
- package/src/domain/openChannelSettings/module/moduleContext.tsx +171 -0
- package/src/domain/openChannelSettings/types.ts +54 -0
- package/src/domain/openChannelUserList/types.ts +30 -0
- package/src/fragments/createGroupChannelCreateFragment.tsx +4 -7
- package/src/fragments/createGroupChannelFragment.tsx +37 -2
- package/src/fragments/createGroupChannelMembersFragment.tsx +11 -8
- package/src/fragments/createGroupChannelMutedMembersFragment.tsx +12 -5
- package/src/fragments/createGroupChannelOperatorsFragment.tsx +3 -4
- package/src/fragments/createOpenChannelBannedUsersFragment.tsx +80 -0
- package/src/fragments/createOpenChannelCreateFragment.tsx +77 -0
- package/src/fragments/createOpenChannelFragment.tsx +157 -0
- package/src/fragments/createOpenChannelListFragment.tsx +67 -0
- package/src/fragments/createOpenChannelModerationFragment.tsx +55 -0
- package/src/fragments/createOpenChannelMutedParticipantsFragment.tsx +100 -0
- package/src/fragments/createOpenChannelOperatorsFragment.tsx +101 -0
- package/src/fragments/createOpenChannelParticipantsFragment.tsx +144 -0
- package/src/fragments/createOpenChannelRegisterOperatorFragment.tsx +99 -0
- package/src/fragments/createOpenChannelSettingsFragment.tsx +57 -0
- package/src/hooks/useMentionSuggestion.ts +10 -17
- package/src/index.ts +55 -49
- package/src/localization/StringSet.en.ts +1 -1
- package/src/localization/StringSet.type.ts +146 -258
- package/src/localization/createBaseStringSet.ts +369 -0
- package/src/platform/createFileService.expo.ts +5 -10
- package/src/platform/createFileService.native.ts +61 -28
- package/src/utils/normalizeFile.ts +32 -0
- package/src/version.ts +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +0 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +0 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +0 -1
- package/lib/commonjs/utils/fileTypeGuard.js +0 -26
- package/lib/commonjs/utils/fileTypeGuard.js.map +0 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +0 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +0 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +0 -1
- package/lib/module/utils/fileTypeGuard.js +0 -18
- package/lib/module/utils/fileTypeGuard.js.map +0 -1
- package/lib/typescript/__template__/component/__domain__Header.d.ts +0 -3
- package/lib/typescript/__template__/component/__domain__StatusEmpty.d.ts +0 -2
- package/lib/typescript/__template__/component/__domain__StatusLoading.d.ts +0 -2
- package/lib/typescript/__template__/component/__domain__View.d.ts +0 -3
- package/lib/typescript/__template__/create__domain__Fragment.d.ts +0 -2
- package/lib/typescript/__template__/index.d.ts +0 -6
- package/lib/typescript/__template__/module/create__domain__Module.d.ts +0 -3
- package/lib/typescript/__template__/module/moduleContext.d.ts +0 -3
- package/lib/typescript/__template__/types.d.ts +0 -31
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +0 -39
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +0 -37
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +0 -26
- package/lib/typescript/src/utils/fileTypeGuard.d.ts +0 -4
- package/src/utils/fileTypeGuard.ts +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useChannelHandler","useUserList","useActionMenu","NOOP","isDifferentChannel","useFreshCallback","
|
|
1
|
+
{"version":3,"names":["React","useChannelHandler","useUserList","useActionMenu","NOOP","isDifferentChannel","useFreshCallback","useUniqHandlerId","StatusComposition","UserActionBar","createGroupChannelMutedMembersModule","useLocalization","useSendbirdChat","createGroupChannelMutedMembersFragment","initModule","GroupChannelMutedMembersModule","onPressHeaderLeft","channel","renderUser","handlerId","STRINGS","sdk","currentUser","openMenu","users","deleteUser","upsertUser","loading","refresh","error","next","queryCreator","createMutedUserListQuery","limit","onUserMuted","eventChannel","user","onUserUnmuted","userId","onUserLeft","onUserBanned","_renderUser","props","profileUrl","nickname","LABELS","USER_NO_NAME","USER_BAR_ME_POSTFIX","title","menuItems","UNMUTE","onPress","unmuteUser","then","Boolean"],"sources":["createGroupChannelMutedMembersFragment.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useChannelHandler, useUserList } from '@sendbird/uikit-chat-hooks';\nimport { useActionMenu } from '@sendbird/uikit-react-native-foundation';\nimport { NOOP, isDifferentChannel, useFreshCallback, useUniqHandlerId } from '@sendbird/uikit-utils';\n\nimport StatusComposition from '../components/StatusComposition';\nimport UserActionBar from '../components/UserActionBar';\nimport { createGroupChannelMutedMembersModule } from '../domain/groupChannelMutedMembers';\nimport type {\n GroupChannelMutedMembersFragment,\n GroupChannelMutedMembersModule,\n} from '../domain/groupChannelMutedMembers/types';\nimport { useLocalization, useSendbirdChat } from '../hooks/useContext';\n\nconst createGroupChannelMutedMembersFragment = (\n initModule?: Partial<GroupChannelMutedMembersModule>,\n): GroupChannelMutedMembersFragment => {\n const GroupChannelMutedMembersModule = createGroupChannelMutedMembersModule(initModule);\n\n return ({ onPressHeaderLeft = NOOP, channel, renderUser }) => {\n const handlerId = useUniqHandlerId('GroupChannelMutedMembersFragment');\n\n const { STRINGS } = useLocalization();\n const { sdk, currentUser } = useSendbirdChat();\n const { openMenu } = useActionMenu();\n\n const { users, deleteUser, upsertUser, loading, refresh, error, next } = useUserList(sdk, {\n queryCreator: () => channel.createMutedUserListQuery({ limit: 20 }),\n });\n\n useChannelHandler(sdk, handlerId, {\n onUserMuted(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n upsertUser(user);\n },\n onUserUnmuted(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n deleteUser(user.userId);\n },\n onUserLeft(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n deleteUser(user.userId);\n },\n onUserBanned(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n deleteUser(user.userId);\n },\n });\n\n const _renderUser: NonNullable<typeof renderUser> = useFreshCallback((props) => {\n if (renderUser) return renderUser(props);\n\n const { user } = props;\n return (\n <UserActionBar\n muted\n uri={user.profileUrl}\n name={\n (user.nickname || STRINGS.LABELS.USER_NO_NAME) +\n (user.userId === currentUser?.userId ? STRINGS.LABELS.USER_BAR_ME_POSTFIX : '')\n }\n disabled={user.userId === currentUser?.userId}\n onPressActionMenu={() => {\n openMenu({\n title: user.nickname || STRINGS.LABELS.USER_NO_NAME,\n menuItems: [\n {\n title: STRINGS.LABELS.UNMUTE,\n onPress: () => channel.unmuteUser(user).then(() => deleteUser(user.userId)),\n },\n ],\n });\n }}\n />\n );\n });\n\n return (\n <GroupChannelMutedMembersModule.Provider channel={channel}>\n <GroupChannelMutedMembersModule.Header onPressHeaderLeft={onPressHeaderLeft} />\n <StatusComposition\n loading={loading}\n LoadingComponent={<GroupChannelMutedMembersModule.StatusLoading />}\n error={Boolean(error)}\n ErrorComponent={<GroupChannelMutedMembersModule.StatusError onPressRetry={refresh} />}\n >\n <GroupChannelMutedMembersModule.List\n mutedMembers={users}\n onLoadNext={next}\n renderUser={_renderUser}\n ListEmptyComponent={<GroupChannelMutedMembersModule.StatusEmpty />}\n />\n </StatusComposition>\n </GroupChannelMutedMembersModule.Provider>\n );\n };\n};\n\nexport default createGroupChannelMutedMembersFragment;\n"],"mappings":"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"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useChannelHandler, useUserList } from '@sendbird/uikit-chat-hooks';
|
|
3
3
|
import { useActionMenu } from '@sendbird/uikit-react-native-foundation';
|
|
4
|
-
import { ifOperator, isDifferentChannel, useFreshCallback,
|
|
4
|
+
import { ifOperator, isDifferentChannel, useFreshCallback, useUniqHandlerId } from '@sendbird/uikit-utils';
|
|
5
5
|
import StatusComposition from '../components/StatusComposition';
|
|
6
6
|
import UserActionBar from '../components/UserActionBar';
|
|
7
7
|
import { createGroupChannelOperatorsModule } from '../domain/groupChannelOperators';
|
|
8
8
|
import { useLocalization, useSendbirdChat, useUserProfile } from '../hooks/useContext';
|
|
9
|
-
const name = 'createGroupChannelOperatorsFragment';
|
|
10
9
|
|
|
11
10
|
const createGroupChannelOperatorsFragment = initModule => {
|
|
12
11
|
const GroupChannelOperatorsModule = createGroupChannelOperatorsModule(initModule);
|
|
@@ -17,7 +16,7 @@ const createGroupChannelOperatorsFragment = initModule => {
|
|
|
17
16
|
onPressHeaderRight,
|
|
18
17
|
renderUser
|
|
19
18
|
} = _ref;
|
|
20
|
-
const
|
|
19
|
+
const handlerId = useUniqHandlerId('GroupChannelOperatorsFragment');
|
|
21
20
|
const {
|
|
22
21
|
STRINGS
|
|
23
22
|
} = useLocalization();
|
|
@@ -44,7 +43,7 @@ const createGroupChannelOperatorsFragment = initModule => {
|
|
|
44
43
|
limit: 20
|
|
45
44
|
})
|
|
46
45
|
});
|
|
47
|
-
useChannelHandler(sdk,
|
|
46
|
+
useChannelHandler(sdk, handlerId, {
|
|
48
47
|
onUserLeft(eventChannel, user) {
|
|
49
48
|
if (isDifferentChannel(eventChannel, channel)) return;
|
|
50
49
|
deleteUser(user.userId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useChannelHandler","useUserList","useActionMenu","ifOperator","isDifferentChannel","useFreshCallback","
|
|
1
|
+
{"version":3,"names":["React","useChannelHandler","useUserList","useActionMenu","ifOperator","isDifferentChannel","useFreshCallback","useUniqHandlerId","StatusComposition","UserActionBar","createGroupChannelOperatorsModule","useLocalization","useSendbirdChat","useUserProfile","createGroupChannelOperatorsFragment","initModule","GroupChannelOperatorsModule","channel","onPressHeaderLeft","onPressHeaderRight","renderUser","handlerId","STRINGS","sdk","currentUser","openMenu","show","users","deleteUser","upsertUser","loading","refresh","next","error","queryCreator","createOperatorListQuery","limit","onUserLeft","eventChannel","user","userId","onUserBanned","onOperatorUpdated","updatedUsers","operatorsAdded","length","forEach","_renderUser","props","profileUrl","nickname","LABELS","USER_NO_NAME","USER_BAR_ME_POSTFIX","myRole","title","menuItems","UNREGISTER_OPERATOR","onPress","removeOperators","then","Boolean"],"sources":["createGroupChannelOperatorsFragment.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useChannelHandler, useUserList } from '@sendbird/uikit-chat-hooks';\nimport { useActionMenu } from '@sendbird/uikit-react-native-foundation';\nimport { ifOperator, isDifferentChannel, useFreshCallback, useUniqHandlerId } from '@sendbird/uikit-utils';\n\nimport StatusComposition from '../components/StatusComposition';\nimport UserActionBar from '../components/UserActionBar';\nimport { createGroupChannelOperatorsModule } from '../domain/groupChannelOperators';\nimport type { GroupChannelOperatorsFragment, GroupChannelOperatorsModule } from '../domain/groupChannelOperators/types';\nimport { useLocalization, useSendbirdChat, useUserProfile } from '../hooks/useContext';\n\nconst createGroupChannelOperatorsFragment = (\n initModule?: Partial<GroupChannelOperatorsModule>,\n): GroupChannelOperatorsFragment => {\n const GroupChannelOperatorsModule = createGroupChannelOperatorsModule(initModule);\n\n return ({ channel, onPressHeaderLeft, onPressHeaderRight, renderUser }) => {\n const handlerId = useUniqHandlerId('GroupChannelOperatorsFragment');\n\n const { STRINGS } = useLocalization();\n const { sdk, currentUser } = useSendbirdChat();\n const { openMenu } = useActionMenu();\n const { show } = useUserProfile();\n\n const { users, deleteUser, upsertUser, loading, refresh, next, error } = useUserList(sdk, {\n queryCreator: () => channel.createOperatorListQuery({ limit: 20 }),\n });\n\n useChannelHandler(sdk, handlerId, {\n onUserLeft(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n deleteUser(user.userId);\n },\n onUserBanned(eventChannel, user) {\n if (isDifferentChannel(eventChannel, channel)) return;\n deleteUser(user.userId);\n },\n onOperatorUpdated(eventChannel, updatedUsers) {\n if (isDifferentChannel(eventChannel, channel)) return;\n const operatorsAdded = users.length < updatedUsers.length;\n if (operatorsAdded) updatedUsers.forEach(upsertUser);\n },\n });\n\n const _renderUser: NonNullable<typeof renderUser> = useFreshCallback((props) => {\n if (renderUser) return renderUser(props);\n\n const { user } = props;\n return (\n <UserActionBar\n muted={false}\n uri={user.profileUrl}\n name={\n (user.nickname || STRINGS.LABELS.USER_NO_NAME) +\n (user.userId === currentUser?.userId ? STRINGS.LABELS.USER_BAR_ME_POSTFIX : '')\n }\n disabled={user.userId === currentUser?.userId}\n onPressAvatar={() => show(user)}\n onPressActionMenu={ifOperator(channel.myRole, () => {\n openMenu({\n title: user.nickname || STRINGS.LABELS.USER_NO_NAME,\n menuItems: [\n {\n title: STRINGS.LABELS.UNREGISTER_OPERATOR,\n onPress: () => channel.removeOperators([user.userId]).then(() => deleteUser(user.userId)),\n },\n ],\n });\n })}\n />\n );\n });\n\n return (\n <GroupChannelOperatorsModule.Provider channel={channel}>\n <GroupChannelOperatorsModule.Header\n onPressHeaderLeft={onPressHeaderLeft}\n onPressHeaderRight={onPressHeaderRight}\n />\n\n <StatusComposition\n loading={loading}\n LoadingComponent={<GroupChannelOperatorsModule.StatusLoading />}\n error={Boolean(error)}\n ErrorComponent={<GroupChannelOperatorsModule.StatusError onPressRetry={refresh} />}\n >\n <GroupChannelOperatorsModule.List\n operators={users}\n renderUser={_renderUser}\n onLoadNext={next}\n ListEmptyComponent={<GroupChannelOperatorsModule.StatusEmpty />}\n />\n </StatusComposition>\n </GroupChannelOperatorsModule.Provider>\n );\n };\n};\n\nexport default createGroupChannelOperatorsFragment;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useUserList } from '@sendbird/uikit-chat-hooks';
|
|
3
|
+
import { useActionMenu } from '@sendbird/uikit-react-native-foundation';
|
|
4
|
+
import { NOOP, useFreshCallback } from '@sendbird/uikit-utils';
|
|
5
|
+
import StatusComposition from '../components/StatusComposition';
|
|
6
|
+
import UserActionBar from '../components/UserActionBar';
|
|
7
|
+
import { createOpenChannelBannedUsersModule } from '../domain/openChannelBannedUsers';
|
|
8
|
+
import { useLocalization, useSendbirdChat } from '../hooks/useContext';
|
|
9
|
+
|
|
10
|
+
const createOpenChannelBannedUsersFragment = initModule => {
|
|
11
|
+
const OpenChannelBannedUsersModule = createOpenChannelBannedUsersModule(initModule);
|
|
12
|
+
return _ref => {
|
|
13
|
+
let {
|
|
14
|
+
onPressHeaderLeft = NOOP,
|
|
15
|
+
channel,
|
|
16
|
+
renderUser
|
|
17
|
+
} = _ref;
|
|
18
|
+
const {
|
|
19
|
+
STRINGS
|
|
20
|
+
} = useLocalization();
|
|
21
|
+
const {
|
|
22
|
+
currentUser,
|
|
23
|
+
sdk
|
|
24
|
+
} = useSendbirdChat();
|
|
25
|
+
const {
|
|
26
|
+
openMenu
|
|
27
|
+
} = useActionMenu();
|
|
28
|
+
const {
|
|
29
|
+
users,
|
|
30
|
+
deleteUser,
|
|
31
|
+
loading,
|
|
32
|
+
next,
|
|
33
|
+
refresh,
|
|
34
|
+
error
|
|
35
|
+
} = useUserList(sdk, {
|
|
36
|
+
queryCreator: () => channel.createBannedUserListQuery({
|
|
37
|
+
limit: 20
|
|
38
|
+
})
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
const _renderUser = useFreshCallback(props => {
|
|
42
|
+
if (renderUser) return renderUser(props);
|
|
43
|
+
const {
|
|
44
|
+
user
|
|
45
|
+
} = props;
|
|
46
|
+
return /*#__PURE__*/React.createElement(UserActionBar, {
|
|
47
|
+
muted: false,
|
|
48
|
+
uri: user.profileUrl,
|
|
49
|
+
name: (user.nickname || STRINGS.LABELS.USER_NO_NAME) + (user.userId === (currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId) ? STRINGS.LABELS.USER_BAR_ME_POSTFIX : ''),
|
|
50
|
+
disabled: user.userId === (currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId),
|
|
51
|
+
onPressActionMenu: () => {
|
|
52
|
+
openMenu({
|
|
53
|
+
title: user.nickname || STRINGS.LABELS.USER_NO_NAME,
|
|
54
|
+
menuItems: [{
|
|
55
|
+
title: STRINGS.LABELS.UNBAN,
|
|
56
|
+
onPress: () => channel.unbanUser(user).then(() => deleteUser(user.userId))
|
|
57
|
+
}]
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
return /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.Provider, {
|
|
64
|
+
channel: channel
|
|
65
|
+
}, /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.Header, {
|
|
66
|
+
onPressHeaderLeft: onPressHeaderLeft
|
|
67
|
+
}), /*#__PURE__*/React.createElement(StatusComposition, {
|
|
68
|
+
loading: loading,
|
|
69
|
+
LoadingComponent: /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.StatusLoading, null),
|
|
70
|
+
error: Boolean(error),
|
|
71
|
+
ErrorComponent: /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.StatusError, {
|
|
72
|
+
onPressRetry: refresh
|
|
73
|
+
})
|
|
74
|
+
}, /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.List, {
|
|
75
|
+
renderUser: _renderUser,
|
|
76
|
+
bannedUsers: users,
|
|
77
|
+
onLoadNext: next,
|
|
78
|
+
ListEmptyComponent: /*#__PURE__*/React.createElement(OpenChannelBannedUsersModule.StatusEmpty, null)
|
|
79
|
+
})));
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
export default createOpenChannelBannedUsersFragment;
|
|
84
|
+
//# sourceMappingURL=createOpenChannelBannedUsersFragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useUserList","useActionMenu","NOOP","useFreshCallback","StatusComposition","UserActionBar","createOpenChannelBannedUsersModule","useLocalization","useSendbirdChat","createOpenChannelBannedUsersFragment","initModule","OpenChannelBannedUsersModule","onPressHeaderLeft","channel","renderUser","STRINGS","currentUser","sdk","openMenu","users","deleteUser","loading","next","refresh","error","queryCreator","createBannedUserListQuery","limit","_renderUser","props","user","profileUrl","nickname","LABELS","USER_NO_NAME","userId","USER_BAR_ME_POSTFIX","title","menuItems","UNBAN","onPress","unbanUser","then","Boolean"],"sources":["createOpenChannelBannedUsersFragment.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useUserList } from '@sendbird/uikit-chat-hooks';\nimport { useActionMenu } from '@sendbird/uikit-react-native-foundation';\nimport { NOOP, useFreshCallback } from '@sendbird/uikit-utils';\n\nimport StatusComposition from '../components/StatusComposition';\nimport UserActionBar from '../components/UserActionBar';\nimport { createOpenChannelBannedUsersModule } from '../domain/openChannelBannedUsers';\nimport type {\n OpenChannelBannedUsersFragment,\n OpenChannelBannedUsersModule,\n} from '../domain/openChannelBannedUsers/types';\nimport { useLocalization, useSendbirdChat } from '../hooks/useContext';\n\nconst createOpenChannelBannedUsersFragment = (\n initModule?: Partial<OpenChannelBannedUsersModule>,\n): OpenChannelBannedUsersFragment => {\n const OpenChannelBannedUsersModule = createOpenChannelBannedUsersModule(initModule);\n\n return ({ onPressHeaderLeft = NOOP, channel, renderUser }) => {\n const { STRINGS } = useLocalization();\n const { currentUser, sdk } = useSendbirdChat();\n const { openMenu } = useActionMenu();\n\n const { users, deleteUser, loading, next, refresh, error } = useUserList(sdk, {\n queryCreator: () => channel.createBannedUserListQuery({ limit: 20 }),\n });\n\n const _renderUser: NonNullable<typeof renderUser> = useFreshCallback((props) => {\n if (renderUser) return renderUser(props);\n\n const { user } = props;\n\n return (\n <UserActionBar\n muted={false}\n uri={user.profileUrl}\n name={\n (user.nickname || STRINGS.LABELS.USER_NO_NAME) +\n (user.userId === currentUser?.userId ? STRINGS.LABELS.USER_BAR_ME_POSTFIX : '')\n }\n disabled={user.userId === currentUser?.userId}\n onPressActionMenu={() => {\n openMenu({\n title: user.nickname || STRINGS.LABELS.USER_NO_NAME,\n menuItems: [\n {\n title: STRINGS.LABELS.UNBAN,\n onPress: () => channel.unbanUser(user).then(() => deleteUser(user.userId)),\n },\n ],\n });\n }}\n />\n );\n });\n\n return (\n <OpenChannelBannedUsersModule.Provider channel={channel}>\n <OpenChannelBannedUsersModule.Header onPressHeaderLeft={onPressHeaderLeft} />\n <StatusComposition\n loading={loading}\n LoadingComponent={<OpenChannelBannedUsersModule.StatusLoading />}\n error={Boolean(error)}\n ErrorComponent={<OpenChannelBannedUsersModule.StatusError onPressRetry={refresh} />}\n >\n <OpenChannelBannedUsersModule.List\n renderUser={_renderUser}\n bannedUsers={users}\n onLoadNext={next}\n ListEmptyComponent={<OpenChannelBannedUsersModule.StatusEmpty />}\n />\n </StatusComposition>\n </OpenChannelBannedUsersModule.Provider>\n );\n };\n};\n\nexport default createOpenChannelBannedUsersFragment;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
|
+
import { Box, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
|
|
4
|
+
import { NOOP, PASS } from '@sendbird/uikit-utils';
|
|
5
|
+
import { createOpenChannelCreateModule } from '../domain/openChannelCreate';
|
|
6
|
+
import { useSendbirdChat } from '../hooks/useContext';
|
|
7
|
+
|
|
8
|
+
const createOpenChannelCreateFragment = initModule => {
|
|
9
|
+
const OpenChannelCreateModule = createOpenChannelCreateModule(initModule);
|
|
10
|
+
return _ref => {
|
|
11
|
+
let {
|
|
12
|
+
onPressHeaderLeft = NOOP,
|
|
13
|
+
onBeforeCreateChannel = PASS,
|
|
14
|
+
onCreateChannel
|
|
15
|
+
} = _ref;
|
|
16
|
+
const {
|
|
17
|
+
sdk,
|
|
18
|
+
currentUser
|
|
19
|
+
} = useSendbirdChat();
|
|
20
|
+
const {
|
|
21
|
+
palette
|
|
22
|
+
} = useUIKitTheme();
|
|
23
|
+
const [loading, setLoading] = useState(false);
|
|
24
|
+
const [channelName, setChannelName] = useState('');
|
|
25
|
+
const [channelCoverFile, setChannelCoverFile] = useState(undefined);
|
|
26
|
+
|
|
27
|
+
const shouldActivateHeaderRight = () => {
|
|
28
|
+
return Boolean(currentUser) && channelName.trim() !== '';
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
const onPressHeaderRight = async () => {
|
|
32
|
+
if (currentUser) {
|
|
33
|
+
try {
|
|
34
|
+
setLoading(true);
|
|
35
|
+
const params = {
|
|
36
|
+
name: channelName,
|
|
37
|
+
operatorUserIds: [currentUser.userId]
|
|
38
|
+
};
|
|
39
|
+
if (channelCoverFile) params.coverUrlOrImage = channelCoverFile;
|
|
40
|
+
const processedParams = await onBeforeCreateChannel(params);
|
|
41
|
+
const channel = await sdk.openChannel.createChannel(processedParams);
|
|
42
|
+
setLoading(false);
|
|
43
|
+
onCreateChannel(channel);
|
|
44
|
+
} catch {
|
|
45
|
+
setLoading(false);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
return /*#__PURE__*/React.createElement(OpenChannelCreateModule.Provider, null, /*#__PURE__*/React.createElement(OpenChannelCreateModule.Header, {
|
|
51
|
+
onPressHeaderLeft: onPressHeaderLeft,
|
|
52
|
+
onPressHeaderRight: onPressHeaderRight,
|
|
53
|
+
shouldActivateHeaderRight: shouldActivateHeaderRight
|
|
54
|
+
}), /*#__PURE__*/React.createElement(OpenChannelCreateModule.ProfileInput, {
|
|
55
|
+
channelName: channelName,
|
|
56
|
+
onChangeChannelName: setChannelName,
|
|
57
|
+
channelCoverFile: channelCoverFile,
|
|
58
|
+
onChangeChannelCoverFile: setChannelCoverFile
|
|
59
|
+
}), loading && /*#__PURE__*/React.createElement(Box, {
|
|
60
|
+
backgroundColor: palette.transparent,
|
|
61
|
+
style: StyleSheet.absoluteFill,
|
|
62
|
+
alignItems: 'center',
|
|
63
|
+
justifyContent: 'center'
|
|
64
|
+
}, /*#__PURE__*/React.createElement(OpenChannelCreateModule.StatusLoading, null)));
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
export default createOpenChannelCreateFragment;
|
|
69
|
+
//# sourceMappingURL=createOpenChannelCreateFragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useState","StyleSheet","Box","useUIKitTheme","NOOP","PASS","createOpenChannelCreateModule","useSendbirdChat","createOpenChannelCreateFragment","initModule","OpenChannelCreateModule","onPressHeaderLeft","onBeforeCreateChannel","onCreateChannel","sdk","currentUser","palette","loading","setLoading","channelName","setChannelName","channelCoverFile","setChannelCoverFile","undefined","shouldActivateHeaderRight","Boolean","trim","onPressHeaderRight","params","name","operatorUserIds","userId","coverUrlOrImage","processedParams","channel","openChannel","createChannel","transparent","absoluteFill"],"sources":["createOpenChannelCreateFragment.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { StyleSheet } from 'react-native';\n\nimport { Box, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport { NOOP, PASS, SendbirdOpenChannelCreateParams } from '@sendbird/uikit-utils';\n\nimport { createOpenChannelCreateModule } from '../domain/openChannelCreate';\nimport type { OpenChannelCreateFragment, OpenChannelCreateModule } from '../domain/openChannelCreate/types';\nimport { useSendbirdChat } from '../hooks/useContext';\nimport type { FileType } from '../platform/types';\n\nconst createOpenChannelCreateFragment = (initModule?: Partial<OpenChannelCreateModule>): OpenChannelCreateFragment => {\n const OpenChannelCreateModule = createOpenChannelCreateModule(initModule);\n\n return ({ onPressHeaderLeft = NOOP, onBeforeCreateChannel = PASS, onCreateChannel }) => {\n const { sdk, currentUser } = useSendbirdChat();\n const { palette } = useUIKitTheme();\n\n const [loading, setLoading] = useState(false);\n const [channelName, setChannelName] = useState('');\n const [channelCoverFile, setChannelCoverFile] = useState<FileType | undefined>(undefined);\n\n const shouldActivateHeaderRight = () => {\n return Boolean(currentUser) && channelName.trim() !== '';\n };\n\n const onPressHeaderRight = async () => {\n if (currentUser) {\n try {\n setLoading(true);\n const params: SendbirdOpenChannelCreateParams = {\n name: channelName,\n operatorUserIds: [currentUser.userId],\n };\n\n if (channelCoverFile) params.coverUrlOrImage = channelCoverFile;\n\n const processedParams = await onBeforeCreateChannel(params);\n const channel = await sdk.openChannel.createChannel(processedParams);\n\n setLoading(false);\n onCreateChannel(channel);\n } catch {\n setLoading(false);\n }\n }\n };\n\n return (\n <OpenChannelCreateModule.Provider>\n <OpenChannelCreateModule.Header\n onPressHeaderLeft={onPressHeaderLeft}\n onPressHeaderRight={onPressHeaderRight}\n shouldActivateHeaderRight={shouldActivateHeaderRight}\n />\n <OpenChannelCreateModule.ProfileInput\n channelName={channelName}\n onChangeChannelName={setChannelName}\n channelCoverFile={channelCoverFile}\n onChangeChannelCoverFile={setChannelCoverFile}\n />\n {loading && (\n <Box\n backgroundColor={palette.transparent}\n style={StyleSheet.absoluteFill}\n alignItems={'center'}\n justifyContent={'center'}\n >\n <OpenChannelCreateModule.StatusLoading />\n </Box>\n )}\n </OpenChannelCreateModule.Provider>\n );\n };\n};\n\nexport default createOpenChannelCreateFragment;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,SAASC,UAAT,QAA2B,cAA3B;AAEA,SAASC,GAAT,EAAcC,aAAd,QAAmC,yCAAnC;AACA,SAASC,IAAT,EAAeC,IAAf,QAA4D,uBAA5D;AAEA,SAASC,6BAAT,QAA8C,6BAA9C;AAEA,SAASC,eAAT,QAAgC,qBAAhC;;AAGA,MAAMC,+BAA+B,GAAIC,UAAD,IAA8E;EACpH,MAAMC,uBAAuB,GAAGJ,6BAA6B,CAACG,UAAD,CAA7D;EAEA,OAAO,QAAiF;IAAA,IAAhF;MAAEE,iBAAiB,GAAGP,IAAtB;MAA4BQ,qBAAqB,GAAGP,IAApD;MAA0DQ;IAA1D,CAAgF;IACtF,MAAM;MAAEC,GAAF;MAAOC;IAAP,IAAuBR,eAAe,EAA5C;IACA,MAAM;MAAES;IAAF,IAAcb,aAAa,EAAjC;IAEA,MAAM,CAACc,OAAD,EAAUC,UAAV,IAAwBlB,QAAQ,CAAC,KAAD,CAAtC;IACA,MAAM,CAACmB,WAAD,EAAcC,cAAd,IAAgCpB,QAAQ,CAAC,EAAD,CAA9C;IACA,MAAM,CAACqB,gBAAD,EAAmBC,mBAAnB,IAA0CtB,QAAQ,CAAuBuB,SAAvB,CAAxD;;IAEA,MAAMC,yBAAyB,GAAG,MAAM;MACtC,OAAOC,OAAO,CAACV,WAAD,CAAP,IAAwBI,WAAW,CAACO,IAAZ,OAAuB,EAAtD;IACD,CAFD;;IAIA,MAAMC,kBAAkB,GAAG,YAAY;MACrC,IAAIZ,WAAJ,EAAiB;QACf,IAAI;UACFG,UAAU,CAAC,IAAD,CAAV;UACA,MAAMU,MAAuC,GAAG;YAC9CC,IAAI,EAAEV,WADwC;YAE9CW,eAAe,EAAE,CAACf,WAAW,CAACgB,MAAb;UAF6B,CAAhD;UAKA,IAAIV,gBAAJ,EAAsBO,MAAM,CAACI,eAAP,GAAyBX,gBAAzB;UAEtB,MAAMY,eAAe,GAAG,MAAMrB,qBAAqB,CAACgB,MAAD,CAAnD;UACA,MAAMM,OAAO,GAAG,MAAMpB,GAAG,CAACqB,WAAJ,CAAgBC,aAAhB,CAA8BH,eAA9B,CAAtB;UAEAf,UAAU,CAAC,KAAD,CAAV;UACAL,eAAe,CAACqB,OAAD,CAAf;QACD,CAdD,CAcE,MAAM;UACNhB,UAAU,CAAC,KAAD,CAAV;QACD;MACF;IACF,CApBD;;IAsBA,oBACE,oBAAC,uBAAD,CAAyB,QAAzB,qBACE,oBAAC,uBAAD,CAAyB,MAAzB;MACE,iBAAiB,EAAEP,iBADrB;MAEE,kBAAkB,EAAEgB,kBAFtB;MAGE,yBAAyB,EAAEH;IAH7B,EADF,eAME,oBAAC,uBAAD,CAAyB,YAAzB;MACE,WAAW,EAAEL,WADf;MAEE,mBAAmB,EAAEC,cAFvB;MAGE,gBAAgB,EAAEC,gBAHpB;MAIE,wBAAwB,EAAEC;IAJ5B,EANF,EAYGL,OAAO,iBACN,oBAAC,GAAD;MACE,eAAe,EAAED,OAAO,CAACqB,WAD3B;MAEE,KAAK,EAAEpC,UAAU,CAACqC,YAFpB;MAGE,UAAU,EAAE,QAHd;MAIE,cAAc,EAAE;IAJlB,gBAME,oBAAC,uBAAD,CAAyB,aAAzB,OANF,CAbJ,CADF;EAyBD,CA3DD;AA4DD,CA/DD;;AAiEA,eAAe9B,+BAAf"}
|
|
@@ -0,0 +1,153 @@
|
|
|
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
|
+
|
|
3
|
+
import React, { useMemo } from 'react';
|
|
4
|
+
import { SendbirdError } from '@sendbird/chat';
|
|
5
|
+
import { useOpenChannelMessages } from '@sendbird/uikit-chat-hooks';
|
|
6
|
+
import { useToast } from '@sendbird/uikit-react-native-foundation';
|
|
7
|
+
import { NOOP, PASS, SBErrorCode, messageComparator, useFreshCallback } from '@sendbird/uikit-utils';
|
|
8
|
+
import OpenChannelMessageRenderer from '../components/OpenChannelMessageRenderer';
|
|
9
|
+
import ScrollToBottomButton from '../components/ScrollToBottomButton';
|
|
10
|
+
import StatusComposition from '../components/StatusComposition';
|
|
11
|
+
import { UNKNOWN_USER_ID } from '../constants';
|
|
12
|
+
import { createOpenChannelModule } from '../domain/openChannel';
|
|
13
|
+
import { useLocalization, useSendbirdChat, useUserProfile } from '../hooks/useContext';
|
|
14
|
+
|
|
15
|
+
const createOpenChannelFragment = initModule => {
|
|
16
|
+
const OpenChannelModule = createOpenChannelModule(initModule);
|
|
17
|
+
return _ref => {
|
|
18
|
+
let {
|
|
19
|
+
channel,
|
|
20
|
+
onChannelDeleted = NOOP,
|
|
21
|
+
onPressHeaderLeft = NOOP,
|
|
22
|
+
onPressHeaderRightWithSettings = NOOP,
|
|
23
|
+
onPressHeaderRightWithParticipants = NOOP,
|
|
24
|
+
onBeforeSendUserMessage = PASS,
|
|
25
|
+
onBeforeSendFileMessage = PASS,
|
|
26
|
+
onBeforeUpdateUserMessage = PASS,
|
|
27
|
+
onBeforeUpdateFileMessage = PASS,
|
|
28
|
+
onPressMediaMessage = NOOP,
|
|
29
|
+
renderMessage,
|
|
30
|
+
renderNewMessagesButton = () => null,
|
|
31
|
+
renderScrollToBottomButton = props => /*#__PURE__*/React.createElement(ScrollToBottomButton, props),
|
|
32
|
+
enableMessageGrouping = true,
|
|
33
|
+
keyboardAvoidOffset,
|
|
34
|
+
flatListProps,
|
|
35
|
+
queryCreator,
|
|
36
|
+
sortComparator = messageComparator
|
|
37
|
+
} = _ref;
|
|
38
|
+
const {
|
|
39
|
+
sdk,
|
|
40
|
+
currentUser
|
|
41
|
+
} = useSendbirdChat();
|
|
42
|
+
const {
|
|
43
|
+
STRINGS
|
|
44
|
+
} = useLocalization();
|
|
45
|
+
const {
|
|
46
|
+
show: showToast
|
|
47
|
+
} = useToast();
|
|
48
|
+
const {
|
|
49
|
+
show: showUserProfile
|
|
50
|
+
} = useUserProfile();
|
|
51
|
+
const {
|
|
52
|
+
messages,
|
|
53
|
+
nextMessages,
|
|
54
|
+
newMessagesFromMembers,
|
|
55
|
+
next,
|
|
56
|
+
prev,
|
|
57
|
+
sendFileMessage,
|
|
58
|
+
sendUserMessage,
|
|
59
|
+
updateFileMessage,
|
|
60
|
+
updateUserMessage,
|
|
61
|
+
resendMessage,
|
|
62
|
+
deleteMessage,
|
|
63
|
+
loading
|
|
64
|
+
} = useOpenChannelMessages(sdk, channel, currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId, {
|
|
65
|
+
queryCreator,
|
|
66
|
+
sortComparator,
|
|
67
|
+
onChannelDeleted,
|
|
68
|
+
|
|
69
|
+
onError(error) {
|
|
70
|
+
if (error instanceof SendbirdError) {
|
|
71
|
+
switch (error.code) {
|
|
72
|
+
case SBErrorCode.CHANNEL_NOT_FOUND_SDK:
|
|
73
|
+
case SBErrorCode.CHANNEL_NOT_FOUND_SERVER:
|
|
74
|
+
{
|
|
75
|
+
return showToast(STRINGS.TOAST.GET_CHANNEL_ERROR, 'error');
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
showToast(STRINGS.TOAST.UNKNOWN_ERROR, 'error');
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
});
|
|
84
|
+
const isOperator = channel.isOperator((currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId) ?? UNKNOWN_USER_ID);
|
|
85
|
+
|
|
86
|
+
const _renderMessage = useFreshCallback(props => {
|
|
87
|
+
if (renderMessage) return renderMessage(props);
|
|
88
|
+
return /*#__PURE__*/React.createElement(OpenChannelMessageRenderer, _extends({}, props, {
|
|
89
|
+
onPressAvatar: showUserProfile
|
|
90
|
+
}));
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
const memoizedFlatListProps = useMemo(() => ({
|
|
94
|
+
ListEmptyComponent: /*#__PURE__*/React.createElement(OpenChannelModule.StatusEmpty, null),
|
|
95
|
+
contentContainerStyle: {
|
|
96
|
+
flexGrow: 1
|
|
97
|
+
},
|
|
98
|
+
...flatListProps
|
|
99
|
+
}), [loading, flatListProps]);
|
|
100
|
+
const onPressSendUserMessage = useFreshCallback(async params => {
|
|
101
|
+
const processedParams = await onBeforeSendUserMessage(params);
|
|
102
|
+
await sendUserMessage(processedParams);
|
|
103
|
+
});
|
|
104
|
+
const onPressSendFileMessage = useFreshCallback(async params => {
|
|
105
|
+
const processedParams = await onBeforeSendFileMessage(params);
|
|
106
|
+
await sendFileMessage(processedParams);
|
|
107
|
+
});
|
|
108
|
+
const onPressUpdateUserMessage = useFreshCallback(async (message, params) => {
|
|
109
|
+
const processedParams = await onBeforeUpdateUserMessage(params);
|
|
110
|
+
await updateUserMessage(message.messageId, processedParams);
|
|
111
|
+
});
|
|
112
|
+
const onPressUpdateFileMessage = useFreshCallback(async (message, params) => {
|
|
113
|
+
const processedParams = await onBeforeUpdateFileMessage(params);
|
|
114
|
+
await updateFileMessage(message.messageId, processedParams);
|
|
115
|
+
});
|
|
116
|
+
return /*#__PURE__*/React.createElement(OpenChannelModule.Provider, {
|
|
117
|
+
channel: channel,
|
|
118
|
+
keyboardAvoidOffset: keyboardAvoidOffset
|
|
119
|
+
}, /*#__PURE__*/React.createElement(OpenChannelModule.Header, {
|
|
120
|
+
onPressHeaderLeft: onPressHeaderLeft,
|
|
121
|
+
rightIconName: isOperator ? 'info' : 'members',
|
|
122
|
+
onPressHeaderRight: isOperator ? onPressHeaderRightWithSettings : onPressHeaderRightWithParticipants
|
|
123
|
+
}), /*#__PURE__*/React.createElement(StatusComposition, {
|
|
124
|
+
loading: loading,
|
|
125
|
+
LoadingComponent: /*#__PURE__*/React.createElement(OpenChannelModule.StatusLoading, null)
|
|
126
|
+
}, /*#__PURE__*/React.createElement(OpenChannelModule.MessageList, {
|
|
127
|
+
channel: channel,
|
|
128
|
+
enableMessageGrouping: enableMessageGrouping,
|
|
129
|
+
currentUserId: currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId,
|
|
130
|
+
renderMessage: _renderMessage,
|
|
131
|
+
messages: messages,
|
|
132
|
+
nextMessages: nextMessages,
|
|
133
|
+
newMessagesFromMembers: newMessagesFromMembers,
|
|
134
|
+
onTopReached: prev,
|
|
135
|
+
onBottomReached: next,
|
|
136
|
+
renderNewMessagesButton: renderNewMessagesButton,
|
|
137
|
+
renderScrollToBottomButton: renderScrollToBottomButton,
|
|
138
|
+
onResendFailedMessage: resendMessage,
|
|
139
|
+
onDeleteMessage: deleteMessage,
|
|
140
|
+
onPressMediaMessage: onPressMediaMessage,
|
|
141
|
+
flatListProps: memoizedFlatListProps
|
|
142
|
+
}), /*#__PURE__*/React.createElement(OpenChannelModule.Input, {
|
|
143
|
+
shouldRenderInput: true,
|
|
144
|
+
onPressSendUserMessage: onPressSendUserMessage,
|
|
145
|
+
onPressSendFileMessage: onPressSendFileMessage,
|
|
146
|
+
onPressUpdateUserMessage: onPressUpdateUserMessage,
|
|
147
|
+
onPressUpdateFileMessage: onPressUpdateFileMessage
|
|
148
|
+
})));
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
export default createOpenChannelFragment;
|
|
153
|
+
//# sourceMappingURL=createOpenChannelFragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useMemo","SendbirdError","useOpenChannelMessages","useToast","NOOP","PASS","SBErrorCode","messageComparator","useFreshCallback","OpenChannelMessageRenderer","ScrollToBottomButton","StatusComposition","UNKNOWN_USER_ID","createOpenChannelModule","useLocalization","useSendbirdChat","useUserProfile","createOpenChannelFragment","initModule","OpenChannelModule","channel","onChannelDeleted","onPressHeaderLeft","onPressHeaderRightWithSettings","onPressHeaderRightWithParticipants","onBeforeSendUserMessage","onBeforeSendFileMessage","onBeforeUpdateUserMessage","onBeforeUpdateFileMessage","onPressMediaMessage","renderMessage","renderNewMessagesButton","renderScrollToBottomButton","props","enableMessageGrouping","keyboardAvoidOffset","flatListProps","queryCreator","sortComparator","sdk","currentUser","STRINGS","show","showToast","showUserProfile","messages","nextMessages","newMessagesFromMembers","next","prev","sendFileMessage","sendUserMessage","updateFileMessage","updateUserMessage","resendMessage","deleteMessage","loading","userId","onError","error","code","CHANNEL_NOT_FOUND_SDK","CHANNEL_NOT_FOUND_SERVER","TOAST","GET_CHANNEL_ERROR","UNKNOWN_ERROR","isOperator","_renderMessage","memoizedFlatListProps","ListEmptyComponent","contentContainerStyle","flexGrow","onPressSendUserMessage","params","processedParams","onPressSendFileMessage","onPressUpdateUserMessage","message","messageId","onPressUpdateFileMessage"],"sources":["createOpenChannelFragment.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { SendbirdError } from '@sendbird/chat';\nimport { useOpenChannelMessages } from '@sendbird/uikit-chat-hooks';\nimport { useToast } from '@sendbird/uikit-react-native-foundation';\nimport { NOOP, PASS, SBErrorCode, messageComparator, useFreshCallback } from '@sendbird/uikit-utils';\n\nimport OpenChannelMessageRenderer from '../components/OpenChannelMessageRenderer';\nimport ScrollToBottomButton from '../components/ScrollToBottomButton';\nimport StatusComposition from '../components/StatusComposition';\nimport { UNKNOWN_USER_ID } from '../constants';\nimport { createOpenChannelModule } from '../domain/openChannel';\nimport type { OpenChannelFragment, OpenChannelModule, OpenChannelProps } from '../domain/openChannel/types';\nimport { useLocalization, useSendbirdChat, useUserProfile } from '../hooks/useContext';\n\nconst createOpenChannelFragment = (initModule?: Partial<OpenChannelModule>): OpenChannelFragment => {\n const OpenChannelModule = createOpenChannelModule(initModule);\n\n return ({\n channel,\n onChannelDeleted = NOOP,\n onPressHeaderLeft = NOOP,\n onPressHeaderRightWithSettings = NOOP,\n onPressHeaderRightWithParticipants = NOOP,\n\n onBeforeSendUserMessage = PASS,\n onBeforeSendFileMessage = PASS,\n onBeforeUpdateUserMessage = PASS,\n onBeforeUpdateFileMessage = PASS,\n onPressMediaMessage = NOOP,\n\n renderMessage,\n renderNewMessagesButton = () => null,\n renderScrollToBottomButton = (props) => <ScrollToBottomButton {...props} />,\n\n enableMessageGrouping = true,\n keyboardAvoidOffset,\n flatListProps,\n queryCreator,\n sortComparator = messageComparator,\n }) => {\n const { sdk, currentUser } = useSendbirdChat();\n const { STRINGS } = useLocalization();\n const { show: showToast } = useToast();\n const { show: showUserProfile } = useUserProfile();\n\n const {\n messages,\n nextMessages,\n newMessagesFromMembers,\n next,\n prev,\n sendFileMessage,\n sendUserMessage,\n updateFileMessage,\n updateUserMessage,\n resendMessage,\n deleteMessage,\n loading,\n } = useOpenChannelMessages(sdk, channel, currentUser?.userId, {\n queryCreator,\n sortComparator,\n onChannelDeleted,\n onError(error) {\n if (error instanceof SendbirdError) {\n switch (error.code) {\n case SBErrorCode.CHANNEL_NOT_FOUND_SDK:\n case SBErrorCode.CHANNEL_NOT_FOUND_SERVER: {\n return showToast(STRINGS.TOAST.GET_CHANNEL_ERROR, 'error');\n }\n }\n }\n\n showToast(STRINGS.TOAST.UNKNOWN_ERROR, 'error');\n },\n });\n\n const isOperator = channel.isOperator(currentUser?.userId ?? UNKNOWN_USER_ID);\n\n const _renderMessage: OpenChannelProps['MessageList']['renderMessage'] = useFreshCallback((props) => {\n if (renderMessage) return renderMessage(props);\n return <OpenChannelMessageRenderer {...props} onPressAvatar={showUserProfile} />;\n });\n\n const memoizedFlatListProps = useMemo(\n () => ({\n ListEmptyComponent: <OpenChannelModule.StatusEmpty />,\n contentContainerStyle: { flexGrow: 1 },\n ...flatListProps,\n }),\n [loading, flatListProps],\n );\n\n const onPressSendUserMessage: OpenChannelProps['Input']['onPressSendUserMessage'] = useFreshCallback(\n async (params) => {\n const processedParams = await onBeforeSendUserMessage(params);\n await sendUserMessage(processedParams);\n },\n );\n const onPressSendFileMessage: OpenChannelProps['Input']['onPressSendFileMessage'] = useFreshCallback(\n async (params) => {\n const processedParams = await onBeforeSendFileMessage(params);\n await sendFileMessage(processedParams);\n },\n );\n const onPressUpdateUserMessage: OpenChannelProps['Input']['onPressUpdateUserMessage'] = useFreshCallback(\n async (message, params) => {\n const processedParams = await onBeforeUpdateUserMessage(params);\n await updateUserMessage(message.messageId, processedParams);\n },\n );\n const onPressUpdateFileMessage: OpenChannelProps['Input']['onPressUpdateFileMessage'] = useFreshCallback(\n async (message, params) => {\n const processedParams = await onBeforeUpdateFileMessage(params);\n await updateFileMessage(message.messageId, processedParams);\n },\n );\n\n return (\n <OpenChannelModule.Provider channel={channel} keyboardAvoidOffset={keyboardAvoidOffset}>\n <OpenChannelModule.Header\n onPressHeaderLeft={onPressHeaderLeft}\n rightIconName={isOperator ? 'info' : 'members'}\n onPressHeaderRight={isOperator ? onPressHeaderRightWithSettings : onPressHeaderRightWithParticipants}\n />\n <StatusComposition loading={loading} LoadingComponent={<OpenChannelModule.StatusLoading />}>\n <OpenChannelModule.MessageList\n channel={channel}\n enableMessageGrouping={enableMessageGrouping}\n currentUserId={currentUser?.userId}\n renderMessage={_renderMessage}\n messages={messages}\n nextMessages={nextMessages}\n newMessagesFromMembers={newMessagesFromMembers}\n onTopReached={prev}\n onBottomReached={next}\n renderNewMessagesButton={renderNewMessagesButton}\n renderScrollToBottomButton={renderScrollToBottomButton}\n onResendFailedMessage={resendMessage}\n onDeleteMessage={deleteMessage}\n onPressMediaMessage={onPressMediaMessage}\n flatListProps={memoizedFlatListProps}\n />\n <OpenChannelModule.Input\n shouldRenderInput\n onPressSendUserMessage={onPressSendUserMessage}\n onPressSendFileMessage={onPressSendFileMessage}\n onPressUpdateUserMessage={onPressUpdateUserMessage}\n onPressUpdateFileMessage={onPressUpdateFileMessage}\n />\n </StatusComposition>\n </OpenChannelModule.Provider>\n );\n };\n};\n\nexport default createOpenChannelFragment;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useOpenChannelList } from '@sendbird/uikit-chat-hooks';
|
|
3
|
+
import { OpenChannelPreview, PressBox } from '@sendbird/uikit-react-native-foundation';
|
|
4
|
+
import { NOOP } from '@sendbird/uikit-utils';
|
|
5
|
+
import StatusComposition from '../components/StatusComposition';
|
|
6
|
+
import { createOpenChannelListModule } from '../domain/openChannelList';
|
|
7
|
+
import { useLocalization, useSendbirdChat } from '../hooks/useContext';
|
|
8
|
+
|
|
9
|
+
const createOpenChannelListFragment = initModule => {
|
|
10
|
+
const OpenChannelListModule = createOpenChannelListModule(initModule);
|
|
11
|
+
return _ref => {
|
|
12
|
+
let {
|
|
13
|
+
onPressCreateChannel,
|
|
14
|
+
onPressChannel = NOOP,
|
|
15
|
+
flatListProps,
|
|
16
|
+
renderOpenChannelPreview,
|
|
17
|
+
queryCreator
|
|
18
|
+
} = _ref;
|
|
19
|
+
const {
|
|
20
|
+
sdk,
|
|
21
|
+
currentUser
|
|
22
|
+
} = useSendbirdChat();
|
|
23
|
+
const {
|
|
24
|
+
STRINGS
|
|
25
|
+
} = useLocalization();
|
|
26
|
+
const {
|
|
27
|
+
openChannels,
|
|
28
|
+
next,
|
|
29
|
+
refresh,
|
|
30
|
+
refreshing,
|
|
31
|
+
loading,
|
|
32
|
+
error
|
|
33
|
+
} = useOpenChannelList(sdk, currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId, {
|
|
34
|
+
queryCreator
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
const _renderOpenChannelPreview = props => {
|
|
38
|
+
if (renderOpenChannelPreview) return renderOpenChannelPreview(props);
|
|
39
|
+
return /*#__PURE__*/React.createElement(PressBox, {
|
|
40
|
+
activeOpacity: 0.8,
|
|
41
|
+
onPress: () => onPressChannel(props.channel)
|
|
42
|
+
}, /*#__PURE__*/React.createElement(OpenChannelPreview, {
|
|
43
|
+
coverUrl: props.channel.coverUrl,
|
|
44
|
+
title: STRINGS.OPEN_CHANNEL_LIST.CHANNEL_PREVIEW_TITLE(props.channel),
|
|
45
|
+
frozen: props.channel.isFrozen,
|
|
46
|
+
participantsCount: props.channel.participantCount
|
|
47
|
+
}));
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
return /*#__PURE__*/React.createElement(OpenChannelListModule.Provider, null, /*#__PURE__*/React.createElement(OpenChannelListModule.Header, {
|
|
51
|
+
onPressHeaderRight: onPressCreateChannel
|
|
52
|
+
}), /*#__PURE__*/React.createElement(StatusComposition, {
|
|
53
|
+
loading: loading,
|
|
54
|
+
LoadingComponent: /*#__PURE__*/React.createElement(OpenChannelListModule.StatusLoading, null),
|
|
55
|
+
error: Boolean(error),
|
|
56
|
+
ErrorComponent: /*#__PURE__*/React.createElement(OpenChannelListModule.StatusError, {
|
|
57
|
+
onPressRetry: refresh
|
|
58
|
+
})
|
|
59
|
+
}, /*#__PURE__*/React.createElement(OpenChannelListModule.List, {
|
|
60
|
+
renderOpenChannelPreview: _renderOpenChannelPreview,
|
|
61
|
+
openChannels: openChannels,
|
|
62
|
+
onLoadNext: next,
|
|
63
|
+
refreshing: refreshing,
|
|
64
|
+
onRefresh: refresh,
|
|
65
|
+
flatListProps: {
|
|
66
|
+
ListEmptyComponent: /*#__PURE__*/React.createElement(OpenChannelListModule.StatusEmpty, null),
|
|
67
|
+
contentContainerStyle: {
|
|
68
|
+
flexGrow: 1
|
|
69
|
+
},
|
|
70
|
+
...flatListProps
|
|
71
|
+
}
|
|
72
|
+
})));
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
export default createOpenChannelListFragment;
|
|
77
|
+
//# sourceMappingURL=createOpenChannelListFragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useOpenChannelList","OpenChannelPreview","PressBox","NOOP","StatusComposition","createOpenChannelListModule","useLocalization","useSendbirdChat","createOpenChannelListFragment","initModule","OpenChannelListModule","onPressCreateChannel","onPressChannel","flatListProps","renderOpenChannelPreview","queryCreator","sdk","currentUser","STRINGS","openChannels","next","refresh","refreshing","loading","error","userId","_renderOpenChannelPreview","props","channel","coverUrl","OPEN_CHANNEL_LIST","CHANNEL_PREVIEW_TITLE","isFrozen","participantCount","Boolean","ListEmptyComponent","contentContainerStyle","flexGrow"],"sources":["createOpenChannelListFragment.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useOpenChannelList } from '@sendbird/uikit-chat-hooks';\nimport { OpenChannelPreview, PressBox } from '@sendbird/uikit-react-native-foundation';\nimport { NOOP } from '@sendbird/uikit-utils';\n\nimport StatusComposition from '../components/StatusComposition';\nimport { createOpenChannelListModule } from '../domain/openChannelList';\nimport type {\n OpenChannelListFragment,\n OpenChannelListModule,\n OpenChannelListProps,\n} from '../domain/openChannelList/types';\nimport { useLocalization, useSendbirdChat } from '../hooks/useContext';\n\nconst createOpenChannelListFragment = (initModule?: Partial<OpenChannelListModule>): OpenChannelListFragment => {\n const OpenChannelListModule = createOpenChannelListModule(initModule);\n\n return ({ onPressCreateChannel, onPressChannel = NOOP, flatListProps, renderOpenChannelPreview, queryCreator }) => {\n const { sdk, currentUser } = useSendbirdChat();\n const { STRINGS } = useLocalization();\n const { openChannels, next, refresh, refreshing, loading, error } = useOpenChannelList(sdk, currentUser?.userId, {\n queryCreator,\n });\n\n const _renderOpenChannelPreview: OpenChannelListProps['List']['renderOpenChannelPreview'] = (props) => {\n if (renderOpenChannelPreview) return renderOpenChannelPreview(props);\n return (\n <PressBox activeOpacity={0.8} onPress={() => onPressChannel(props.channel)}>\n <OpenChannelPreview\n coverUrl={props.channel.coverUrl}\n title={STRINGS.OPEN_CHANNEL_LIST.CHANNEL_PREVIEW_TITLE(props.channel)}\n frozen={props.channel.isFrozen}\n participantsCount={props.channel.participantCount}\n />\n </PressBox>\n );\n };\n\n return (\n <OpenChannelListModule.Provider>\n <OpenChannelListModule.Header onPressHeaderRight={onPressCreateChannel} />\n <StatusComposition\n loading={loading}\n LoadingComponent={<OpenChannelListModule.StatusLoading />}\n error={Boolean(error)}\n ErrorComponent={<OpenChannelListModule.StatusError onPressRetry={refresh} />}\n >\n <OpenChannelListModule.List\n renderOpenChannelPreview={_renderOpenChannelPreview}\n openChannels={openChannels}\n onLoadNext={next}\n refreshing={refreshing}\n onRefresh={refresh}\n flatListProps={{\n ListEmptyComponent: <OpenChannelListModule.StatusEmpty />,\n contentContainerStyle: { flexGrow: 1 },\n ...flatListProps,\n }}\n />\n </StatusComposition>\n </OpenChannelListModule.Provider>\n );\n };\n};\n\nexport default createOpenChannelListFragment;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,kBAAT,QAAmC,4BAAnC;AACA,SAASC,kBAAT,EAA6BC,QAA7B,QAA6C,yCAA7C;AACA,SAASC,IAAT,QAAqB,uBAArB;AAEA,OAAOC,iBAAP,MAA8B,iCAA9B;AACA,SAASC,2BAAT,QAA4C,2BAA5C;AAMA,SAASC,eAAT,EAA0BC,eAA1B,QAAiD,qBAAjD;;AAEA,MAAMC,6BAA6B,GAAIC,UAAD,IAA0E;EAC9G,MAAMC,qBAAqB,GAAGL,2BAA2B,CAACI,UAAD,CAAzD;EAEA,OAAO,QAA4G;IAAA,IAA3G;MAAEE,oBAAF;MAAwBC,cAAc,GAAGT,IAAzC;MAA+CU,aAA/C;MAA8DC,wBAA9D;MAAwFC;IAAxF,CAA2G;IACjH,MAAM;MAAEC,GAAF;MAAOC;IAAP,IAAuBV,eAAe,EAA5C;IACA,MAAM;MAAEW;IAAF,IAAcZ,eAAe,EAAnC;IACA,MAAM;MAAEa,YAAF;MAAgBC,IAAhB;MAAsBC,OAAtB;MAA+BC,UAA/B;MAA2CC,OAA3C;MAAoDC;IAApD,IAA8DxB,kBAAkB,CAACgB,GAAD,EAAMC,WAAN,aAAMA,WAAN,uBAAMA,WAAW,CAAEQ,MAAnB,EAA2B;MAC/GV;IAD+G,CAA3B,CAAtF;;IAIA,MAAMW,yBAAmF,GAAIC,KAAD,IAAW;MACrG,IAAIb,wBAAJ,EAA8B,OAAOA,wBAAwB,CAACa,KAAD,CAA/B;MAC9B,oBACE,oBAAC,QAAD;QAAU,aAAa,EAAE,GAAzB;QAA8B,OAAO,EAAE,MAAMf,cAAc,CAACe,KAAK,CAACC,OAAP;MAA3D,gBACE,oBAAC,kBAAD;QACE,QAAQ,EAAED,KAAK,CAACC,OAAN,CAAcC,QAD1B;QAEE,KAAK,EAAEX,OAAO,CAACY,iBAAR,CAA0BC,qBAA1B,CAAgDJ,KAAK,CAACC,OAAtD,CAFT;QAGE,MAAM,EAAED,KAAK,CAACC,OAAN,CAAcI,QAHxB;QAIE,iBAAiB,EAAEL,KAAK,CAACC,OAAN,CAAcK;MAJnC,EADF,CADF;IAUD,CAZD;;IAcA,oBACE,oBAAC,qBAAD,CAAuB,QAAvB,qBACE,oBAAC,qBAAD,CAAuB,MAAvB;MAA8B,kBAAkB,EAAEtB;IAAlD,EADF,eAEE,oBAAC,iBAAD;MACE,OAAO,EAAEY,OADX;MAEE,gBAAgB,eAAE,oBAAC,qBAAD,CAAuB,aAAvB,OAFpB;MAGE,KAAK,EAAEW,OAAO,CAACV,KAAD,CAHhB;MAIE,cAAc,eAAE,oBAAC,qBAAD,CAAuB,WAAvB;QAAmC,YAAY,EAAEH;MAAjD;IAJlB,gBAME,oBAAC,qBAAD,CAAuB,IAAvB;MACE,wBAAwB,EAAEK,yBAD5B;MAEE,YAAY,EAAEP,YAFhB;MAGE,UAAU,EAAEC,IAHd;MAIE,UAAU,EAAEE,UAJd;MAKE,SAAS,EAAED,OALb;MAME,aAAa,EAAE;QACbc,kBAAkB,eAAE,oBAAC,qBAAD,CAAuB,WAAvB,OADP;QAEbC,qBAAqB,EAAE;UAAEC,QAAQ,EAAE;QAAZ,CAFV;QAGb,GAAGxB;MAHU;IANjB,EANF,CAFF,CADF;EAwBD,CA7CD;AA8CD,CAjDD;;AAmDA,eAAeL,6BAAf"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ScrollView } from 'react-native';
|
|
3
|
+
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
4
|
+
import { createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
|
|
5
|
+
import { NOOP } from '@sendbird/uikit-utils';
|
|
6
|
+
import { createOpenChannelModerationModule } from '../domain/openChannelModeration';
|
|
7
|
+
|
|
8
|
+
const createOpenChannelModerationFragment = initModule => {
|
|
9
|
+
const OpenChannelModerationModule = createOpenChannelModerationModule(initModule);
|
|
10
|
+
return _ref => {
|
|
11
|
+
let {
|
|
12
|
+
onPressHeaderLeft = NOOP,
|
|
13
|
+
channel,
|
|
14
|
+
onPressMenuMutedParticipants,
|
|
15
|
+
onPressMenuOperators,
|
|
16
|
+
menuItemsCreator,
|
|
17
|
+
onPressMenuBannedUsers
|
|
18
|
+
} = _ref;
|
|
19
|
+
const {
|
|
20
|
+
left,
|
|
21
|
+
right
|
|
22
|
+
} = useSafeAreaInsets();
|
|
23
|
+
const {
|
|
24
|
+
colors
|
|
25
|
+
} = useUIKitTheme();
|
|
26
|
+
return /*#__PURE__*/React.createElement(OpenChannelModerationModule.Provider, {
|
|
27
|
+
channel: channel
|
|
28
|
+
}, /*#__PURE__*/React.createElement(OpenChannelModerationModule.Header, {
|
|
29
|
+
onPressHeaderLeft: onPressHeaderLeft
|
|
30
|
+
}), /*#__PURE__*/React.createElement(ScrollView, {
|
|
31
|
+
style: {
|
|
32
|
+
backgroundColor: colors.background
|
|
33
|
+
},
|
|
34
|
+
contentContainerStyle: {
|
|
35
|
+
paddingLeft: left + styles.viewContainer.paddingHorizontal,
|
|
36
|
+
paddingRight: right + styles.viewContainer.paddingHorizontal
|
|
37
|
+
}
|
|
38
|
+
}, /*#__PURE__*/React.createElement(OpenChannelModerationModule.Menu, {
|
|
39
|
+
onPressMenuOperators: onPressMenuOperators,
|
|
40
|
+
onPressMenuMutedParticipants: onPressMenuMutedParticipants,
|
|
41
|
+
onPressMenuBannedUsers: onPressMenuBannedUsers,
|
|
42
|
+
menuItemsCreator: menuItemsCreator
|
|
43
|
+
})));
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const styles = createStyleSheet({
|
|
48
|
+
viewContainer: {
|
|
49
|
+
paddingHorizontal: 16
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
export default createOpenChannelModerationFragment;
|
|
53
|
+
//# sourceMappingURL=createOpenChannelModerationFragment.js.map
|