@sendbird/uikit-react-native 3.7.6 → 3.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/ChannelCover.js +9 -11
- package/lib/commonjs/components/ChannelCover.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/AttachmentsButton.js +7 -9
- package/lib/commonjs/components/ChannelInput/AttachmentsButton.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/EditInput.js +18 -18
- package/lib/commonjs/components/ChannelInput/EditInput.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/MessageToReplyPreview.js +37 -50
- package/lib/commonjs/components/ChannelInput/MessageToReplyPreview.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/SendInput.js +44 -49
- package/lib/commonjs/components/ChannelInput/SendInput.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/VoiceMessageInput.js +12 -14
- package/lib/commonjs/components/ChannelInput/VoiceMessageInput.js.map +1 -1
- package/lib/commonjs/components/ChannelInput/index.js +22 -27
- package/lib/commonjs/components/ChannelInput/index.js.map +1 -1
- package/lib/commonjs/components/ChannelMessageList/index.js +59 -75
- package/lib/commonjs/components/ChannelMessageList/index.js.map +1 -1
- package/lib/commonjs/components/ChannelThreadMessageList/index.js +54 -70
- package/lib/commonjs/components/ChannelThreadMessageList/index.js.map +1 -1
- package/lib/commonjs/components/ChatFlatList/FlatListInternal.js +1 -2
- package/lib/commonjs/components/ChatFlatList/FlatListInternal.js.map +1 -1
- package/lib/commonjs/components/ChatFlatList/index.js +13 -15
- package/lib/commonjs/components/ChatFlatList/index.js.map +1 -1
- package/lib/commonjs/components/FileViewer/FileViewerContent.js +18 -21
- package/lib/commonjs/components/FileViewer/FileViewerContent.js.map +1 -1
- package/lib/commonjs/components/FileViewer/FileViewerFooter.js +14 -19
- package/lib/commonjs/components/FileViewer/FileViewerFooter.js.map +1 -1
- package/lib/commonjs/components/FileViewer/FileViewerHeader.js +14 -20
- package/lib/commonjs/components/FileViewer/FileViewerHeader.js.map +1 -1
- package/lib/commonjs/components/FileViewer/index.js +15 -17
- package/lib/commonjs/components/FileViewer/index.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js +6 -8
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js +3 -4
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js +7 -9
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageParentMessage.js +18 -21
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageParentMessage.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageReplyInfo.js +13 -15
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageReplyInfo.js.map +1 -1
- package/lib/commonjs/components/GroupChannelMessageRenderer/index.js +36 -39
- package/lib/commonjs/components/GroupChannelMessageRenderer/index.js.map +1 -1
- package/lib/commonjs/components/MessageSearchResultItem.js +20 -18
- package/lib/commonjs/components/MessageSearchResultItem.js.map +1 -1
- package/lib/commonjs/components/NewMessagesButton.js +7 -9
- package/lib/commonjs/components/NewMessagesButton.js.map +1 -1
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +6 -8
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/OpenChannelMessageRenderer/index.js +13 -15
- package/lib/commonjs/components/OpenChannelMessageRenderer/index.js.map +1 -1
- package/lib/commonjs/components/ProviderLayout.js +5 -7
- package/lib/commonjs/components/ProviderLayout.js.map +1 -1
- package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js +28 -42
- package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -1
- package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js +27 -40
- package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js.map +1 -1
- package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js +12 -15
- package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js.map +1 -1
- package/lib/commonjs/components/ReactionAddons/index.js +2 -3
- package/lib/commonjs/components/ReactionAddons/index.js.map +1 -1
- package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js +28 -39
- package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -1
- package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +44 -48
- package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -1
- package/lib/commonjs/components/ReactionBottomSheets/index.js +2 -3
- package/lib/commonjs/components/ReactionBottomSheets/index.js.map +1 -1
- package/lib/commonjs/components/ScrollToBottomButton.js +6 -8
- package/lib/commonjs/components/ScrollToBottomButton.js.map +1 -1
- package/lib/commonjs/components/StatusComposition.js +9 -11
- package/lib/commonjs/components/StatusComposition.js.map +1 -1
- package/lib/commonjs/components/ThreadChatFlatList/index.js +13 -15
- package/lib/commonjs/components/ThreadChatFlatList/index.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.image.js +2 -3
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.image.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.js +3 -4
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.video.js +2 -3
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.video.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.js +8 -8
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.user.js +20 -14
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.user.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.user.og.js +24 -18
- package/lib/commonjs/components/ThreadParentMessageRenderer/ThreadParentMessage.user.og.js.map +1 -1
- package/lib/commonjs/components/ThreadParentMessageRenderer/index.js +23 -22
- package/lib/commonjs/components/ThreadParentMessageRenderer/index.js.map +1 -1
- package/lib/commonjs/components/TypedPlaceholder.js +6 -8
- package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
- package/lib/commonjs/components/UserActionBar.js +20 -20
- package/lib/commonjs/components/UserActionBar.js.map +1 -1
- package/lib/commonjs/components/UserSelectableBar.js +14 -14
- package/lib/commonjs/components/UserSelectableBar.js.map +1 -1
- package/lib/commonjs/constants.js +6 -12
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/containers/GroupChannelPreviewContainer.js +12 -14
- package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
- package/lib/commonjs/containers/InternalErrorBoundaryContainer.js +8 -9
- package/lib/commonjs/containers/InternalErrorBoundaryContainer.js.map +1 -1
- package/lib/commonjs/containers/SendbirdUIKitContainer.js +17 -20
- package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
- package/lib/commonjs/contexts/LocalizationCtx.js +6 -8
- package/lib/commonjs/contexts/LocalizationCtx.js.map +1 -1
- package/lib/commonjs/contexts/PlatformServiceCtx.js +8 -10
- package/lib/commonjs/contexts/PlatformServiceCtx.js.map +1 -1
- package/lib/commonjs/contexts/ReactionCtx.js +14 -19
- package/lib/commonjs/contexts/ReactionCtx.js.map +1 -1
- package/lib/commonjs/contexts/SBUHandlersCtx.js +7 -9
- package/lib/commonjs/contexts/SBUHandlersCtx.js.map +1 -1
- package/lib/commonjs/contexts/SendbirdChatCtx.js +16 -18
- package/lib/commonjs/contexts/SendbirdChatCtx.js.map +1 -1
- package/lib/commonjs/contexts/UserProfileCtx.js +13 -24
- package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelHeader.js +14 -18
- package/lib/commonjs/domain/groupChannel/component/GroupChannelHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js +9 -11
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +12 -16
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +24 -33
- package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/index.js +1 -1
- package/lib/commonjs/domain/groupChannel/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js +12 -14
- package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/module/moduleContext.js +19 -22
- 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/component/GroupChannelBannedUsersHeader.js +6 -8
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +15 -25
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +5 -7
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/index.js +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +11 -13
- package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelBannedUsers/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js +3 -4
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +20 -32
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js +13 -17
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/index.js +1 -1
- package/lib/commonjs/domain/groupChannelList/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/module/createGroupChannelListModule.js +11 -13
- package/lib/commonjs/domain/groupChannelList/module/createGroupChannelListModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/module/moduleContext.js +7 -9
- package/lib/commonjs/domain/groupChannelList/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +6 -8
- package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +9 -11
- package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/index.js +1 -1
- package/lib/commonjs/domain/groupChannelModeration/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +8 -10
- package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelModeration/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +6 -8
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +15 -25
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +5 -7
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/index.js +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +11 -13
- package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelMutedMembers/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +6 -8
- package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +19 -18
- package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/index.js +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +8 -10
- package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelNotifications/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +7 -9
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +15 -25
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +5 -7
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/index.js +1 -1
- package/lib/commonjs/domain/groupChannelOperators/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +11 -13
- package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelOperators/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js +6 -8
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +4 -5
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +12 -14
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/index.js +1 -1
- package/lib/commonjs/domain/groupChannelSettings/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js +9 -11
- package/lib/commonjs/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +10 -13
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadHeader.js +11 -15
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadInput.js +9 -11
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadInput.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadMessageList.js +12 -16
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadMessageList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadParentMessageInfo.js +34 -37
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadParentMessageInfo.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadStatusEmpty.js +2 -3
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadStatusLoading.js +2 -3
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadSuggestedMentionList.js +23 -32
- package/lib/commonjs/domain/groupChannelThread/component/GroupChannelThreadSuggestedMentionList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/index.js +1 -1
- package/lib/commonjs/domain/groupChannelThread/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/module/createGroupChannelThreadModule.js +13 -15
- package/lib/commonjs/domain/groupChannelThread/module/createGroupChannelThreadModule.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/module/moduleContext.js +12 -14
- package/lib/commonjs/domain/groupChannelThread/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelThread/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/component/MessageSearchHeader.js +18 -18
- package/lib/commonjs/domain/messageSearch/component/MessageSearchHeader.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/component/MessageSearchList.js +13 -16
- package/lib/commonjs/domain/messageSearch/component/MessageSearchList.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusEmpty.js +2 -3
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusError.js +5 -7
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusError.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusLoading.js +2 -3
- package/lib/commonjs/domain/messageSearch/component/MessageSearchStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/index.js +1 -1
- package/lib/commonjs/domain/messageSearch/index.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/module/createMessageSearchModule.js +11 -13
- package/lib/commonjs/domain/messageSearch/module/createMessageSearchModule.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/module/moduleContext.js +7 -9
- package/lib/commonjs/domain/messageSearch/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/messageSearch/types.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelHeader.js +10 -12
- package/lib/commonjs/domain/openChannel/component/OpenChannelHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js +9 -11
- package/lib/commonjs/domain/openChannel/component/OpenChannelInput.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelMessageList.js +10 -13
- package/lib/commonjs/domain/openChannel/component/OpenChannelMessageList.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusEmpty.js +2 -3
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannel/component/OpenChannelStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannel/index.js +1 -1
- package/lib/commonjs/domain/openChannel/index.js.map +1 -1
- package/lib/commonjs/domain/openChannel/module/createOpenChannelModule.js +11 -13
- package/lib/commonjs/domain/openChannel/module/createOpenChannelModule.js.map +1 -1
- package/lib/commonjs/domain/openChannel/module/moduleContext.js +10 -12
- package/lib/commonjs/domain/openChannel/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannel/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js +6 -8
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js +15 -25
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js +2 -3
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js +5 -7
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/index.js +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js +11 -13
- package/lib/commonjs/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/openChannelBannedUsers/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelBannedUsers/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateHeader.js +8 -10
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js +14 -16
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/index.js +1 -1
- package/lib/commonjs/domain/openChannelCreate/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/module/createOpenChannelCreateModule.js +9 -11
- package/lib/commonjs/domain/openChannelCreate/module/createOpenChannelCreateModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/module/moduleContext.js +7 -9
- package/lib/commonjs/domain/openChannelCreate/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelCreate/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListHeader.js +6 -8
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js +20 -32
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListList.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusEmpty.js +2 -3
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusError.js +5 -7
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusError.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannelList/component/OpenChannelListStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/index.js +1 -1
- package/lib/commonjs/domain/openChannelList/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/module/createOpenChannelListModule.js +11 -13
- package/lib/commonjs/domain/openChannelList/module/createOpenChannelListModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/module/moduleContext.js +7 -9
- package/lib/commonjs/domain/openChannelList/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelList/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationHeader.js +6 -8
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationMenu.js +8 -10
- package/lib/commonjs/domain/openChannelModeration/component/OpenChannelModerationMenu.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/index.js +1 -1
- package/lib/commonjs/domain/openChannelModeration/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/module/createOpenChannelModerationModule.js +8 -10
- package/lib/commonjs/domain/openChannelModeration/module/createOpenChannelModerationModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/openChannelModeration/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelModeration/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js +6 -8
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js +15 -25
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js +2 -3
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js +5 -7
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/index.js +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js +11 -13
- package/lib/commonjs/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/openChannelMutedParticipants/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelMutedParticipants/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js +7 -9
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsList.js +15 -25
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsList.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js +2 -3
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js +5 -7
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js +2 -3
- package/lib/commonjs/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/index.js +1 -1
- package/lib/commonjs/domain/openChannelOperators/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js +11 -13
- package/lib/commonjs/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/module/moduleContext.js +8 -10
- package/lib/commonjs/domain/openChannelOperators/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelOperators/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsHeader.js +6 -8
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsHeader.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsInfo.js +4 -5
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsInfo.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsMenu.js +9 -11
- package/lib/commonjs/domain/openChannelSettings/component/OpenChannelSettingsMenu.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/index.js +1 -1
- package/lib/commonjs/domain/openChannelSettings/index.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/module/createOpenChannelSettingsModule.js +9 -11
- package/lib/commonjs/domain/openChannelSettings/module/createOpenChannelSettingsModule.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/module/moduleContext.js +9 -11
- package/lib/commonjs/domain/openChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/openChannelSettings/types.js.map +1 -1
- package/lib/commonjs/domain/openChannelUserList/types.js.map +1 -1
- package/lib/commonjs/domain/userList/component/UserListHeader.js +10 -12
- package/lib/commonjs/domain/userList/component/UserListHeader.js.map +1 -1
- package/lib/commonjs/domain/userList/component/UserListList.js +16 -26
- package/lib/commonjs/domain/userList/component/UserListList.js.map +1 -1
- package/lib/commonjs/domain/userList/component/UserListStatusEmpty.js +2 -3
- package/lib/commonjs/domain/userList/component/UserListStatusEmpty.js.map +1 -1
- package/lib/commonjs/domain/userList/component/UserListStatusError.js +5 -7
- package/lib/commonjs/domain/userList/component/UserListStatusError.js.map +1 -1
- package/lib/commonjs/domain/userList/component/UserListStatusLoading.js +2 -3
- package/lib/commonjs/domain/userList/component/UserListStatusLoading.js.map +1 -1
- package/lib/commonjs/domain/userList/index.js +1 -1
- package/lib/commonjs/domain/userList/index.js.map +1 -1
- package/lib/commonjs/domain/userList/module/createUserListModule.js +11 -13
- package/lib/commonjs/domain/userList/module/createUserListModule.js.map +1 -1
- package/lib/commonjs/domain/userList/module/moduleContext.js +9 -11
- package/lib/commonjs/domain/userList/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/userList/types.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js +10 -12
- package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +12 -15
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelFragment.js +28 -30
- package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelInviteFragment.js +13 -16
- package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelListFragment.js +12 -14
- package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +16 -18
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelModerationFragment.js +13 -19
- package/lib/commonjs/fragments/createGroupChannelModerationFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js +12 -14
- package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js +6 -8
- package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js +13 -15
- package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js +15 -18
- package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +15 -21
- package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelThreadFragment.js +25 -27
- package/lib/commonjs/fragments/createGroupChannelThreadFragment.js.map +1 -1
- package/lib/commonjs/fragments/createMessageSearchFragment.js +15 -18
- package/lib/commonjs/fragments/createMessageSearchFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelBannedUsersFragment.js +10 -12
- package/lib/commonjs/fragments/createOpenChannelBannedUsersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelCreateFragment.js +8 -10
- package/lib/commonjs/fragments/createOpenChannelCreateFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelFragment.js +24 -26
- package/lib/commonjs/fragments/createOpenChannelFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelListFragment.js +9 -11
- package/lib/commonjs/fragments/createOpenChannelListFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelModerationFragment.js +13 -19
- package/lib/commonjs/fragments/createOpenChannelModerationFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelMutedParticipantsFragment.js +10 -12
- package/lib/commonjs/fragments/createOpenChannelMutedParticipantsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelOperatorsFragment.js +11 -13
- package/lib/commonjs/fragments/createOpenChannelOperatorsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelParticipantsFragment.js +13 -15
- package/lib/commonjs/fragments/createOpenChannelParticipantsFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelRegisterOperatorFragment.js +15 -18
- package/lib/commonjs/fragments/createOpenChannelRegisterOperatorFragment.js.map +1 -1
- package/lib/commonjs/fragments/createOpenChannelSettingsFragment.js +14 -20
- package/lib/commonjs/fragments/createOpenChannelSettingsFragment.js.map +1 -1
- package/lib/commonjs/hooks/useChannelInputItems.js +1 -1
- package/lib/commonjs/hooks/useChannelInputItems.js.map +1 -1
- package/lib/commonjs/hooks/useConnection.js +2 -3
- package/lib/commonjs/hooks/useConnection.js.map +1 -1
- package/lib/commonjs/hooks/useContext.js.map +1 -1
- package/lib/commonjs/hooks/useKeyboardStatus.js +1 -2
- package/lib/commonjs/hooks/useKeyboardStatus.js.map +1 -1
- package/lib/commonjs/hooks/useMentionSuggestion.js +3 -5
- package/lib/commonjs/hooks/useMentionSuggestion.js.map +1 -1
- package/lib/commonjs/hooks/useMentionTextInput.js +4 -4
- package/lib/commonjs/hooks/useMentionTextInput.js.map +1 -1
- package/lib/commonjs/hooks/usePushTokenRegistration.js +2 -3
- package/lib/commonjs/hooks/usePushTokenRegistration.js.map +1 -1
- package/lib/commonjs/hooks/useVoiceMessageInput.js +13 -17
- package/lib/commonjs/hooks/useVoiceMessageInput.js.map +1 -1
- package/lib/commonjs/index.js +3 -3
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/libs/EmojiManager.js +6 -8
- package/lib/commonjs/libs/EmojiManager.js.map +1 -1
- package/lib/commonjs/libs/ImageCompressionConfig.js +4 -5
- package/lib/commonjs/libs/ImageCompressionConfig.js.map +1 -1
- package/lib/commonjs/libs/InternalLocalCacheStorage.js +5 -11
- package/lib/commonjs/libs/InternalLocalCacheStorage.js.map +1 -1
- package/lib/commonjs/libs/MentionConfig.js +4 -5
- package/lib/commonjs/libs/MentionConfig.js.map +1 -1
- package/lib/commonjs/libs/MentionManager.js +45 -31
- package/lib/commonjs/libs/MentionManager.js.map +1 -1
- package/lib/commonjs/libs/SBUError.js +3 -3
- package/lib/commonjs/libs/SBUError.js.map +1 -1
- package/lib/commonjs/libs/SBUUtils.js.map +1 -1
- package/lib/commonjs/libs/VoiceMessageConfig.js +4 -5
- package/lib/commonjs/libs/VoiceMessageConfig.js.map +1 -1
- package/lib/commonjs/libs/VoiceMessageStatusManager.js +9 -10
- package/lib/commonjs/libs/VoiceMessageStatusManager.js.map +1 -1
- package/lib/commonjs/localization/StringSet.en.js +1 -2
- package/lib/commonjs/localization/StringSet.en.js.map +1 -1
- package/lib/commonjs/localization/StringSet.type.js.map +1 -1
- package/lib/commonjs/localization/createBaseStringSet.js +25 -30
- package/lib/commonjs/localization/createBaseStringSet.js.map +1 -1
- package/lib/commonjs/platform/createClipboardService.expo.js +1 -2
- package/lib/commonjs/platform/createClipboardService.expo.js.map +1 -1
- package/lib/commonjs/platform/createClipboardService.native.js +1 -2
- package/lib/commonjs/platform/createClipboardService.native.js.map +1 -1
- package/lib/commonjs/platform/createFileService.expo.js +12 -15
- package/lib/commonjs/platform/createFileService.expo.js.map +1 -1
- package/lib/commonjs/platform/createFileService.native.js +29 -35
- package/lib/commonjs/platform/createFileService.native.js.map +1 -1
- package/lib/commonjs/platform/createMediaService.expo.js +26 -31
- package/lib/commonjs/platform/createMediaService.expo.js.map +1 -1
- package/lib/commonjs/platform/createMediaService.native.js +24 -29
- package/lib/commonjs/platform/createMediaService.native.js.map +1 -1
- package/lib/commonjs/platform/createNotificationService.expo.js +4 -8
- package/lib/commonjs/platform/createNotificationService.expo.js.map +1 -1
- package/lib/commonjs/platform/createNotificationService.native.js +5 -7
- package/lib/commonjs/platform/createNotificationService.native.js.map +1 -1
- package/lib/commonjs/platform/createPlayerService.expo.js +8 -10
- package/lib/commonjs/platform/createPlayerService.expo.js.map +1 -1
- package/lib/commonjs/platform/createPlayerService.native.js +8 -10
- package/lib/commonjs/platform/createPlayerService.native.js.map +1 -1
- package/lib/commonjs/platform/createRecorderService.expo.js +8 -10
- package/lib/commonjs/platform/createRecorderService.expo.js.map +1 -1
- package/lib/commonjs/platform/createRecorderService.native.js +10 -12
- package/lib/commonjs/platform/createRecorderService.native.js.map +1 -1
- package/lib/commonjs/platform/dynamicModule.js +2 -4
- package/lib/commonjs/platform/dynamicModule.js.map +1 -1
- package/lib/commonjs/platform/types.js.map +1 -1
- package/lib/commonjs/types.js +1 -2
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/utils/expoBackwardUtils.js +24 -31
- package/lib/commonjs/utils/expoBackwardUtils.js.map +1 -1
- package/lib/commonjs/utils/expoPermissionGranted.js +2 -3
- package/lib/commonjs/utils/expoPermissionGranted.js.map +1 -1
- package/lib/commonjs/utils/nativePermissionGranted.js +2 -3
- package/lib/commonjs/utils/nativePermissionGranted.js.map +1 -1
- package/lib/commonjs/utils/normalizeFile.js +7 -9
- package/lib/commonjs/utils/normalizeFile.js.map +1 -1
- package/lib/commonjs/utils/promise.js +1 -2
- package/lib/commonjs/utils/promise.js.map +1 -1
- package/lib/commonjs/utils/pubsub.js +1 -2
- package/lib/commonjs/utils/pubsub.js.map +1 -1
- package/lib/commonjs/version.js +2 -3
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/components/ChannelCover.js +7 -8
- package/lib/module/components/ChannelCover.js.map +1 -1
- package/lib/module/components/ChannelInput/AttachmentsButton.js +5 -6
- package/lib/module/components/ChannelInput/AttachmentsButton.js.map +1 -1
- package/lib/module/components/ChannelInput/EditInput.js +15 -14
- package/lib/module/components/ChannelInput/EditInput.js.map +1 -1
- package/lib/module/components/ChannelInput/MessageToReplyPreview.js +36 -49
- package/lib/module/components/ChannelInput/MessageToReplyPreview.js.map +1 -1
- package/lib/module/components/ChannelInput/SendInput.js +40 -44
- package/lib/module/components/ChannelInput/SendInput.js.map +1 -1
- package/lib/module/components/ChannelInput/VoiceMessageInput.js +8 -9
- package/lib/module/components/ChannelInput/VoiceMessageInput.js.map +1 -1
- package/lib/module/components/ChannelInput/index.js +19 -23
- package/lib/module/components/ChannelInput/index.js.map +1 -1
- package/lib/module/components/ChannelMessageList/index.js +58 -73
- package/lib/module/components/ChannelMessageList/index.js.map +1 -1
- package/lib/module/components/ChannelThreadMessageList/index.js +53 -68
- package/lib/module/components/ChannelThreadMessageList/index.js.map +1 -1
- package/lib/module/components/ChatFlatList/FlatListInternal.js.map +1 -1
- package/lib/module/components/ChatFlatList/index.js +9 -10
- package/lib/module/components/ChatFlatList/index.js.map +1 -1
- package/lib/module/components/FileViewer/FileViewerContent.js +14 -16
- package/lib/module/components/FileViewer/FileViewerContent.js.map +1 -1
- package/lib/module/components/FileViewer/FileViewerFooter.js +12 -16
- package/lib/module/components/FileViewer/FileViewerFooter.js.map +1 -1
- package/lib/module/components/FileViewer/FileViewerHeader.js +13 -18
- package/lib/module/components/FileViewer/FileViewerHeader.js.map +1 -1
- package/lib/module/components/FileViewer/index.js +11 -12
- package/lib/module/components/FileViewer/index.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js +4 -5
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageFocusAnimation.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js +5 -6
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageOutgoingStatus.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageParentMessage.js +15 -17
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageParentMessage.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageReplyInfo.js +11 -12
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageReplyInfo.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/index.js +32 -34
- package/lib/module/components/GroupChannelMessageRenderer/index.js.map +1 -1
- package/lib/module/components/MessageSearchResultItem.js +18 -15
- package/lib/module/components/MessageSearchResultItem.js.map +1 -1
- package/lib/module/components/NewMessagesButton.js +5 -6
- package/lib/module/components/NewMessagesButton.js.map +1 -1
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +4 -5
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -1
- package/lib/module/components/OpenChannelMessageRenderer/index.js +11 -12
- package/lib/module/components/OpenChannelMessageRenderer/index.js.map +1 -1
- package/lib/module/components/ProviderLayout.js +3 -4
- package/lib/module/components/ProviderLayout.js.map +1 -1
- package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js +27 -40
- package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -1
- package/lib/module/components/ReactionAddons/MessageReactionAddon.js +26 -38
- package/lib/module/components/ReactionAddons/MessageReactionAddon.js.map +1 -1
- package/lib/module/components/ReactionAddons/ReactionRoundedButton.js +10 -12
- package/lib/module/components/ReactionAddons/ReactionRoundedButton.js.map +1 -1
- package/lib/module/components/ReactionAddons/index.js.map +1 -1
- package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js +27 -37
- package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -1
- package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +43 -46
- package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -1
- package/lib/module/components/ReactionBottomSheets/index.js.map +1 -1
- package/lib/module/components/ScrollToBottomButton.js +4 -5
- package/lib/module/components/ScrollToBottomButton.js.map +1 -1
- package/lib/module/components/StatusComposition.js +7 -8
- package/lib/module/components/StatusComposition.js.map +1 -1
- package/lib/module/components/ThreadChatFlatList/index.js +9 -10
- package/lib/module/components/ThreadChatFlatList/index.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.image.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.js +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.video.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.js +5 -4
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.user.js +19 -12
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.user.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.user.og.js +22 -15
- package/lib/module/components/ThreadParentMessageRenderer/ThreadParentMessage.user.og.js.map +1 -1
- package/lib/module/components/ThreadParentMessageRenderer/index.js +19 -17
- package/lib/module/components/ThreadParentMessageRenderer/index.js.map +1 -1
- package/lib/module/components/TypedPlaceholder.js +4 -5
- package/lib/module/components/TypedPlaceholder.js.map +1 -1
- package/lib/module/components/UserActionBar.js +19 -18
- package/lib/module/components/UserActionBar.js.map +1 -1
- package/lib/module/components/UserSelectableBar.js +13 -12
- package/lib/module/components/UserSelectableBar.js.map +1 -1
- package/lib/module/constants.js.map +1 -1
- package/lib/module/containers/GroupChannelPreviewContainer.js +10 -11
- package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
- package/lib/module/containers/InternalErrorBoundaryContainer.js +6 -6
- package/lib/module/containers/InternalErrorBoundaryContainer.js.map +1 -1
- package/lib/module/containers/SendbirdUIKitContainer.js +12 -13
- package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
- package/lib/module/contexts/LocalizationCtx.js +4 -5
- package/lib/module/contexts/LocalizationCtx.js.map +1 -1
- package/lib/module/contexts/PlatformServiceCtx.js +5 -6
- package/lib/module/contexts/PlatformServiceCtx.js.map +1 -1
- package/lib/module/contexts/ReactionCtx.js +11 -15
- package/lib/module/contexts/ReactionCtx.js.map +1 -1
- package/lib/module/contexts/SBUHandlersCtx.js +5 -6
- package/lib/module/contexts/SBUHandlersCtx.js.map +1 -1
- package/lib/module/contexts/SendbirdChatCtx.js +12 -13
- package/lib/module/contexts/SendbirdChatCtx.js.map +1 -1
- package/lib/module/contexts/UserProfileCtx.js +11 -21
- package/lib/module/contexts/UserProfileCtx.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelHeader.js +11 -14
- package/lib/module/domain/groupChannel/component/GroupChannelHeader.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput.js +5 -6
- package/lib/module/domain/groupChannel/component/GroupChannelInput.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +9 -13
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +22 -30
- package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -1
- package/lib/module/domain/groupChannel/index.js.map +1 -1
- package/lib/module/domain/groupChannel/module/createGroupChannelModule.js +10 -11
- package/lib/module/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
- package/lib/module/domain/groupChannel/module/moduleContext.js +16 -18
- 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/component/GroupChannelBannedUsersHeader.js +3 -4
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +14 -23
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +3 -4
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/index.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +9 -10
- package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js +4 -5
- package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelBannedUsers/types.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +19 -30
- package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js +10 -13
- package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
- package/lib/module/domain/groupChannelList/index.js.map +1 -1
- package/lib/module/domain/groupChannelList/module/createGroupChannelListModule.js +9 -10
- package/lib/module/domain/groupChannelList/module/createGroupChannelListModule.js.map +1 -1
- package/lib/module/domain/groupChannelList/module/moduleContext.js +3 -4
- package/lib/module/domain/groupChannelList/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelList/types.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +3 -4
- package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +6 -7
- package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/index.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +6 -7
- package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/module/moduleContext.js +4 -5
- package/lib/module/domain/groupChannelModeration/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelModeration/types.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +3 -4
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +14 -23
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +3 -4
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/index.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +9 -10
- package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js +4 -5
- package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelMutedMembers/types.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +3 -4
- package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +18 -16
- package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/index.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +6 -7
- package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/module/moduleContext.js +4 -5
- package/lib/module/domain/groupChannelNotifications/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelNotifications/types.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +4 -5
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +14 -23
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +3 -4
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/index.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +9 -10
- package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/module/moduleContext.js +4 -5
- package/lib/module/domain/groupChannelOperators/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelOperators/types.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js +3 -4
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +9 -10
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/index.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js +7 -8
- package/lib/module/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js +7 -9
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/types.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadHeader.js +9 -12
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadHeader.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadInput.js +5 -6
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadInput.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadMessageList.js +9 -12
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadMessageList.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadParentMessageInfo.js +31 -33
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadParentMessageInfo.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadStatusEmpty.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadStatusLoading.js.map +1 -1
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadSuggestedMentionList.js +20 -28
- package/lib/module/domain/groupChannelThread/component/GroupChannelThreadSuggestedMentionList.js.map +1 -1
- package/lib/module/domain/groupChannelThread/index.js.map +1 -1
- package/lib/module/domain/groupChannelThread/module/createGroupChannelThreadModule.js +11 -12
- package/lib/module/domain/groupChannelThread/module/createGroupChannelThreadModule.js.map +1 -1
- package/lib/module/domain/groupChannelThread/module/moduleContext.js +8 -9
- package/lib/module/domain/groupChannelThread/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelThread/types.js.map +1 -1
- package/lib/module/domain/groupChannelUserList/types.js.map +1 -1
- package/lib/module/domain/messageSearch/component/MessageSearchHeader.js +16 -15
- package/lib/module/domain/messageSearch/component/MessageSearchHeader.js.map +1 -1
- package/lib/module/domain/messageSearch/component/MessageSearchList.js +11 -13
- package/lib/module/domain/messageSearch/component/MessageSearchList.js.map +1 -1
- package/lib/module/domain/messageSearch/component/MessageSearchStatusEmpty.js.map +1 -1
- package/lib/module/domain/messageSearch/component/MessageSearchStatusError.js +3 -4
- package/lib/module/domain/messageSearch/component/MessageSearchStatusError.js.map +1 -1
- package/lib/module/domain/messageSearch/component/MessageSearchStatusLoading.js.map +1 -1
- package/lib/module/domain/messageSearch/index.js.map +1 -1
- package/lib/module/domain/messageSearch/module/createMessageSearchModule.js +9 -10
- package/lib/module/domain/messageSearch/module/createMessageSearchModule.js.map +1 -1
- package/lib/module/domain/messageSearch/module/moduleContext.js +3 -4
- package/lib/module/domain/messageSearch/module/moduleContext.js.map +1 -1
- package/lib/module/domain/messageSearch/types.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelHeader.js +6 -7
- package/lib/module/domain/openChannel/component/OpenChannelHeader.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelInput.js +5 -6
- package/lib/module/domain/openChannel/component/OpenChannelInput.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelMessageList.js +6 -8
- package/lib/module/domain/openChannel/component/OpenChannelMessageList.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelStatusEmpty.js.map +1 -1
- package/lib/module/domain/openChannel/component/OpenChannelStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannel/index.js.map +1 -1
- package/lib/module/domain/openChannel/module/createOpenChannelModule.js +9 -10
- package/lib/module/domain/openChannel/module/createOpenChannelModule.js.map +1 -1
- package/lib/module/domain/openChannel/module/moduleContext.js +6 -7
- package/lib/module/domain/openChannel/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannel/types.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js +3 -4
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersHeader.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js +14 -23
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusEmpty.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js +3 -4
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusError.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/component/OpenChannelBannedUsersStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/index.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js +9 -10
- package/lib/module/domain/openChannelBannedUsers/module/createOpenChannelBannedUsersModule.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/module/moduleContext.js +4 -5
- package/lib/module/domain/openChannelBannedUsers/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelBannedUsers/types.js.map +1 -1
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateHeader.js +5 -6
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateHeader.js.map +1 -1
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js +12 -13
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateProfileInput.js.map +1 -1
- package/lib/module/domain/openChannelCreate/component/OpenChannelCreateStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannelCreate/index.js.map +1 -1
- package/lib/module/domain/openChannelCreate/module/createOpenChannelCreateModule.js +7 -8
- package/lib/module/domain/openChannelCreate/module/createOpenChannelCreateModule.js.map +1 -1
- package/lib/module/domain/openChannelCreate/module/moduleContext.js +3 -4
- package/lib/module/domain/openChannelCreate/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelCreate/types.js.map +1 -1
- package/lib/module/domain/openChannelList/component/OpenChannelListHeader.js +3 -4
- package/lib/module/domain/openChannelList/component/OpenChannelListHeader.js.map +1 -1
- package/lib/module/domain/openChannelList/component/OpenChannelListList.js +19 -30
- package/lib/module/domain/openChannelList/component/OpenChannelListList.js.map +1 -1
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusEmpty.js.map +1 -1
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusError.js +3 -4
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusError.js.map +1 -1
- package/lib/module/domain/openChannelList/component/OpenChannelListStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannelList/index.js.map +1 -1
- package/lib/module/domain/openChannelList/module/createOpenChannelListModule.js +9 -10
- package/lib/module/domain/openChannelList/module/createOpenChannelListModule.js.map +1 -1
- package/lib/module/domain/openChannelList/module/moduleContext.js +3 -4
- package/lib/module/domain/openChannelList/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelList/types.js.map +1 -1
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationHeader.js +3 -4
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationHeader.js.map +1 -1
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationMenu.js +6 -7
- package/lib/module/domain/openChannelModeration/component/OpenChannelModerationMenu.js.map +1 -1
- package/lib/module/domain/openChannelModeration/index.js.map +1 -1
- package/lib/module/domain/openChannelModeration/module/createOpenChannelModerationModule.js +6 -7
- package/lib/module/domain/openChannelModeration/module/createOpenChannelModerationModule.js.map +1 -1
- package/lib/module/domain/openChannelModeration/module/moduleContext.js +4 -5
- package/lib/module/domain/openChannelModeration/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelModeration/types.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js +3 -4
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsHeader.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js +14 -23
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusEmpty.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js +3 -4
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusError.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/index.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js +9 -10
- package/lib/module/domain/openChannelMutedParticipants/module/createOpenChannelMutedParticipantsModule.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/module/moduleContext.js +4 -5
- package/lib/module/domain/openChannelMutedParticipants/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelMutedParticipants/types.js.map +1 -1
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js +4 -5
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsHeader.js.map +1 -1
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsList.js +14 -23
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsList.js.map +1 -1
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusEmpty.js.map +1 -1
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js +3 -4
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusError.js.map +1 -1
- package/lib/module/domain/openChannelOperators/component/OpenChannelOperatorsStatusLoading.js.map +1 -1
- package/lib/module/domain/openChannelOperators/index.js.map +1 -1
- package/lib/module/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js +9 -10
- package/lib/module/domain/openChannelOperators/module/createOpenChannelOperatorsModule.js.map +1 -1
- package/lib/module/domain/openChannelOperators/module/moduleContext.js +4 -5
- package/lib/module/domain/openChannelOperators/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelOperators/types.js.map +1 -1
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsHeader.js +3 -4
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsHeader.js.map +1 -1
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsInfo.js.map +1 -1
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsMenu.js +6 -7
- package/lib/module/domain/openChannelSettings/component/OpenChannelSettingsMenu.js.map +1 -1
- package/lib/module/domain/openChannelSettings/index.js.map +1 -1
- package/lib/module/domain/openChannelSettings/module/createOpenChannelSettingsModule.js +7 -8
- package/lib/module/domain/openChannelSettings/module/createOpenChannelSettingsModule.js.map +1 -1
- package/lib/module/domain/openChannelSettings/module/moduleContext.js +5 -6
- package/lib/module/domain/openChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/module/domain/openChannelSettings/types.js.map +1 -1
- package/lib/module/domain/openChannelUserList/types.js.map +1 -1
- package/lib/module/domain/userList/component/UserListHeader.js +7 -8
- package/lib/module/domain/userList/component/UserListHeader.js.map +1 -1
- package/lib/module/domain/userList/component/UserListList.js +14 -23
- package/lib/module/domain/userList/component/UserListList.js.map +1 -1
- package/lib/module/domain/userList/component/UserListStatusEmpty.js.map +1 -1
- package/lib/module/domain/userList/component/UserListStatusError.js +3 -4
- package/lib/module/domain/userList/component/UserListStatusError.js.map +1 -1
- package/lib/module/domain/userList/component/UserListStatusLoading.js.map +1 -1
- package/lib/module/domain/userList/index.js.map +1 -1
- package/lib/module/domain/userList/module/createUserListModule.js +9 -10
- package/lib/module/domain/userList/module/createUserListModule.js.map +1 -1
- package/lib/module/domain/userList/module/moduleContext.js +5 -6
- package/lib/module/domain/userList/module/moduleContext.js.map +1 -1
- package/lib/module/domain/userList/types.js.map +1 -1
- package/lib/module/fragments/createGroupChannelBannedUsersFragment.js +8 -9
- package/lib/module/fragments/createGroupChannelBannedUsersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelCreateFragment.js +10 -12
- package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelFragment.js +24 -25
- package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelInviteFragment.js +9 -11
- package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelListFragment.js +10 -11
- package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelMembersFragment.js +14 -15
- package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelModerationFragment.js +12 -17
- package/lib/module/fragments/createGroupChannelModerationFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelMutedMembersFragment.js +12 -13
- package/lib/module/fragments/createGroupChannelMutedMembersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelNotificationsFragment.js +4 -5
- package/lib/module/fragments/createGroupChannelNotificationsFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelOperatorsFragment.js +13 -14
- package/lib/module/fragments/createGroupChannelOperatorsFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js +11 -13
- package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelSettingsFragment.js +14 -19
- package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelThreadFragment.js +21 -22
- package/lib/module/fragments/createGroupChannelThreadFragment.js.map +1 -1
- package/lib/module/fragments/createMessageSearchFragment.js +11 -13
- package/lib/module/fragments/createMessageSearchFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelBannedUsersFragment.js +8 -9
- package/lib/module/fragments/createOpenChannelBannedUsersFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelCreateFragment.js +5 -6
- package/lib/module/fragments/createOpenChannelCreateFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelFragment.js +20 -21
- package/lib/module/fragments/createOpenChannelFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelListFragment.js +7 -8
- package/lib/module/fragments/createOpenChannelListFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelModerationFragment.js +12 -17
- package/lib/module/fragments/createOpenChannelModerationFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelMutedParticipantsFragment.js +8 -9
- package/lib/module/fragments/createOpenChannelMutedParticipantsFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelOperatorsFragment.js +9 -10
- package/lib/module/fragments/createOpenChannelOperatorsFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelParticipantsFragment.js +9 -10
- package/lib/module/fragments/createOpenChannelParticipantsFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelRegisterOperatorFragment.js +11 -13
- package/lib/module/fragments/createOpenChannelRegisterOperatorFragment.js.map +1 -1
- package/lib/module/fragments/createOpenChannelSettingsFragment.js +13 -18
- package/lib/module/fragments/createOpenChannelSettingsFragment.js.map +1 -1
- package/lib/module/hooks/useChannelInputItems.js.map +1 -1
- package/lib/module/hooks/useConnection.js.map +1 -1
- package/lib/module/hooks/useContext.js.map +1 -1
- package/lib/module/hooks/useKeyboardStatus.js.map +1 -1
- package/lib/module/hooks/useMentionSuggestion.js +3 -4
- package/lib/module/hooks/useMentionSuggestion.js.map +1 -1
- package/lib/module/hooks/useMentionTextInput.js +4 -2
- package/lib/module/hooks/useMentionTextInput.js.map +1 -1
- package/lib/module/hooks/usePushTokenRegistration.js +1 -1
- package/lib/module/hooks/usePushTokenRegistration.js.map +1 -1
- package/lib/module/hooks/useVoiceMessageInput.js +11 -14
- package/lib/module/hooks/useVoiceMessageInput.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/libs/EmojiManager.js +4 -5
- package/lib/module/libs/EmojiManager.js.map +1 -1
- package/lib/module/libs/ImageCompressionConfig.js +3 -3
- package/lib/module/libs/ImageCompressionConfig.js.map +1 -1
- package/lib/module/libs/InternalLocalCacheStorage.js +5 -11
- package/lib/module/libs/InternalLocalCacheStorage.js.map +1 -1
- package/lib/module/libs/MentionConfig.js +3 -3
- package/lib/module/libs/MentionConfig.js.map +1 -1
- package/lib/module/libs/MentionManager.js +44 -29
- package/lib/module/libs/MentionManager.js.map +1 -1
- package/lib/module/libs/SBUError.js +3 -3
- package/lib/module/libs/SBUError.js.map +1 -1
- package/lib/module/libs/SBUUtils.js.map +1 -1
- package/lib/module/libs/VoiceMessageConfig.js +3 -3
- package/lib/module/libs/VoiceMessageConfig.js.map +1 -1
- package/lib/module/libs/VoiceMessageStatusManager.js +8 -8
- package/lib/module/libs/VoiceMessageStatusManager.js.map +1 -1
- package/lib/module/localization/StringSet.en.js.map +1 -1
- package/lib/module/localization/StringSet.type.js.map +1 -1
- package/lib/module/localization/createBaseStringSet.js +25 -30
- package/lib/module/localization/createBaseStringSet.js.map +1 -1
- package/lib/module/platform/createClipboardService.expo.js.map +1 -1
- package/lib/module/platform/createClipboardService.native.js.map +1 -1
- package/lib/module/platform/createFileService.expo.js +10 -12
- package/lib/module/platform/createFileService.expo.js.map +1 -1
- package/lib/module/platform/createFileService.native.js +27 -32
- package/lib/module/platform/createFileService.native.js.map +1 -1
- package/lib/module/platform/createMediaService.expo.js +24 -28
- package/lib/module/platform/createMediaService.expo.js.map +1 -1
- package/lib/module/platform/createMediaService.native.js +22 -26
- package/lib/module/platform/createMediaService.native.js.map +1 -1
- package/lib/module/platform/createNotificationService.expo.js +3 -6
- package/lib/module/platform/createNotificationService.expo.js.map +1 -1
- package/lib/module/platform/createNotificationService.native.js +4 -5
- package/lib/module/platform/createNotificationService.native.js.map +1 -1
- package/lib/module/platform/createPlayerService.expo.js +6 -7
- package/lib/module/platform/createPlayerService.expo.js.map +1 -1
- package/lib/module/platform/createPlayerService.native.js +7 -8
- package/lib/module/platform/createPlayerService.native.js.map +1 -1
- package/lib/module/platform/createRecorderService.expo.js +6 -7
- package/lib/module/platform/createRecorderService.expo.js.map +1 -1
- package/lib/module/platform/createRecorderService.native.js +8 -9
- package/lib/module/platform/createRecorderService.native.js.map +1 -1
- package/lib/module/platform/dynamicModule.js +1 -2
- package/lib/module/platform/dynamicModule.js.map +1 -1
- package/lib/module/platform/types.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/expoBackwardUtils.js +22 -28
- package/lib/module/utils/expoBackwardUtils.js.map +1 -1
- package/lib/module/utils/expoPermissionGranted.js +1 -1
- package/lib/module/utils/expoPermissionGranted.js.map +1 -1
- package/lib/module/utils/nativePermissionGranted.js +1 -1
- package/lib/module/utils/nativePermissionGranted.js.map +1 -1
- package/lib/module/utils/normalizeFile.js +6 -7
- package/lib/module/utils/normalizeFile.js.map +1 -1
- package/lib/module/utils/promise.js.map +1 -1
- package/lib/module/utils/pubsub.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/src/components/GroupChannelMessageRenderer/index.d.ts +1 -1
- package/lib/typescript/src/components/OpenChannelMessageRenderer/index.d.ts +1 -1
- package/lib/typescript/src/components/ReactionBottomSheets/index.d.ts +2 -2
- package/lib/typescript/src/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.d.ts +1 -0
- package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +4 -4
- package/lib/typescript/src/contexts/UserProfileCtx.d.ts +3 -3
- package/lib/typescript/src/domain/userList/component/UserListList.d.ts +1 -1
- package/lib/typescript/src/libs/MentionManager.d.ts +1 -0
- package/lib/typescript/src/localization/StringSet.type.d.ts +5 -2
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +6 -6
- package/src/components/ChannelInput/AttachmentsButton.tsx +1 -1
- package/src/components/ChannelInput/EditInput.tsx +2 -0
- package/src/components/ChannelInput/MessageToReplyPreview.tsx +29 -33
- package/src/components/ChannelInput/SendInput.tsx +3 -1
- package/src/components/ChannelInput/VoiceMessageInput.tsx +4 -4
- package/src/components/ChannelInput/index.tsx +19 -11
- package/src/components/ChannelMessageList/index.tsx +5 -7
- package/src/components/ChannelThreadMessageList/index.tsx +5 -7
- package/src/components/FileViewer/FileViewerFooter.tsx +6 -6
- package/src/components/FileViewer/FileViewerHeader.tsx +6 -7
- package/src/components/GroupChannelMessageRenderer/GroupChannelMessageParentMessage.tsx +4 -4
- package/src/components/GroupChannelMessageRenderer/GroupChannelMessageReplyInfo.tsx +5 -5
- package/src/components/GroupChannelMessageRenderer/index.tsx +3 -2
- package/src/components/MessageSearchResultItem.tsx +17 -15
- package/src/components/ReactionAddons/BottomSheetReactionAddon.tsx +5 -7
- package/src/components/ReactionAddons/MessageReactionAddon.tsx +8 -14
- package/src/components/ReactionAddons/ReactionRoundedButton.tsx +1 -1
- package/src/components/ReactionBottomSheets/ReactionListBottomSheet.tsx +7 -8
- package/src/components/ReactionBottomSheets/ReactionUserListBottomSheet.tsx +33 -26
- package/src/components/ReactionBottomSheets/index.tsx +2 -2
- package/src/components/ThreadParentMessageRenderer/ThreadParentMessage.file.tsx +1 -1
- package/src/components/ThreadParentMessageRenderer/ThreadParentMessage.file.voice.tsx +4 -2
- package/src/components/ThreadParentMessageRenderer/ThreadParentMessage.user.og.tsx +15 -6
- package/src/components/ThreadParentMessageRenderer/ThreadParentMessage.user.tsx +37 -31
- package/src/components/ThreadParentMessageRenderer/index.tsx +12 -2
- package/src/components/UserActionBar.tsx +11 -10
- package/src/components/UserSelectableBar.tsx +8 -7
- package/src/containers/GroupChannelPreviewContainer.tsx +4 -5
- package/src/containers/SendbirdUIKitContainer.tsx +3 -2
- package/src/contexts/ReactionCtx.tsx +0 -3
- package/src/contexts/UserProfileCtx.tsx +14 -13
- package/src/domain/groupChannel/component/GroupChannelHeader.tsx +6 -7
- package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +9 -5
- package/src/domain/groupChannel/component/GroupChannelSuggestedMentionList.tsx +15 -15
- package/src/domain/groupChannel/module/moduleContext.tsx +2 -4
- package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.tsx +3 -4
- package/src/domain/groupChannelList/component/GroupChannelListList.tsx +10 -4
- package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.tsx +3 -4
- package/src/domain/groupChannelNotifications/component/GroupChannelNotificationsView.tsx +26 -11
- package/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.tsx +3 -5
- package/src/domain/groupChannelSettings/module/moduleContext.tsx +2 -4
- package/src/domain/groupChannelThread/component/GroupChannelThreadHeader.tsx +12 -6
- package/src/domain/groupChannelThread/component/GroupChannelThreadMessageList.tsx +3 -4
- package/src/domain/groupChannelThread/component/GroupChannelThreadParentMessageInfo.tsx +11 -10
- package/src/domain/groupChannelThread/component/GroupChannelThreadSuggestedMentionList.tsx +12 -13
- package/src/domain/messageSearch/component/MessageSearchHeader.tsx +9 -6
- package/src/domain/openChannel/component/OpenChannelHeader.tsx +1 -1
- package/src/domain/openChannelBannedUsers/component/OpenChannelBannedUsersList.tsx +3 -4
- package/src/domain/openChannelCreate/component/OpenChannelCreateProfileInput.tsx +6 -6
- package/src/domain/openChannelList/component/OpenChannelListList.tsx +3 -4
- package/src/domain/openChannelMutedParticipants/component/OpenChannelMutedParticipantsList.tsx +3 -4
- package/src/domain/openChannelOperators/component/OpenChannelOperatorsList.tsx +3 -4
- package/src/domain/userList/component/UserListList.tsx +3 -5
- package/src/fragments/createGroupChannelFragment.tsx +1 -1
- package/src/fragments/createGroupChannelMembersFragment.tsx +4 -5
- package/src/fragments/createGroupChannelModerationFragment.tsx +4 -5
- package/src/fragments/createGroupChannelMutedMembersFragment.tsx +4 -5
- package/src/fragments/createGroupChannelOperatorsFragment.tsx +4 -5
- package/src/fragments/createGroupChannelSettingsFragment.tsx +4 -5
- package/src/fragments/createOpenChannelModerationFragment.tsx +4 -5
- package/src/fragments/createOpenChannelSettingsFragment.tsx +4 -5
- package/src/hooks/useMentionSuggestion.ts +3 -5
- package/src/hooks/useMentionTextInput.ts +1 -0
- package/src/libs/MentionManager.tsx +29 -3
- package/src/localization/StringSet.type.ts +5 -1
- package/src/localization/createBaseStringSet.ts +3 -0
- package/src/version.ts +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
function _defineProperty(
|
|
2
|
-
function _toPropertyKey(
|
|
3
|
-
function _toPrimitive(
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
4
|
import { Platform } from 'react-native';
|
|
5
5
|
import { Logger, getFileExtension, getFileExtensionFromMime, getFileExtensionFromUri, getFileType, normalizeFileName } from '@sendbird/uikit-utils';
|
|
6
6
|
import SBUError from '../libs/SBUError';
|
|
@@ -16,14 +16,13 @@ function getAndroidStoragePermissionsByAPILevel(permissionModule) {
|
|
|
16
16
|
}
|
|
17
17
|
return [permissionModule.PERMISSIONS.ANDROID.WRITE_EXTERNAL_STORAGE, permissionModule.PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE];
|
|
18
18
|
}
|
|
19
|
-
const createNativeFileService =
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
} = _ref;
|
|
19
|
+
const createNativeFileService = ({
|
|
20
|
+
imagePickerModule,
|
|
21
|
+
documentPickerModule,
|
|
22
|
+
permissionModule,
|
|
23
|
+
mediaLibraryModule,
|
|
24
|
+
fsModule
|
|
25
|
+
}) => {
|
|
27
26
|
const cameraPermissions = Platform.select({
|
|
28
27
|
ios: [permissionModule.PERMISSIONS.IOS.CAMERA, permissionModule.PERMISSIONS.IOS.MICROPHONE],
|
|
29
28
|
android: [permissionModule.PERMISSIONS.ANDROID.CAMERA],
|
|
@@ -92,7 +91,7 @@ const createNativeFileService = _ref => {
|
|
|
92
91
|
const granted = await this.requestCameraPermission();
|
|
93
92
|
if (!granted) {
|
|
94
93
|
var _options$onOpenFailur;
|
|
95
|
-
options === null || options === void 0
|
|
94
|
+
options === null || options === void 0 || (_options$onOpenFailur = options.onOpenFailure) === null || _options$onOpenFailur === void 0 || _options$onOpenFailur.call(options, SBUError.PERMISSIONS_DENIED);
|
|
96
95
|
return null;
|
|
97
96
|
}
|
|
98
97
|
}
|
|
@@ -115,7 +114,7 @@ const createNativeFileService = _ref => {
|
|
|
115
114
|
if (response.didCancel) return null;
|
|
116
115
|
if (response.errorCode === 'camera_unavailable') {
|
|
117
116
|
var _options$onOpenFailur2;
|
|
118
|
-
options === null || options === void 0
|
|
117
|
+
options === null || options === void 0 || (_options$onOpenFailur2 = options.onOpenFailure) === null || _options$onOpenFailur2 === void 0 || _options$onOpenFailur2.call(options, SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));
|
|
119
118
|
return null;
|
|
120
119
|
}
|
|
121
120
|
const {
|
|
@@ -142,7 +141,7 @@ const createNativeFileService = _ref => {
|
|
|
142
141
|
const granted = await this.requestMediaLibraryPermission();
|
|
143
142
|
if (!granted) {
|
|
144
143
|
var _options$onOpenFailur3;
|
|
145
|
-
options === null || options === void 0
|
|
144
|
+
options === null || options === void 0 || (_options$onOpenFailur3 = options.onOpenFailure) === null || _options$onOpenFailur3 === void 0 || _options$onOpenFailur3.call(options, SBUError.PERMISSIONS_DENIED);
|
|
146
145
|
return null;
|
|
147
146
|
}
|
|
148
147
|
}
|
|
@@ -165,23 +164,20 @@ const createNativeFileService = _ref => {
|
|
|
165
164
|
if (response.didCancel) return null;
|
|
166
165
|
if (response.errorCode === 'camera_unavailable') {
|
|
167
166
|
var _options$onOpenFailur4;
|
|
168
|
-
options === null || options === void 0
|
|
167
|
+
options === null || options === void 0 || (_options$onOpenFailur4 = options.onOpenFailure) === null || _options$onOpenFailur4 === void 0 || _options$onOpenFailur4.call(options, SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));
|
|
169
168
|
return null;
|
|
170
169
|
}
|
|
171
|
-
return Promise.all((response.assets || []).slice(0, selectionLimit).map(
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
type
|
|
183
|
-
});
|
|
184
|
-
}));
|
|
170
|
+
return Promise.all((response.assets || []).slice(0, selectionLimit).map(({
|
|
171
|
+
fileName: name,
|
|
172
|
+
fileSize: size,
|
|
173
|
+
type,
|
|
174
|
+
uri
|
|
175
|
+
}) => normalizeFile({
|
|
176
|
+
uri,
|
|
177
|
+
size,
|
|
178
|
+
name,
|
|
179
|
+
type
|
|
180
|
+
})));
|
|
185
181
|
}
|
|
186
182
|
async openDocument(options) {
|
|
187
183
|
try {
|
|
@@ -200,7 +196,7 @@ const createNativeFileService = _ref => {
|
|
|
200
196
|
} catch (e) {
|
|
201
197
|
if (!documentPickerModule.isCancel(e) && documentPickerModule.isInProgress(e)) {
|
|
202
198
|
var _options$onOpenFailur5;
|
|
203
|
-
options === null || options === void 0
|
|
199
|
+
options === null || options === void 0 || (_options$onOpenFailur5 = options.onOpenFailure) === null || _options$onOpenFailur5 === void 0 || _options$onOpenFailur5.call(options, SBUError.UNKNOWN, e);
|
|
204
200
|
}
|
|
205
201
|
return null;
|
|
206
202
|
}
|
|
@@ -242,8 +238,7 @@ const createNativeFileService = _ref => {
|
|
|
242
238
|
}
|
|
243
239
|
return downloadedPath;
|
|
244
240
|
}
|
|
245
|
-
createRecordFilePath() {
|
|
246
|
-
let customExtension = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'm4a';
|
|
241
|
+
createRecordFilePath(customExtension = 'm4a') {
|
|
247
242
|
const filename = `record-${Date.now()}.${customExtension}`;
|
|
248
243
|
const path = `${fsModule.Dirs.CacheDir}/${filename}`;
|
|
249
244
|
return Platform.select({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","Logger","getFileExtension","getFileExtensionFromMime","getFileExtensionFromUri","getFileType","normalizeFileName","SBUError","nativePermissionGranted","normalizeFile","getAndroidStoragePermissionsByAPILevel","permissionModule","OS","Version","PERMISSIONS","ANDROID","READ_EXTERNAL_STORAGE","WRITE_EXTERNAL_STORAGE","createNativeFileService","_ref","imagePickerModule","documentPickerModule","mediaLibraryModule","fsModule","cameraPermissions","select","ios","IOS","CAMERA","MICROPHONE","android","default","mediaLibraryPermissions","PHOTO_LIBRARY","PHOTO_LIBRARY_ADD_ONLY","NativeFileService","constructor","_defineProperty","options","dirname","Dirs","CacheDir","DocumentDir","context","filename","fileName","extension","fileType","fileUrl","path","buildDownloadPath","FileSystem","fetch","downloadedPath","file","name","type","hasCameraPermission","status","checkMultiple","requestCameraPermission","requestMultiple","hasMediaLibraryPermission","requestMediaLibraryPermission","openCamera","_response$assets","hasPermission","granted","_options$onOpenFailur","onOpenFailure","call","PERMISSIONS_DENIED","response","launchCamera","presentationStyle","cameraType","mediaType","didCancel","errorCode","_options$onOpenFailur2","DEVICE_UNAVAILABLE","Error","errorMessage","fileSize","size","uri","assets","openMediaLibrary","selectionLimit","_options$onOpenFailur3","launchImageLibrary","_options$onOpenFailur4","Promise","all","slice","map","_ref2","openDocument","pickSingle","e","isCancel","isInProgress","_options$onOpenFailur5","UNKNOWN","save","downloadFile","mediaTypeMap","externalDirMap","externalDir","cpExternal","catch","error","createRecordFilePath","customExtension","arguments","length","undefined","Date","now","recordFilePath","startsWith"],"sources":["createFileService.native.ts"],"sourcesContent":["import type { CameraRoll } from '@react-native-camera-roll/camera-roll';\nimport { Platform } from 'react-native';\nimport type * as DocumentPicker from 'react-native-document-picker';\nimport type * as FileAccess from 'react-native-file-access';\nimport type * as ImagePicker from 'react-native-image-picker';\nimport type * as Permissions from 'react-native-permissions';\nimport type { Permission } from 'react-native-permissions';\n\nimport {\n Logger,\n getFileExtension,\n getFileExtensionFromMime,\n getFileExtensionFromUri,\n getFileType,\n normalizeFileName,\n} from '@sendbird/uikit-utils';\n\nimport SBUError from '../libs/SBUError';\nimport nativePermissionGranted from '../utils/nativePermissionGranted';\nimport normalizeFile from '../utils/normalizeFile';\nimport type {\n FilePickerResponse,\n FileServiceInterface,\n OpenCameraOptions,\n OpenDocumentOptions,\n OpenMediaLibraryOptions,\n SaveOptions,\n} from './types';\n\nfunction getAndroidStoragePermissionsByAPILevel(permissionModule: typeof Permissions): Permission[] {\n if (Platform.OS !== 'android') return [];\n\n if (Platform.Version > 32) {\n return [];\n }\n\n if (Platform.Version > 28) {\n return [permissionModule.PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE];\n }\n\n return [\n permissionModule.PERMISSIONS.ANDROID.WRITE_EXTERNAL_STORAGE,\n permissionModule.PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE,\n ];\n}\n\nconst createNativeFileService = ({\n imagePickerModule,\n documentPickerModule,\n permissionModule,\n mediaLibraryModule,\n fsModule,\n}: {\n imagePickerModule: typeof ImagePicker;\n documentPickerModule: typeof DocumentPicker;\n permissionModule: typeof Permissions;\n mediaLibraryModule: typeof CameraRoll;\n fsModule: typeof FileAccess;\n}): FileServiceInterface => {\n const cameraPermissions: Permission[] = Platform.select({\n ios: [permissionModule.PERMISSIONS.IOS.CAMERA, permissionModule.PERMISSIONS.IOS.MICROPHONE],\n android: [permissionModule.PERMISSIONS.ANDROID.CAMERA],\n default: [],\n });\n const mediaLibraryPermissions: Permission[] = Platform.select({\n ios: [permissionModule.PERMISSIONS.IOS.PHOTO_LIBRARY, permissionModule.PERMISSIONS.IOS.PHOTO_LIBRARY_ADD_ONLY],\n android: getAndroidStoragePermissionsByAPILevel(permissionModule),\n default: [],\n });\n\n class NativeFileService implements FileServiceInterface {\n async hasCameraPermission(): Promise<boolean> {\n const status = await permissionModule.checkMultiple(cameraPermissions);\n return nativePermissionGranted(status);\n }\n async requestCameraPermission(): Promise<boolean> {\n const status = await permissionModule.requestMultiple(cameraPermissions);\n return nativePermissionGranted(status);\n }\n async hasMediaLibraryPermission(): Promise<boolean> {\n const status = await permissionModule.checkMultiple(mediaLibraryPermissions);\n return nativePermissionGranted(status);\n }\n async requestMediaLibraryPermission(): Promise<boolean> {\n const status = await permissionModule.requestMultiple(mediaLibraryPermissions);\n return nativePermissionGranted(status);\n }\n\n async openCamera(options?: OpenCameraOptions): Promise<FilePickerResponse> {\n const hasPermission = await this.hasCameraPermission();\n if (!hasPermission) {\n const granted = await this.requestCameraPermission();\n if (!granted) {\n options?.onOpenFailure?.(SBUError.PERMISSIONS_DENIED);\n return null;\n }\n }\n\n const response = await imagePickerModule.launchCamera({\n presentationStyle: 'fullScreen',\n cameraType: options?.cameraType ?? 'back',\n mediaType: (() => {\n switch (options?.mediaType) {\n case 'photo':\n return 'photo';\n case 'video':\n return 'video';\n case 'all':\n return 'mixed';\n default:\n return 'photo';\n }\n })(),\n });\n if (response.didCancel) return null;\n if (response.errorCode === 'camera_unavailable') {\n options?.onOpenFailure?.(SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));\n return null;\n }\n\n const { fileName: name, fileSize: size, type, uri } = response.assets?.[0] ?? {};\n return normalizeFile({ uri, size, name, type });\n }\n async openMediaLibrary(options?: OpenMediaLibraryOptions): Promise<FilePickerResponse[] | null> {\n /**\n * NOTE: options.selectionLimit {@link https://github.com/react-native-image-picker/react-native-image-picker#options}\n * We do not support 0 (any number of files)\n **/\n const selectionLimit = options?.selectionLimit || 1;\n const hasPermission = await this.hasMediaLibraryPermission();\n if (!hasPermission) {\n const granted = await this.requestMediaLibraryPermission();\n if (!granted) {\n options?.onOpenFailure?.(SBUError.PERMISSIONS_DENIED);\n return null;\n }\n }\n\n const response = await imagePickerModule.launchImageLibrary({\n presentationStyle: 'fullScreen',\n selectionLimit,\n mediaType: (() => {\n switch (options?.mediaType) {\n case 'photo':\n return 'photo';\n case 'video':\n return 'video';\n case 'all':\n return 'mixed';\n default:\n return 'photo';\n }\n })(),\n });\n if (response.didCancel) return null;\n if (response.errorCode === 'camera_unavailable') {\n options?.onOpenFailure?.(SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));\n return null;\n }\n\n return Promise.all(\n (response.assets || [])\n .slice(0, selectionLimit)\n .map(({ fileName: name, fileSize: size, type, uri }) => normalizeFile({ uri, size, name, type })),\n );\n }\n async openDocument(options?: OpenDocumentOptions): Promise<FilePickerResponse> {\n try {\n const { uri, size, name, type } = await documentPickerModule.pickSingle();\n return normalizeFile({ uri, size, name, type });\n } catch (e) {\n if (!documentPickerModule.isCancel(e) && documentPickerModule.isInProgress(e)) {\n options?.onOpenFailure?.(SBUError.UNKNOWN, e);\n }\n return null;\n }\n }\n async save(options: SaveOptions): Promise<string> {\n const hasPermission = await this.hasMediaLibraryPermission();\n if (!hasPermission) {\n const granted = await this.requestMediaLibraryPermission();\n if (!granted) throw new Error('Permission not granted');\n }\n\n const { downloadedPath, file } = await this.downloadFile(options);\n\n if (Platform.OS === 'ios') {\n if (file.type === 'image' || file.type === 'video') {\n const mediaTypeMap = { 'image': 'photo', 'video': 'video' } as const;\n const mediaType = mediaTypeMap[file.type];\n await mediaLibraryModule.save(downloadedPath, { type: mediaType });\n }\n }\n\n if (Platform.OS === 'android') {\n const externalDirMap = { 'file': 'downloads', 'audio': 'audio', 'image': 'images', 'video': 'video' } as const;\n const externalDir = externalDirMap[file.type];\n await fsModule.FileSystem.cpExternal(downloadedPath, file.name, externalDir).catch(() => {\n Logger.error('Failed to save file to external storage. Retry saving to downloads directory instead.');\n return fsModule.FileSystem.cpExternal(downloadedPath, file.name, 'downloads');\n });\n }\n\n return downloadedPath;\n }\n\n private buildDownloadPath = async (options: SaveOptions) => {\n const dirname = Platform.select({ android: fsModule.Dirs.CacheDir, default: fsModule.Dirs.DocumentDir });\n const context = { dirname, filename: options.fileName };\n const extension =\n getFileExtension(options.fileName) ||\n getFileExtensionFromMime(options.fileType) ||\n getFileExtension(options.fileUrl) ||\n (await getFileExtensionFromUri(options.fileUrl));\n\n if (extension) context.filename = normalizeFileName(context.filename, extension);\n\n return { path: `${context.dirname}/${context.filename}`, ...context };\n };\n\n private downloadFile = async (options: SaveOptions) => {\n const { path, filename } = await this.buildDownloadPath(options);\n await fsModule.FileSystem.fetch(options.fileUrl, { path });\n return {\n downloadedPath: path,\n file: {\n name: filename,\n type: getFileType(getFileExtension(path)),\n } as const,\n };\n };\n\n createRecordFilePath(customExtension = 'm4a'): { recordFilePath: string; uri: string } {\n const filename = `record-${Date.now()}.${customExtension}`;\n const path = `${fsModule.Dirs.CacheDir}/${filename}`;\n return Platform.select({\n ios: {\n uri: path,\n recordFilePath: filename,\n },\n android: {\n uri: path.startsWith('file://') ? path : 'file://' + path,\n recordFilePath: path,\n },\n default: {\n uri: path,\n recordFilePath: path,\n },\n });\n }\n }\n\n return new NativeFileService();\n};\n\nexport default createNativeFileService;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Platform","Logger","getFileExtension","getFileExtensionFromMime","getFileExtensionFromUri","getFileType","normalizeFileName","SBUError","nativePermissionGranted","normalizeFile","getAndroidStoragePermissionsByAPILevel","permissionModule","OS","Version","PERMISSIONS","ANDROID","READ_EXTERNAL_STORAGE","WRITE_EXTERNAL_STORAGE","createNativeFileService","imagePickerModule","documentPickerModule","mediaLibraryModule","fsModule","cameraPermissions","select","ios","IOS","CAMERA","MICROPHONE","android","default","mediaLibraryPermissions","PHOTO_LIBRARY","PHOTO_LIBRARY_ADD_ONLY","NativeFileService","constructor","_defineProperty","options","dirname","Dirs","CacheDir","DocumentDir","context","filename","fileName","extension","fileType","fileUrl","path","buildDownloadPath","FileSystem","fetch","downloadedPath","file","name","type","hasCameraPermission","status","checkMultiple","requestCameraPermission","requestMultiple","hasMediaLibraryPermission","requestMediaLibraryPermission","openCamera","_response$assets","hasPermission","granted","_options$onOpenFailur","onOpenFailure","call","PERMISSIONS_DENIED","response","launchCamera","presentationStyle","cameraType","mediaType","didCancel","errorCode","_options$onOpenFailur2","DEVICE_UNAVAILABLE","Error","errorMessage","fileSize","size","uri","assets","openMediaLibrary","selectionLimit","_options$onOpenFailur3","launchImageLibrary","_options$onOpenFailur4","Promise","all","slice","map","openDocument","pickSingle","e","isCancel","isInProgress","_options$onOpenFailur5","UNKNOWN","save","downloadFile","mediaTypeMap","externalDirMap","externalDir","cpExternal","catch","error","createRecordFilePath","customExtension","Date","now","recordFilePath","startsWith"],"sources":["createFileService.native.ts"],"sourcesContent":["import type { CameraRoll } from '@react-native-camera-roll/camera-roll';\nimport { Platform } from 'react-native';\nimport type * as DocumentPicker from 'react-native-document-picker';\nimport type * as FileAccess from 'react-native-file-access';\nimport type * as ImagePicker from 'react-native-image-picker';\nimport type * as Permissions from 'react-native-permissions';\nimport type { Permission } from 'react-native-permissions';\n\nimport {\n Logger,\n getFileExtension,\n getFileExtensionFromMime,\n getFileExtensionFromUri,\n getFileType,\n normalizeFileName,\n} from '@sendbird/uikit-utils';\n\nimport SBUError from '../libs/SBUError';\nimport nativePermissionGranted from '../utils/nativePermissionGranted';\nimport normalizeFile from '../utils/normalizeFile';\nimport type {\n FilePickerResponse,\n FileServiceInterface,\n OpenCameraOptions,\n OpenDocumentOptions,\n OpenMediaLibraryOptions,\n SaveOptions,\n} from './types';\n\nfunction getAndroidStoragePermissionsByAPILevel(permissionModule: typeof Permissions): Permission[] {\n if (Platform.OS !== 'android') return [];\n\n if (Platform.Version > 32) {\n return [];\n }\n\n if (Platform.Version > 28) {\n return [permissionModule.PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE];\n }\n\n return [\n permissionModule.PERMISSIONS.ANDROID.WRITE_EXTERNAL_STORAGE,\n permissionModule.PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE,\n ];\n}\n\nconst createNativeFileService = ({\n imagePickerModule,\n documentPickerModule,\n permissionModule,\n mediaLibraryModule,\n fsModule,\n}: {\n imagePickerModule: typeof ImagePicker;\n documentPickerModule: typeof DocumentPicker;\n permissionModule: typeof Permissions;\n mediaLibraryModule: typeof CameraRoll;\n fsModule: typeof FileAccess;\n}): FileServiceInterface => {\n const cameraPermissions: Permission[] = Platform.select({\n ios: [permissionModule.PERMISSIONS.IOS.CAMERA, permissionModule.PERMISSIONS.IOS.MICROPHONE],\n android: [permissionModule.PERMISSIONS.ANDROID.CAMERA],\n default: [],\n });\n const mediaLibraryPermissions: Permission[] = Platform.select({\n ios: [permissionModule.PERMISSIONS.IOS.PHOTO_LIBRARY, permissionModule.PERMISSIONS.IOS.PHOTO_LIBRARY_ADD_ONLY],\n android: getAndroidStoragePermissionsByAPILevel(permissionModule),\n default: [],\n });\n\n class NativeFileService implements FileServiceInterface {\n async hasCameraPermission(): Promise<boolean> {\n const status = await permissionModule.checkMultiple(cameraPermissions);\n return nativePermissionGranted(status);\n }\n async requestCameraPermission(): Promise<boolean> {\n const status = await permissionModule.requestMultiple(cameraPermissions);\n return nativePermissionGranted(status);\n }\n async hasMediaLibraryPermission(): Promise<boolean> {\n const status = await permissionModule.checkMultiple(mediaLibraryPermissions);\n return nativePermissionGranted(status);\n }\n async requestMediaLibraryPermission(): Promise<boolean> {\n const status = await permissionModule.requestMultiple(mediaLibraryPermissions);\n return nativePermissionGranted(status);\n }\n\n async openCamera(options?: OpenCameraOptions): Promise<FilePickerResponse> {\n const hasPermission = await this.hasCameraPermission();\n if (!hasPermission) {\n const granted = await this.requestCameraPermission();\n if (!granted) {\n options?.onOpenFailure?.(SBUError.PERMISSIONS_DENIED);\n return null;\n }\n }\n\n const response = await imagePickerModule.launchCamera({\n presentationStyle: 'fullScreen',\n cameraType: options?.cameraType ?? 'back',\n mediaType: (() => {\n switch (options?.mediaType) {\n case 'photo':\n return 'photo';\n case 'video':\n return 'video';\n case 'all':\n return 'mixed';\n default:\n return 'photo';\n }\n })(),\n });\n if (response.didCancel) return null;\n if (response.errorCode === 'camera_unavailable') {\n options?.onOpenFailure?.(SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));\n return null;\n }\n\n const { fileName: name, fileSize: size, type, uri } = response.assets?.[0] ?? {};\n return normalizeFile({ uri, size, name, type });\n }\n async openMediaLibrary(options?: OpenMediaLibraryOptions): Promise<FilePickerResponse[] | null> {\n /**\n * NOTE: options.selectionLimit {@link https://github.com/react-native-image-picker/react-native-image-picker#options}\n * We do not support 0 (any number of files)\n **/\n const selectionLimit = options?.selectionLimit || 1;\n const hasPermission = await this.hasMediaLibraryPermission();\n if (!hasPermission) {\n const granted = await this.requestMediaLibraryPermission();\n if (!granted) {\n options?.onOpenFailure?.(SBUError.PERMISSIONS_DENIED);\n return null;\n }\n }\n\n const response = await imagePickerModule.launchImageLibrary({\n presentationStyle: 'fullScreen',\n selectionLimit,\n mediaType: (() => {\n switch (options?.mediaType) {\n case 'photo':\n return 'photo';\n case 'video':\n return 'video';\n case 'all':\n return 'mixed';\n default:\n return 'photo';\n }\n })(),\n });\n if (response.didCancel) return null;\n if (response.errorCode === 'camera_unavailable') {\n options?.onOpenFailure?.(SBUError.DEVICE_UNAVAILABLE, new Error(response.errorMessage));\n return null;\n }\n\n return Promise.all(\n (response.assets || [])\n .slice(0, selectionLimit)\n .map(({ fileName: name, fileSize: size, type, uri }) => normalizeFile({ uri, size, name, type })),\n );\n }\n async openDocument(options?: OpenDocumentOptions): Promise<FilePickerResponse> {\n try {\n const { uri, size, name, type } = await documentPickerModule.pickSingle();\n return normalizeFile({ uri, size, name, type });\n } catch (e) {\n if (!documentPickerModule.isCancel(e) && documentPickerModule.isInProgress(e)) {\n options?.onOpenFailure?.(SBUError.UNKNOWN, e);\n }\n return null;\n }\n }\n async save(options: SaveOptions): Promise<string> {\n const hasPermission = await this.hasMediaLibraryPermission();\n if (!hasPermission) {\n const granted = await this.requestMediaLibraryPermission();\n if (!granted) throw new Error('Permission not granted');\n }\n\n const { downloadedPath, file } = await this.downloadFile(options);\n\n if (Platform.OS === 'ios') {\n if (file.type === 'image' || file.type === 'video') {\n const mediaTypeMap = { 'image': 'photo', 'video': 'video' } as const;\n const mediaType = mediaTypeMap[file.type];\n await mediaLibraryModule.save(downloadedPath, { type: mediaType });\n }\n }\n\n if (Platform.OS === 'android') {\n const externalDirMap = { 'file': 'downloads', 'audio': 'audio', 'image': 'images', 'video': 'video' } as const;\n const externalDir = externalDirMap[file.type];\n await fsModule.FileSystem.cpExternal(downloadedPath, file.name, externalDir).catch(() => {\n Logger.error('Failed to save file to external storage. Retry saving to downloads directory instead.');\n return fsModule.FileSystem.cpExternal(downloadedPath, file.name, 'downloads');\n });\n }\n\n return downloadedPath;\n }\n\n private buildDownloadPath = async (options: SaveOptions) => {\n const dirname = Platform.select({ android: fsModule.Dirs.CacheDir, default: fsModule.Dirs.DocumentDir });\n const context = { dirname, filename: options.fileName };\n const extension =\n getFileExtension(options.fileName) ||\n getFileExtensionFromMime(options.fileType) ||\n getFileExtension(options.fileUrl) ||\n (await getFileExtensionFromUri(options.fileUrl));\n\n if (extension) context.filename = normalizeFileName(context.filename, extension);\n\n return { path: `${context.dirname}/${context.filename}`, ...context };\n };\n\n private downloadFile = async (options: SaveOptions) => {\n const { path, filename } = await this.buildDownloadPath(options);\n await fsModule.FileSystem.fetch(options.fileUrl, { path });\n return {\n downloadedPath: path,\n file: {\n name: filename,\n type: getFileType(getFileExtension(path)),\n } as const,\n };\n };\n\n createRecordFilePath(customExtension = 'm4a'): { recordFilePath: string; uri: string } {\n const filename = `record-${Date.now()}.${customExtension}`;\n const path = `${fsModule.Dirs.CacheDir}/${filename}`;\n return Platform.select({\n ios: {\n uri: path,\n recordFilePath: filename,\n },\n android: {\n uri: path.startsWith('file://') ? path : 'file://' + path,\n recordFilePath: path,\n },\n default: {\n uri: path,\n recordFilePath: path,\n },\n });\n }\n }\n\n return new NativeFileService();\n};\n\nexport default createNativeFileService;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,23 +1,21 @@
|
|
|
1
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { getDownscaleSize } from '@sendbird/uikit-utils';
|
|
4
4
|
import SBUUtils from '../libs/SBUUtils';
|
|
5
5
|
import expoBackwardUtils from '../utils/expoBackwardUtils';
|
|
6
|
-
const createExpoMediaService =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} = _ref;
|
|
6
|
+
const createExpoMediaService = ({
|
|
7
|
+
avModule,
|
|
8
|
+
thumbnailModule,
|
|
9
|
+
imageManipulator,
|
|
10
|
+
fsModule
|
|
11
|
+
}) => {
|
|
13
12
|
return {
|
|
14
|
-
VideoComponent(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
} = _ref2;
|
|
13
|
+
VideoComponent({
|
|
14
|
+
source,
|
|
15
|
+
resizeMode,
|
|
16
|
+
onLoad,
|
|
17
|
+
...props
|
|
18
|
+
}) {
|
|
21
19
|
// FIXME: type error https://github.com/expo/expo/issues/17101
|
|
22
20
|
// @ts-ignore
|
|
23
21
|
return /*#__PURE__*/React.createElement(avModule.Video, _extends({}, props, {
|
|
@@ -27,12 +25,11 @@ const createExpoMediaService = _ref => {
|
|
|
27
25
|
useNativeControls: true
|
|
28
26
|
}));
|
|
29
27
|
},
|
|
30
|
-
async getVideoThumbnail(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} = _ref3;
|
|
28
|
+
async getVideoThumbnail({
|
|
29
|
+
url,
|
|
30
|
+
quality,
|
|
31
|
+
timeMills
|
|
32
|
+
}) {
|
|
36
33
|
try {
|
|
37
34
|
const {
|
|
38
35
|
uri
|
|
@@ -47,13 +44,12 @@ const createExpoMediaService = _ref => {
|
|
|
47
44
|
return null;
|
|
48
45
|
}
|
|
49
46
|
},
|
|
50
|
-
async compressImage(
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
} = _ref4;
|
|
47
|
+
async compressImage({
|
|
48
|
+
maxWidth,
|
|
49
|
+
maxHeight,
|
|
50
|
+
compressionRate = 1,
|
|
51
|
+
uri
|
|
52
|
+
}) {
|
|
57
53
|
const originSize = await SBUUtils.getImageSize(uri);
|
|
58
54
|
const resizingSize = getDownscaleSize(originSize, {
|
|
59
55
|
width: maxWidth,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","getDownscaleSize","SBUUtils","expoBackwardUtils","createExpoMediaService","
|
|
1
|
+
{"version":3,"names":["React","getDownscaleSize","SBUUtils","expoBackwardUtils","createExpoMediaService","avModule","thumbnailModule","imageManipulator","fsModule","VideoComponent","source","resizeMode","onLoad","props","createElement","Video","_extends","useNativeControls","getVideoThumbnail","url","quality","timeMills","uri","getThumbnailAsync","time","path","compressImage","maxWidth","maxHeight","compressionRate","originSize","getImageSize","resizingSize","width","height","compressedURI","manipulateAsync","resize","compress","Math","min","max","fileInfo","getInfoAsync","size","toFileSize"],"sources":["createMediaService.expo.tsx"],"sourcesContent":["import type * as ExpoAV from 'expo-av';\nimport type * as ExpoFS from 'expo-file-system';\nimport type * as ExpoImageManipulator from 'expo-image-manipulator';\nimport type * as ExpoVideoThumbnail from 'expo-video-thumbnails';\nimport React from 'react';\n\nimport { getDownscaleSize } from '@sendbird/uikit-utils';\n\nimport SBUUtils from '../libs/SBUUtils';\nimport expoBackwardUtils from '../utils/expoBackwardUtils';\nimport type { MediaServiceInterface } from './types';\n\ntype Modules = {\n avModule: typeof ExpoAV;\n thumbnailModule: typeof ExpoVideoThumbnail;\n imageManipulator: typeof ExpoImageManipulator;\n fsModule: typeof ExpoFS;\n};\n\nconst createExpoMediaService = ({\n avModule,\n thumbnailModule,\n imageManipulator,\n fsModule,\n}: Modules): MediaServiceInterface => {\n return {\n VideoComponent({ source, resizeMode, onLoad, ...props }) {\n // FIXME: type error https://github.com/expo/expo/issues/17101\n // @ts-ignore\n return <avModule.Video {...props} source={source} resizeMode={resizeMode} onLoad={onLoad} useNativeControls />;\n },\n async getVideoThumbnail({ url, quality, timeMills }) {\n try {\n const { uri } = await thumbnailModule.getThumbnailAsync(url, { quality, time: timeMills });\n return { path: uri };\n } catch {\n return null;\n }\n },\n async compressImage({ maxWidth, maxHeight, compressionRate = 1, uri }) {\n const originSize = await SBUUtils.getImageSize(uri);\n const resizingSize = getDownscaleSize(originSize, { width: maxWidth, height: maxHeight });\n\n const { uri: compressedURI } = await imageManipulator.manipulateAsync(uri, [{ resize: resizingSize }], {\n compress: Math.min(Math.max(0, compressionRate), 1),\n });\n const fileInfo = await fsModule.getInfoAsync(uri);\n\n return { uri: compressedURI, size: expoBackwardUtils.toFileSize(fileInfo) };\n },\n };\n};\n\nexport default createExpoMediaService;\n"],"mappings":";AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,uBAAuB;AAExD,OAAOC,QAAQ,MAAM,kBAAkB;AACvC,OAAOC,iBAAiB,MAAM,4BAA4B;AAU1D,MAAMC,sBAAsB,GAAGA,CAAC;EAC9BC,QAAQ;EACRC,eAAe;EACfC,gBAAgB;EAChBC;AACO,CAAC,KAA4B;EACpC,OAAO;IACLC,cAAcA,CAAC;MAAEC,MAAM;MAAEC,UAAU;MAAEC,MAAM;MAAE,GAAGC;IAAM,CAAC,EAAE;MACvD;MACA;MACA,oBAAOb,KAAA,CAAAc,aAAA,CAACT,QAAQ,CAACU,KAAK,EAAAC,QAAA,KAAKH,KAAK;QAAEH,MAAM,EAAEA,MAAO;QAACC,UAAU,EAAEA,UAAW;QAACC,MAAM,EAAEA,MAAO;QAACK,iBAAiB;MAAA,EAAE,CAAC;IAChH,CAAC;IACD,MAAMC,iBAAiBA,CAAC;MAAEC,GAAG;MAAEC,OAAO;MAAEC;IAAU,CAAC,EAAE;MACnD,IAAI;QACF,MAAM;UAAEC;QAAI,CAAC,GAAG,MAAMhB,eAAe,CAACiB,iBAAiB,CAACJ,GAAG,EAAE;UAAEC,OAAO;UAAEI,IAAI,EAAEH;QAAU,CAAC,CAAC;QAC1F,OAAO;UAAEI,IAAI,EAAEH;QAAI,CAAC;MACtB,CAAC,CAAC,MAAM;QACN,OAAO,IAAI;MACb;IACF,CAAC;IACD,MAAMI,aAAaA,CAAC;MAAEC,QAAQ;MAAEC,SAAS;MAAEC,eAAe,GAAG,CAAC;MAAEP;IAAI,CAAC,EAAE;MACrE,MAAMQ,UAAU,GAAG,MAAM5B,QAAQ,CAAC6B,YAAY,CAACT,GAAG,CAAC;MACnD,MAAMU,YAAY,GAAG/B,gBAAgB,CAAC6B,UAAU,EAAE;QAAEG,KAAK,EAAEN,QAAQ;QAAEO,MAAM,EAAEN;MAAU,CAAC,CAAC;MAEzF,MAAM;QAAEN,GAAG,EAAEa;MAAc,CAAC,GAAG,MAAM5B,gBAAgB,CAAC6B,eAAe,CAACd,GAAG,EAAE,CAAC;QAAEe,MAAM,EAAEL;MAAa,CAAC,CAAC,EAAE;QACrGM,QAAQ,EAAEC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEZ,eAAe,CAAC,EAAE,CAAC;MACpD,CAAC,CAAC;MACF,MAAMa,QAAQ,GAAG,MAAMlC,QAAQ,CAACmC,YAAY,CAACrB,GAAG,CAAC;MAEjD,OAAO;QAAEA,GAAG,EAAEa,aAAa;QAAES,IAAI,EAAEzC,iBAAiB,CAAC0C,UAAU,CAACH,QAAQ;MAAE,CAAC;IAC7E;EACF,CAAC;AACH,CAAC;AAED,eAAetC,sBAAsB","ignoreList":[]}
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { getDownscaleSize, getFileExtension, hash } from '@sendbird/uikit-utils';
|
|
4
4
|
import SBUUtils from '../libs/SBUUtils';
|
|
5
|
-
const createNativeMediaService =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
} = _ref;
|
|
5
|
+
const createNativeMediaService = ({
|
|
6
|
+
VideoComponent,
|
|
7
|
+
thumbnailModule,
|
|
8
|
+
imageResizerModule
|
|
9
|
+
}) => {
|
|
11
10
|
return {
|
|
12
|
-
VideoComponent(
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = _ref2;
|
|
11
|
+
VideoComponent({
|
|
12
|
+
source,
|
|
13
|
+
resizeMode,
|
|
14
|
+
onLoad,
|
|
15
|
+
...props
|
|
16
|
+
}) {
|
|
19
17
|
return /*#__PURE__*/React.createElement(VideoComponent, _extends({}, props, {
|
|
20
18
|
source: source,
|
|
21
19
|
resizeMode: resizeMode,
|
|
@@ -23,11 +21,10 @@ const createNativeMediaService = _ref => {
|
|
|
23
21
|
controls: true
|
|
24
22
|
}));
|
|
25
23
|
},
|
|
26
|
-
async getVideoThumbnail(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
} = _ref3;
|
|
24
|
+
async getVideoThumbnail({
|
|
25
|
+
url,
|
|
26
|
+
timeMills
|
|
27
|
+
}) {
|
|
31
28
|
try {
|
|
32
29
|
const {
|
|
33
30
|
path
|
|
@@ -44,13 +41,12 @@ const createNativeMediaService = _ref => {
|
|
|
44
41
|
return null;
|
|
45
42
|
}
|
|
46
43
|
},
|
|
47
|
-
async compressImage(
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
} = _ref4;
|
|
44
|
+
async compressImage({
|
|
45
|
+
uri,
|
|
46
|
+
maxWidth,
|
|
47
|
+
maxHeight,
|
|
48
|
+
compressionRate = 1
|
|
49
|
+
}) {
|
|
54
50
|
const originSize = await SBUUtils.getImageSize(uri);
|
|
55
51
|
const {
|
|
56
52
|
width,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","getDownscaleSize","getFileExtension","hash","SBUUtils","createNativeMediaService","
|
|
1
|
+
{"version":3,"names":["React","getDownscaleSize","getFileExtension","hash","SBUUtils","createNativeMediaService","VideoComponent","thumbnailModule","imageResizerModule","source","resizeMode","onLoad","props","createElement","_extends","controls","getVideoThumbnail","url","timeMills","path","createThumbnail","format","timeStamp","cacheName","split","compressImage","uri","maxWidth","maxHeight","compressionRate","originSize","getImageSize","width","height","extension","size","resizedSize","compressedURI","default","createResizedImage","Math","min","max"],"sources":["createMediaService.native.tsx"],"sourcesContent":["import type * as RNImageResizer from '@bam.tech/react-native-image-resizer';\nimport React from 'react';\nimport type * as RNCreateThumbnail from 'react-native-create-thumbnail';\nimport type RNVideo from 'react-native-video';\n\nimport { getDownscaleSize, getFileExtension, hash } from '@sendbird/uikit-utils';\n\nimport SBUUtils from '../libs/SBUUtils';\nimport type { MediaServiceInterface } from './types';\n\ntype Modules = {\n VideoComponent: typeof RNVideo;\n thumbnailModule: typeof RNCreateThumbnail;\n imageResizerModule: typeof RNImageResizer;\n};\n\nconst createNativeMediaService = ({\n VideoComponent,\n thumbnailModule,\n imageResizerModule,\n}: Modules): MediaServiceInterface => {\n return {\n VideoComponent({ source, resizeMode, onLoad, ...props }) {\n return (\n <VideoComponent\n {...props}\n source={source as { uri: string }}\n resizeMode={resizeMode}\n onLoad={onLoad}\n controls\n />\n );\n },\n async getVideoThumbnail({ url, timeMills }) {\n try {\n const { path } = await thumbnailModule.createThumbnail({\n url,\n format: 'jpeg',\n timeStamp: timeMills,\n cacheName: hash(url.split('?')[0]),\n });\n return { path };\n } catch {\n return null;\n }\n },\n async compressImage({ uri, maxWidth, maxHeight, compressionRate = 1 }) {\n const originSize = await SBUUtils.getImageSize(uri);\n const { width, height } = getDownscaleSize(originSize, { width: maxWidth, height: maxHeight });\n const extension = (() => {\n return { 'png': 'PNG', 'jpeg': 'JPEG', 'jpg': 'JPEG' }[getFileExtension(uri)] ?? 'JPEG';\n })() as 'PNG' | 'JPEG';\n\n const { size: resizedSize, uri: compressedURI } = await imageResizerModule.default.createResizedImage(\n uri,\n width,\n height,\n extension,\n Math.min(Math.max(0, compressionRate), 1) * 100,\n );\n\n return { uri: compressedURI, size: resizedSize };\n },\n };\n};\n\nexport default createNativeMediaService;\n"],"mappings":";AACA,OAAOA,KAAK,MAAM,OAAO;AAIzB,SAASC,gBAAgB,EAAEC,gBAAgB,EAAEC,IAAI,QAAQ,uBAAuB;AAEhF,OAAOC,QAAQ,MAAM,kBAAkB;AASvC,MAAMC,wBAAwB,GAAGA,CAAC;EAChCC,cAAc;EACdC,eAAe;EACfC;AACO,CAAC,KAA4B;EACpC,OAAO;IACLF,cAAcA,CAAC;MAAEG,MAAM;MAAEC,UAAU;MAAEC,MAAM;MAAE,GAAGC;IAAM,CAAC,EAAE;MACvD,oBACEZ,KAAA,CAAAa,aAAA,CAACP,cAAc,EAAAQ,QAAA,KACTF,KAAK;QACTH,MAAM,EAAEA,MAA0B;QAClCC,UAAU,EAAEA,UAAW;QACvBC,MAAM,EAAEA,MAAO;QACfI,QAAQ;MAAA,EACT,CAAC;IAEN,CAAC;IACD,MAAMC,iBAAiBA,CAAC;MAAEC,GAAG;MAAEC;IAAU,CAAC,EAAE;MAC1C,IAAI;QACF,MAAM;UAAEC;QAAK,CAAC,GAAG,MAAMZ,eAAe,CAACa,eAAe,CAAC;UACrDH,GAAG;UACHI,MAAM,EAAE,MAAM;UACdC,SAAS,EAAEJ,SAAS;UACpBK,SAAS,EAAEpB,IAAI,CAACc,GAAG,CAACO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,OAAO;UAAEL;QAAK,CAAC;MACjB,CAAC,CAAC,MAAM;QACN,OAAO,IAAI;MACb;IACF,CAAC;IACD,MAAMM,aAAaA,CAAC;MAAEC,GAAG;MAAEC,QAAQ;MAAEC,SAAS;MAAEC,eAAe,GAAG;IAAE,CAAC,EAAE;MACrE,MAAMC,UAAU,GAAG,MAAM1B,QAAQ,CAAC2B,YAAY,CAACL,GAAG,CAAC;MACnD,MAAM;QAAEM,KAAK;QAAEC;MAAO,CAAC,GAAGhC,gBAAgB,CAAC6B,UAAU,EAAE;QAAEE,KAAK,EAAEL,QAAQ;QAAEM,MAAM,EAAEL;MAAU,CAAC,CAAC;MAC9F,MAAMM,SAAS,GAAG,CAAC,MAAM;QACvB,OAAO;UAAE,KAAK,EAAE,KAAK;UAAE,MAAM,EAAE,MAAM;UAAE,KAAK,EAAE;QAAO,CAAC,CAAChC,gBAAgB,CAACwB,GAAG,CAAC,CAAC,IAAI,MAAM;MACzF,CAAC,EAAE,CAAmB;MAEtB,MAAM;QAAES,IAAI,EAAEC,WAAW;QAAEV,GAAG,EAAEW;MAAc,CAAC,GAAG,MAAM7B,kBAAkB,CAAC8B,OAAO,CAACC,kBAAkB,CACnGb,GAAG,EACHM,KAAK,EACLC,MAAM,EACNC,SAAS,EACTM,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEb,eAAe,CAAC,EAAE,CAAC,CAAC,GAAG,GAC9C,CAAC;MAED,OAAO;QAAEH,GAAG,EAAEW,aAAa;QAAEF,IAAI,EAAEC;MAAY,CAAC;IAClD;EACF,CAAC;AACH,CAAC;AAED,eAAe/B,wBAAwB","ignoreList":[]}
|
|
@@ -20,12 +20,9 @@ const createExpoNotificationService = messagingModule => {
|
|
|
20
20
|
return Boolean(status.granted || ((_status$ios2 = status.ios) === null || _status$ios2 === void 0 ? void 0 : _status$ios2.status) && authorizedStatus.includes(status.ios.status));
|
|
21
21
|
},
|
|
22
22
|
onTokenRefresh(handler) {
|
|
23
|
-
const subscription = messagingModule.addPushTokenListener(
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
} = _ref;
|
|
27
|
-
return handler(data);
|
|
28
|
-
});
|
|
23
|
+
const subscription = messagingModule.addPushTokenListener(({
|
|
24
|
+
data
|
|
25
|
+
}) => handler(data));
|
|
29
26
|
return () => messagingModule.removePushTokenSubscription(subscription);
|
|
30
27
|
}
|
|
31
28
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createExpoNotificationService","messagingModule","authorizedStatus","IosAuthorizationStatus","AUTHORIZED","PROVISIONAL","getAPNSToken","response","getDevicePushTokenAsync","data","getFCMToken","hasPushPermission","_status$ios","status","getPermissionsAsync","Boolean","granted","ios","includes","requestPushPermission","_status$ios2","requestPermissionsAsync","onTokenRefresh","handler","subscription","addPushTokenListener","
|
|
1
|
+
{"version":3,"names":["createExpoNotificationService","messagingModule","authorizedStatus","IosAuthorizationStatus","AUTHORIZED","PROVISIONAL","getAPNSToken","response","getDevicePushTokenAsync","data","getFCMToken","hasPushPermission","_status$ios","status","getPermissionsAsync","Boolean","granted","ios","includes","requestPushPermission","_status$ios2","requestPermissionsAsync","onTokenRefresh","handler","subscription","addPushTokenListener","removePushTokenSubscription"],"sources":["createNotificationService.expo.ts"],"sourcesContent":["import type * as ExpoNotification from 'expo-notifications';\n\nimport type { ExpoPushPermissionResponse } from '../utils/expoPermissionGranted';\nimport type { NotificationServiceInterface } from './types';\n\nconst createExpoNotificationService = (messagingModule: typeof ExpoNotification): NotificationServiceInterface => {\n const authorizedStatus = [\n messagingModule.IosAuthorizationStatus.AUTHORIZED,\n messagingModule.IosAuthorizationStatus.PROVISIONAL,\n ];\n\n return {\n async getAPNSToken(): Promise<string | null> {\n const response = await messagingModule.getDevicePushTokenAsync();\n return response.data;\n },\n async getFCMToken(): Promise<string | null> {\n const response = await messagingModule.getDevicePushTokenAsync();\n return response.data;\n },\n async hasPushPermission(): Promise<boolean> {\n const status = (await messagingModule.getPermissionsAsync()) as ExpoPushPermissionResponse;\n return Boolean(status.granted || (status.ios?.status && authorizedStatus.includes(status.ios.status)));\n },\n async requestPushPermission(): Promise<boolean> {\n const status = (await messagingModule.requestPermissionsAsync()) as ExpoPushPermissionResponse;\n return Boolean(status.granted || (status.ios?.status && authorizedStatus.includes(status.ios.status)));\n },\n onTokenRefresh(handler: (token: string) => void): () => void | undefined {\n const subscription = messagingModule.addPushTokenListener(({ data }) => handler(data));\n return () => messagingModule.removePushTokenSubscription(subscription);\n },\n };\n};\n\nexport default createExpoNotificationService;\n"],"mappings":"AAKA,MAAMA,6BAA6B,GAAIC,eAAwC,IAAmC;EAChH,MAAMC,gBAAgB,GAAG,CACvBD,eAAe,CAACE,sBAAsB,CAACC,UAAU,EACjDH,eAAe,CAACE,sBAAsB,CAACE,WAAW,CACnD;EAED,OAAO;IACL,MAAMC,YAAYA,CAAA,EAA2B;MAC3C,MAAMC,QAAQ,GAAG,MAAMN,eAAe,CAACO,uBAAuB,CAAC,CAAC;MAChE,OAAOD,QAAQ,CAACE,IAAI;IACtB,CAAC;IACD,MAAMC,WAAWA,CAAA,EAA2B;MAC1C,MAAMH,QAAQ,GAAG,MAAMN,eAAe,CAACO,uBAAuB,CAAC,CAAC;MAChE,OAAOD,QAAQ,CAACE,IAAI;IACtB,CAAC;IACD,MAAME,iBAAiBA,CAAA,EAAqB;MAAA,IAAAC,WAAA;MAC1C,MAAMC,MAAM,GAAI,MAAMZ,eAAe,CAACa,mBAAmB,CAAC,CAAgC;MAC1F,OAAOC,OAAO,CAACF,MAAM,CAACG,OAAO,IAAK,EAAAJ,WAAA,GAAAC,MAAM,CAACI,GAAG,cAAAL,WAAA,uBAAVA,WAAA,CAAYC,MAAM,KAAIX,gBAAgB,CAACgB,QAAQ,CAACL,MAAM,CAACI,GAAG,CAACJ,MAAM,CAAE,CAAC;IACxG,CAAC;IACD,MAAMM,qBAAqBA,CAAA,EAAqB;MAAA,IAAAC,YAAA;MAC9C,MAAMP,MAAM,GAAI,MAAMZ,eAAe,CAACoB,uBAAuB,CAAC,CAAgC;MAC9F,OAAON,OAAO,CAACF,MAAM,CAACG,OAAO,IAAK,EAAAI,YAAA,GAAAP,MAAM,CAACI,GAAG,cAAAG,YAAA,uBAAVA,YAAA,CAAYP,MAAM,KAAIX,gBAAgB,CAACgB,QAAQ,CAACL,MAAM,CAACI,GAAG,CAACJ,MAAM,CAAE,CAAC;IACxG,CAAC;IACDS,cAAcA,CAACC,OAAgC,EAA0B;MACvE,MAAMC,YAAY,GAAGvB,eAAe,CAACwB,oBAAoB,CAAC,CAAC;QAAEhB;MAAK,CAAC,KAAKc,OAAO,CAACd,IAAI,CAAC,CAAC;MACtF,OAAO,MAAMR,eAAe,CAACyB,2BAA2B,CAACF,YAAY,CAAC;IACxE;EACF,CAAC;AACH,CAAC;AAED,eAAexB,6BAA6B","ignoreList":[]}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { Platform } from 'react-native';
|
|
2
|
-
const createNativeNotificationService =
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
} = _ref;
|
|
2
|
+
const createNativeNotificationService = ({
|
|
3
|
+
messagingModule,
|
|
4
|
+
permissionModule
|
|
5
|
+
}) => {
|
|
7
6
|
const module = messagingModule();
|
|
8
7
|
const authorizedStatus = [messagingModule.AuthorizationStatus.AUTHORIZED, messagingModule.AuthorizationStatus.PROVISIONAL];
|
|
9
8
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","createNativeNotificationService","
|
|
1
|
+
{"version":3,"names":["Platform","createNativeNotificationService","messagingModule","permissionModule","module","authorizedStatus","AuthorizationStatus","AUTHORIZED","PROVISIONAL","getAPNSToken","getFCMToken","getToken","hasPushPermission","OS","result","checkNotifications","status","hasPermission","includes","requestPushPermission","requestNotifications","requestPermission","onTokenRefresh","handler","token"],"sources":["createNotificationService.native.ts"],"sourcesContent":["import type RNFBMessaging from '@react-native-firebase/messaging';\nimport { Platform } from 'react-native';\nimport type * as Permissions from 'react-native-permissions';\n\nimport type { NotificationServiceInterface } from './types';\n\nconst createNativeNotificationService = ({\n messagingModule,\n permissionModule,\n}: {\n messagingModule: typeof RNFBMessaging;\n permissionModule: typeof Permissions;\n}): NotificationServiceInterface => {\n const module = messagingModule();\n const authorizedStatus = [\n messagingModule.AuthorizationStatus.AUTHORIZED,\n messagingModule.AuthorizationStatus.PROVISIONAL,\n ];\n return {\n getAPNSToken(): Promise<string | null> {\n return module.getAPNSToken();\n },\n getFCMToken(): Promise<string | null> {\n return module.getToken();\n },\n async hasPushPermission(): Promise<boolean> {\n if (Platform.OS === 'android') {\n const result = await permissionModule.checkNotifications();\n return result.status === 'granted';\n }\n\n if (Platform.OS === 'ios') {\n const status = await module.hasPermission();\n return authorizedStatus.includes(status);\n }\n\n return false;\n },\n async requestPushPermission(): Promise<boolean> {\n if (Platform.OS === 'android') {\n const result = await permissionModule.requestNotifications([]);\n return result.status === 'granted';\n }\n\n if (Platform.OS === 'ios') {\n const status = await module.requestPermission();\n return authorizedStatus.includes(status);\n }\n\n return false;\n },\n onTokenRefresh(handler: (token: string) => void): () => void | undefined {\n return module.onTokenRefresh((token) => {\n if (Platform.OS === 'android') handler(token);\n });\n },\n };\n};\n\nexport default createNativeNotificationService;\n"],"mappings":"AACA,SAASA,QAAQ,QAAQ,cAAc;AAKvC,MAAMC,+BAA+B,GAAGA,CAAC;EACvCC,eAAe;EACfC;AAIF,CAAC,KAAmC;EAClC,MAAMC,MAAM,GAAGF,eAAe,CAAC,CAAC;EAChC,MAAMG,gBAAgB,GAAG,CACvBH,eAAe,CAACI,mBAAmB,CAACC,UAAU,EAC9CL,eAAe,CAACI,mBAAmB,CAACE,WAAW,CAChD;EACD,OAAO;IACLC,YAAYA,CAAA,EAA2B;MACrC,OAAOL,MAAM,CAACK,YAAY,CAAC,CAAC;IAC9B,CAAC;IACDC,WAAWA,CAAA,EAA2B;MACpC,OAAON,MAAM,CAACO,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,MAAMC,iBAAiBA,CAAA,EAAqB;MAC1C,IAAIZ,QAAQ,CAACa,EAAE,KAAK,SAAS,EAAE;QAC7B,MAAMC,MAAM,GAAG,MAAMX,gBAAgB,CAACY,kBAAkB,CAAC,CAAC;QAC1D,OAAOD,MAAM,CAACE,MAAM,KAAK,SAAS;MACpC;MAEA,IAAIhB,QAAQ,CAACa,EAAE,KAAK,KAAK,EAAE;QACzB,MAAMG,MAAM,GAAG,MAAMZ,MAAM,CAACa,aAAa,CAAC,CAAC;QAC3C,OAAOZ,gBAAgB,CAACa,QAAQ,CAACF,MAAM,CAAC;MAC1C;MAEA,OAAO,KAAK;IACd,CAAC;IACD,MAAMG,qBAAqBA,CAAA,EAAqB;MAC9C,IAAInB,QAAQ,CAACa,EAAE,KAAK,SAAS,EAAE;QAC7B,MAAMC,MAAM,GAAG,MAAMX,gBAAgB,CAACiB,oBAAoB,CAAC,EAAE,CAAC;QAC9D,OAAON,MAAM,CAACE,MAAM,KAAK,SAAS;MACpC;MAEA,IAAIhB,QAAQ,CAACa,EAAE,KAAK,KAAK,EAAE;QACzB,MAAMG,MAAM,GAAG,MAAMZ,MAAM,CAACiB,iBAAiB,CAAC,CAAC;QAC/C,OAAOhB,gBAAgB,CAACa,QAAQ,CAACF,MAAM,CAAC;MAC1C;MAEA,OAAO,KAAK;IACd,CAAC;IACDM,cAAcA,CAACC,OAAgC,EAA0B;MACvE,OAAOnB,MAAM,CAACkB,cAAc,CAAEE,KAAK,IAAK;QACtC,IAAIxB,QAAQ,CAACa,EAAE,KAAK,SAAS,EAAEU,OAAO,CAACC,KAAK,CAAC;MAC/C,CAAC,CAAC;IACJ;EACF,CAAC;AACH,CAAC;AAED,eAAevB,+BAA+B","ignoreList":[]}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
function _defineProperty(
|
|
2
|
-
function _toPropertyKey(
|
|
3
|
-
function _toPrimitive(
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
4
|
import { Logger, matchesOneOf } from '@sendbird/uikit-utils';
|
|
5
5
|
import expoPermissionGranted from '../utils/expoPermissionGranted';
|
|
6
|
-
const createExpoPlayerService =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
} = _ref;
|
|
6
|
+
const createExpoPlayerService = ({
|
|
7
|
+
avModule
|
|
8
|
+
}) => {
|
|
10
9
|
const sound = new avModule.Audio.Sound();
|
|
11
10
|
class VoicePlayer {
|
|
12
11
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Logger","matchesOneOf","expoPermissionGranted","createExpoPlayerService","
|
|
1
|
+
{"version":3,"names":["Logger","matchesOneOf","expoPermissionGranted","createExpoPlayerService","avModule","sound","Audio","Sound","VoicePlayer","constructor","_defineProperty","Set","state","stateSubscribers","forEach","callback","setProgressUpdateIntervalAsync","catch","error","warn","setOnPlaybackStatusUpdate","status","isLoaded","didJustFinish","stop","isPlaying","playbackSubscribers","currentTime","positionMillis","duration","durationMillis","stopped","getPermissionsAsync","requestPermissionsAsync","add","delete","uri","setState","loadAsync","shouldPlay","prepare","setListener","playAsync","e","undefined","removeListener","pauseAsync","stopAsync","unloadAsync","clear","time","playFromPositionAsync"],"sources":["createPlayerService.expo.tsx"],"sourcesContent":["import type * as ExpoAV from 'expo-av';\n\nimport { Logger, matchesOneOf } from '@sendbird/uikit-utils';\n\nimport expoPermissionGranted from '../utils/expoPermissionGranted';\nimport type { PlayerServiceInterface, Unsubscribe } from './types';\n\ntype Modules = {\n avModule: typeof ExpoAV;\n};\ntype PlaybackListener = Parameters<PlayerServiceInterface['addPlaybackListener']>[number];\ntype StateListener = Parameters<PlayerServiceInterface['addStateListener']>[number];\nconst createExpoPlayerService = ({ avModule }: Modules): PlayerServiceInterface => {\n const sound = new avModule.Audio.Sound();\n\n class VoicePlayer implements PlayerServiceInterface {\n uri?: string;\n state: PlayerServiceInterface['state'] = 'idle';\n\n private readonly playbackSubscribers = new Set<PlaybackListener>();\n private readonly stateSubscribers = new Set<StateListener>();\n\n private setState = (state: PlayerServiceInterface['state']) => {\n this.state = state;\n this.stateSubscribers.forEach((callback) => {\n callback(state);\n });\n };\n\n private setListener = () => {\n sound.setProgressUpdateIntervalAsync(100).catch((error) => {\n Logger.warn('[PlayerService.Expo] Failed to set progress update interval', error);\n });\n sound.setOnPlaybackStatusUpdate((status) => {\n if (status.isLoaded) {\n if (status.didJustFinish) {\n this.stop().catch((error) => {\n Logger.warn('[PlayerService.Expo] Failed to stop in OnPlaybackStatusUpdate', error);\n });\n }\n if (status.isPlaying) {\n this.playbackSubscribers.forEach((callback) => {\n callback({\n currentTime: status.positionMillis,\n duration: status.durationMillis ?? 0,\n stopped: status.didJustFinish,\n });\n });\n }\n }\n });\n };\n\n private removeListener = () => {\n sound.setOnPlaybackStatusUpdate(null);\n };\n\n public requestPermission = async (): Promise<boolean> => {\n const status = await avModule.Audio.getPermissionsAsync();\n if (expoPermissionGranted([status])) {\n return true;\n } else {\n const status = await avModule.Audio.requestPermissionsAsync();\n return expoPermissionGranted([status]);\n }\n };\n\n public addPlaybackListener = (callback: PlaybackListener): Unsubscribe => {\n this.playbackSubscribers.add(callback);\n return () => {\n this.playbackSubscribers.delete(callback);\n };\n };\n\n public addStateListener = (callback: (state: PlayerServiceInterface['state']) => void): Unsubscribe => {\n this.stateSubscribers.add(callback);\n return () => {\n this.stateSubscribers.delete(callback);\n };\n };\n\n private prepare = async (uri: string) => {\n this.setState('preparing');\n await sound.loadAsync({ uri }, { shouldPlay: false }, true);\n this.uri = uri;\n };\n\n public play = async (uri: string): Promise<void> => {\n if (matchesOneOf(this.state, ['idle', 'stopped'])) {\n try {\n await this.prepare(uri);\n this.setListener();\n await sound.playAsync();\n this.setState('playing');\n } catch (e) {\n this.setState('idle');\n this.uri = undefined;\n this.removeListener();\n throw e;\n }\n } else if (matchesOneOf(this.state, ['paused']) && this.uri === uri) {\n try {\n this.setListener();\n await sound.playAsync();\n this.setState('playing');\n } catch (e) {\n this.removeListener();\n throw e;\n }\n }\n };\n\n public pause = async (): Promise<void> => {\n if (matchesOneOf(this.state, ['playing'])) {\n await sound.pauseAsync();\n this.removeListener();\n this.setState('paused');\n }\n };\n\n public stop = async (): Promise<void> => {\n if (matchesOneOf(this.state, ['playing', 'paused'])) {\n await sound.stopAsync();\n await sound.unloadAsync();\n this.removeListener();\n this.setState('stopped');\n }\n };\n\n public reset = async (): Promise<void> => {\n await this.stop();\n this.setState('idle');\n this.uri = undefined;\n this.playbackSubscribers.clear();\n this.stateSubscribers.clear();\n };\n\n public seek = async (time: number): Promise<void> => {\n if (matchesOneOf(this.state, ['playing', 'paused'])) {\n await sound.playFromPositionAsync(time);\n }\n };\n }\n\n return new VoicePlayer();\n};\n\nexport default createExpoPlayerService;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
function _defineProperty(
|
|
2
|
-
function _toPropertyKey(
|
|
3
|
-
function _toPrimitive(
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
4
|
import { Platform } from 'react-native';
|
|
5
5
|
import { Logger, matchesOneOf, sleep } from '@sendbird/uikit-utils';
|
|
6
|
-
const createNativePlayerService =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
} = _ref;
|
|
6
|
+
const createNativePlayerService = ({
|
|
7
|
+
audioRecorderModule,
|
|
8
|
+
permissionModule
|
|
9
|
+
}) => {
|
|
11
10
|
const module = new audioRecorderModule.default();
|
|
12
11
|
class VoicePlayer {
|
|
13
12
|
constructor() {
|