stream-chat-react-native-core 9.4.0-beta.11 → 9.4.0-beta.13
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/ChannelDetails/ChannelDetails.js +8 -3
- package/lib/commonjs/components/ChannelDetails/ChannelDetails.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsActionItem.js +2 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsActionItem.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js +57 -0
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js +3 -32
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavigationSection.js +64 -25
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavigationSection.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js +3 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/index.js +22 -0
- package/lib/commonjs/components/ChannelDetails/components/index.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/modal/Modal.js +22 -23
- package/lib/commonjs/components/ChannelDetails/components/modal/Modal.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js +6 -4
- package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js +65 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +174 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js +21 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js +45 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js +120 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js +206 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js +63 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js +84 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +177 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js +21 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/index.js +114 -0
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/index.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/hooks/index.js +33 -0
- package/lib/commonjs/components/ChannelDetails/hooks/index.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +55 -0
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js +52 -0
- package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/hooks/useMediaList.js +30 -0
- package/lib/commonjs/components/ChannelDetails/hooks/useMediaList.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +21 -76
- package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +6 -10
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js +16 -14
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js +67 -0
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +23 -15
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/hooks/useAnimatedGalleryStyle.js +4 -3
- package/lib/commonjs/components/ImageGallery/hooks/useAnimatedGalleryStyle.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/hooks/useCurrentImageHeight.js +53 -0
- package/lib/commonjs/components/ImageGallery/hooks/useCurrentImageHeight.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js +25 -31
- package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
- package/lib/commonjs/components/UIComponents/EmptyList.js +78 -0
- package/lib/commonjs/components/UIComponents/EmptyList.js.map +1 -0
- package/lib/commonjs/components/UIComponents/index.js +11 -0
- package/lib/commonjs/components/UIComponents/index.js.map +1 -1
- package/lib/commonjs/components/ui/Avatar/AvatarGroup.js +3 -3
- package/lib/commonjs/components/ui/Avatar/constants.js +2 -2
- package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +64 -0
- package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -0
- package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js +63 -0
- package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -0
- package/lib/commonjs/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js +73 -0
- package/lib/commonjs/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js.map +1 -0
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js +8 -0
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -1
- package/lib/commonjs/contexts/index.js +33 -0
- package/lib/commonjs/contexts/index.js.map +1 -1
- package/lib/commonjs/contexts/themeContext/utils/theme.js +57 -2
- package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/commonjs/i18n/ar.json +11 -0
- package/lib/commonjs/i18n/en.json +11 -0
- package/lib/commonjs/i18n/es.json +11 -0
- package/lib/commonjs/i18n/fr.json +11 -0
- package/lib/commonjs/i18n/he.json +11 -0
- package/lib/commonjs/i18n/hi.json +11 -0
- package/lib/commonjs/i18n/it.json +11 -0
- package/lib/commonjs/i18n/ja.json +11 -0
- package/lib/commonjs/i18n/ko.json +11 -0
- package/lib/commonjs/i18n/nl.json +11 -0
- package/lib/commonjs/i18n/pt-br.json +11 -0
- package/lib/commonjs/i18n/ru.json +11 -0
- package/lib/commonjs/i18n/tr.json +11 -0
- package/lib/commonjs/icons/folder.js +37 -0
- package/lib/commonjs/icons/folder.js.map +1 -0
- package/lib/commonjs/icons/index.js +12 -0
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/state-store/image-gallery-state-store.js +12 -3
- package/lib/commonjs/state-store/image-gallery-state-store.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/ChannelDetails/ChannelDetails.js +8 -3
- package/lib/module/components/ChannelDetails/ChannelDetails.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsActionItem.js +2 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsActionItem.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js +57 -0
- package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js +3 -32
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavigationSection.js +64 -25
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavigationSection.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js +3 -2
- package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/index.js +22 -0
- package/lib/module/components/ChannelDetails/components/index.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/modal/Modal.js +22 -23
- package/lib/module/components/ChannelDetails/components/modal/Modal.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js +6 -4
- package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js +65 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +174 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js +21 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js +45 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js +120 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js +206 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js +63 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js +84 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +177 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js +21 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/index.js +114 -0
- package/lib/module/components/ChannelDetails/components/navigation-section/index.js.map +1 -0
- package/lib/module/components/ChannelDetails/hooks/index.js +33 -0
- package/lib/module/components/ChannelDetails/hooks/index.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +55 -0
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -0
- package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js +52 -0
- package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -0
- package/lib/module/components/ChannelDetails/hooks/useMediaList.js +30 -0
- package/lib/module/components/ChannelDetails/hooks/useMediaList.js.map +1 -0
- package/lib/module/components/ImageGallery/ImageGallery.js +21 -76
- package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +6 -10
- package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js +16 -14
- package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js +67 -0
- package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -0
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +23 -15
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/ImageGallery/hooks/useAnimatedGalleryStyle.js +4 -3
- package/lib/module/components/ImageGallery/hooks/useAnimatedGalleryStyle.js.map +1 -1
- package/lib/module/components/ImageGallery/hooks/useCurrentImageHeight.js +53 -0
- package/lib/module/components/ImageGallery/hooks/useCurrentImageHeight.js.map +1 -0
- package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js +25 -31
- package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
- package/lib/module/components/UIComponents/EmptyList.js +78 -0
- package/lib/module/components/UIComponents/EmptyList.js.map +1 -0
- package/lib/module/components/UIComponents/index.js +11 -0
- package/lib/module/components/UIComponents/index.js.map +1 -1
- package/lib/module/components/ui/Avatar/AvatarGroup.js +3 -3
- package/lib/module/components/ui/Avatar/constants.js +2 -2
- package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +64 -0
- package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -0
- package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js +63 -0
- package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -0
- package/lib/module/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js +73 -0
- package/lib/module/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js.map +1 -0
- package/lib/module/contexts/componentsContext/defaultComponents.js +8 -0
- package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -1
- package/lib/module/contexts/index.js +33 -0
- package/lib/module/contexts/index.js.map +1 -1
- package/lib/module/contexts/themeContext/utils/theme.js +57 -2
- package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/module/i18n/ar.json +11 -0
- package/lib/module/i18n/en.json +11 -0
- package/lib/module/i18n/es.json +11 -0
- package/lib/module/i18n/fr.json +11 -0
- package/lib/module/i18n/he.json +11 -0
- package/lib/module/i18n/hi.json +11 -0
- package/lib/module/i18n/it.json +11 -0
- package/lib/module/i18n/ja.json +11 -0
- package/lib/module/i18n/ko.json +11 -0
- package/lib/module/i18n/nl.json +11 -0
- package/lib/module/i18n/pt-br.json +11 -0
- package/lib/module/i18n/ru.json +11 -0
- package/lib/module/i18n/tr.json +11 -0
- package/lib/module/icons/folder.js +37 -0
- package/lib/module/icons/folder.js.map +1 -0
- package/lib/module/icons/index.js +12 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/state-store/image-gallery-state-store.js +12 -3
- package/lib/module/state-store/image-gallery-state-store.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/ChannelDetails/ChannelDetails.d.ts +11 -1
- package/lib/typescript/components/ChannelDetails/ChannelDetails.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsActionItem.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsEditButton.d.ts +6 -0
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsEditButton.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts +3 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavigationSection.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/index.d.ts +3 -0
- package/lib/typescript/components/ChannelDetails/components/index.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/members/ChannelMemberItem.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/modal/Modal.d.ts +2 -1
- package/lib/typescript/components/ChannelDetails/components/modal/Modal.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/modal/ModalHeader.d.ts +3 -1
- package/lib/typescript/components/ChannelDetails/components/modal/ModalHeader.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentItem.d.ts +31 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentItem.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts +17 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.d.ts +9 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.d.ts +13 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts +35 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts +17 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.d.ts +11 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageItem.d.ts +19 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageItem.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts +19 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.d.ts +9 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/index.d.ts +11 -0
- package/lib/typescript/components/ChannelDetails/components/navigation-section/index.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/hooks/index.d.ts +3 -0
- package/lib/typescript/components/ChannelDetails/hooks/index.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts +56 -0
- package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts +28 -0
- package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/hooks/useMediaList.d.ts +20 -0
- package/lib/typescript/components/ChannelDetails/hooks/useMediaList.d.ts.map +1 -0
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts +1 -4
- package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryA11yProbe.d.ts +20 -0
- package/lib/typescript/components/ImageGallery/components/ImageGalleryA11yProbe.d.ts.map +1 -0
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/hooks/useAnimatedGalleryStyle.d.ts +2 -3
- package/lib/typescript/components/ImageGallery/hooks/useAnimatedGalleryStyle.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/hooks/useCurrentImageHeight.d.ts +24 -0
- package/lib/typescript/components/ImageGallery/hooks/useCurrentImageHeight.d.ts.map +1 -0
- package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts.map +1 -1
- package/lib/typescript/components/UIComponents/EmptyList.d.ts +24 -0
- package/lib/typescript/components/UIComponents/EmptyList.d.ts.map +1 -0
- package/lib/typescript/components/UIComponents/index.d.ts +1 -0
- package/lib/typescript/components/UIComponents/index.d.ts.map +1 -1
- package/lib/typescript/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.d.ts +21 -0
- package/lib/typescript/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.d.ts.map +1 -0
- package/lib/typescript/contexts/channelMediaListContext/ChannelMediaListContext.d.ts +21 -0
- package/lib/typescript/contexts/channelMediaListContext/ChannelMediaListContext.d.ts.map +1 -0
- package/lib/typescript/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.d.ts +21 -0
- package/lib/typescript/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.d.ts.map +1 -0
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +18 -2
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -1
- package/lib/typescript/contexts/index.d.ts +3 -0
- package/lib/typescript/contexts/index.d.ts.map +1 -1
- package/lib/typescript/contexts/themeContext/ThemeContext.d.ts +56 -1
- package/lib/typescript/contexts/themeContext/ThemeContext.d.ts.map +1 -1
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +56 -1
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts.map +1 -1
- package/lib/typescript/i18n/ar.json +11 -0
- package/lib/typescript/i18n/en.json +11 -0
- package/lib/typescript/i18n/es.json +11 -0
- package/lib/typescript/i18n/fr.json +11 -0
- package/lib/typescript/i18n/he.json +11 -0
- package/lib/typescript/i18n/hi.json +11 -0
- package/lib/typescript/i18n/it.json +11 -0
- package/lib/typescript/i18n/ja.json +11 -0
- package/lib/typescript/i18n/ko.json +11 -0
- package/lib/typescript/i18n/nl.json +11 -0
- package/lib/typescript/i18n/pt-br.json +11 -0
- package/lib/typescript/i18n/ru.json +11 -0
- package/lib/typescript/i18n/tr.json +11 -0
- package/lib/typescript/icons/folder.d.ts +4 -0
- package/lib/typescript/icons/folder.d.ts.map +1 -0
- package/lib/typescript/icons/index.d.ts +1 -0
- package/lib/typescript/icons/index.d.ts.map +1 -1
- package/lib/typescript/state-store/image-gallery-state-store.d.ts +8 -0
- package/lib/typescript/state-store/image-gallery-state-store.d.ts.map +1 -1
- package/lib/typescript/utils/i18n/Streami18n.d.ts +11 -0
- package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/ChannelDetails/ChannelDetails.tsx +17 -2
- package/src/components/ChannelDetails/__tests__/ChannelDetails.test.tsx +29 -0
- package/src/components/ChannelDetails/__tests__/ChannelDetailsEditButton.test.tsx +127 -0
- package/src/components/ChannelDetails/__tests__/ChannelDetailsNavHeader.test.tsx +21 -56
- package/src/components/ChannelDetails/__tests__/ChannelDetailsNavigationSection.test.tsx +225 -6
- package/src/components/ChannelDetails/__tests__/useFileAttachmentListSections.test.tsx +159 -0
- package/src/components/ChannelDetails/__tests__/useMediaList.test.tsx +53 -0
- package/src/components/ChannelDetails/components/ChannelDetailsActionItem.tsx +6 -1
- package/src/components/ChannelDetails/components/ChannelDetailsEditButton.tsx +50 -0
- package/src/components/ChannelDetails/components/ChannelDetailsNavHeader.tsx +6 -33
- package/src/components/ChannelDetails/components/ChannelDetailsNavigationSection.tsx +80 -32
- package/src/components/ChannelDetails/components/ChannelDetailsProfile.tsx +2 -1
- package/src/components/ChannelDetails/components/ChannelEditImageSheet.tsx +2 -2
- package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentItem.test.tsx +80 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentList.test.tsx +334 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentListSectionHeader.test.tsx +19 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaItem.test.tsx +97 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaList.test.tsx +351 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageItem.test.tsx +112 -0
- package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageList.test.tsx +324 -0
- package/src/components/ChannelDetails/components/index.ts +3 -0
- package/src/components/ChannelDetails/components/members/ChannelMemberItem.tsx +6 -1
- package/src/components/ChannelDetails/components/modal/Modal.tsx +37 -24
- package/src/components/ChannelDetails/components/modal/ModalHeader.tsx +11 -4
- package/src/components/ChannelDetails/components/navigation-section/FileAttachmentItem.tsx +92 -0
- package/src/components/ChannelDetails/components/navigation-section/FileAttachmentList.tsx +204 -0
- package/src/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.tsx +23 -0
- package/src/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.tsx +56 -0
- package/src/components/ChannelDetails/components/navigation-section/MediaItem.tsx +160 -0
- package/src/components/ChannelDetails/components/navigation-section/MediaList.tsx +244 -0
- package/src/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.tsx +66 -0
- package/src/components/ChannelDetails/components/navigation-section/PinnedMessageItem.tsx +94 -0
- package/src/components/ChannelDetails/components/navigation-section/PinnedMessageList.tsx +198 -0
- package/src/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.tsx +23 -0
- package/src/components/ChannelDetails/components/navigation-section/index.ts +10 -0
- package/src/components/ChannelDetails/hooks/index.ts +3 -0
- package/src/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.ts +108 -0
- package/src/components/ChannelDetails/hooks/useFileAttachmentListSections.ts +79 -0
- package/src/components/ChannelDetails/hooks/useMediaList.ts +51 -0
- package/src/components/ImageGallery/ImageGallery.tsx +41 -120
- package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +4 -1
- package/src/components/ImageGallery/__tests__/ImageGalleryAdjustable.test.tsx +5 -4
- package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +9 -11
- package/src/components/ImageGallery/components/AnimatedGalleryVideo.tsx +28 -15
- package/src/components/ImageGallery/components/ImageGalleryA11yProbe.tsx +82 -0
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +21 -18
- package/src/components/ImageGallery/hooks/useAnimatedGalleryStyle.tsx +5 -5
- package/src/components/ImageGallery/hooks/useCurrentImageHeight.ts +86 -0
- package/src/components/ImageGallery/hooks/useImageGalleryGestures.tsx +42 -51
- package/src/components/UIComponents/EmptyList.tsx +80 -0
- package/src/components/UIComponents/__tests__/EmptyList.test.tsx +90 -0
- package/src/components/UIComponents/index.ts +1 -0
- package/src/components/ui/Avatar/AvatarGroup.tsx +3 -3
- package/src/components/ui/Avatar/constants.ts +2 -2
- package/src/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.tsx +67 -0
- package/src/contexts/channelMediaListContext/ChannelMediaListContext.tsx +68 -0
- package/src/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.tsx +72 -0
- package/src/contexts/componentsContext/defaultComponents.ts +16 -1
- package/src/contexts/index.ts +3 -0
- package/src/contexts/themeContext/utils/theme.ts +112 -2
- package/src/i18n/ar.json +11 -0
- package/src/i18n/en.json +11 -0
- package/src/i18n/es.json +11 -0
- package/src/i18n/fr.json +11 -0
- package/src/i18n/he.json +11 -0
- package/src/i18n/hi.json +11 -0
- package/src/i18n/it.json +11 -0
- package/src/i18n/ja.json +11 -0
- package/src/i18n/ko.json +11 -0
- package/src/i18n/nl.json +11 -0
- package/src/i18n/pt-br.json +11 -0
- package/src/i18n/ru.json +11 -0
- package/src/i18n/tr.json +11 -0
- package/src/icons/folder.tsx +28 -0
- package/src/icons/index.ts +1 -0
- package/src/state-store/__tests__/image-gallery-state-store.test.ts +81 -0
- package/src/state-store/image-gallery-state-store.ts +27 -1
- package/src/version.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SharedValue } from 'react-native-reanimated';
|
|
1
2
|
import { Attachment, LocalMessage, StateStore, Unsubscribe, UserResponse } from 'stream-chat';
|
|
2
3
|
import { VideoPlayerPool } from './video-player-pool';
|
|
3
4
|
export type ImageGalleryAsset = {
|
|
@@ -29,6 +30,13 @@ export declare class ImageGalleryStateStore {
|
|
|
29
30
|
state: StateStore<ImageGalleryState>;
|
|
30
31
|
options: ImageGalleryOptions;
|
|
31
32
|
videoPlayerPool: VideoPlayerPool;
|
|
33
|
+
/**
|
|
34
|
+
* SharedValue mirror of `state.currentIndex` for worklet consumers (gesture
|
|
35
|
+
* handlers, animated styles). Maintained in lockstep with the setter and the
|
|
36
|
+
* reset path in `clear()`. Reads from worklets bypass the JS bridge entirely;
|
|
37
|
+
* any code path that updates `currentIndex` must keep this mirror in sync.
|
|
38
|
+
*/
|
|
39
|
+
currentIndexShared: SharedValue<number>;
|
|
32
40
|
constructor(options?: Partial<ImageGalleryOptions>);
|
|
33
41
|
get messages(): LocalMessage[];
|
|
34
42
|
get selectedAttachmentUrl(): string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-gallery-state-store.d.ts","sourceRoot":"","sources":["../../../src/state-store/image-gallery-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9F,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAOtD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAgBF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAUF,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;CACvD,CAAC;AAOF,qBAAa,sBAAsB;IACjC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACrC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"image-gallery-state-store.d.ts","sourceRoot":"","sources":["../../../src/state-store/image-gallery-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9F,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAOtD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAgBF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAUF,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;CACvD,CAAC;AAOF,qBAAa,sBAAsB;IACjC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACrC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;IACjC;;;;;OAKG;IACH,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;gBAE5B,OAAO,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAQtD,IAAI,QAAQ,IAuEW,YAAY,EAAE,CArEpC;IAED,IAAI,qBAAqB,IAuEwB,MAAM,GAAG,SAAS,CArElE;IAED,IAAI,aAAa,IAyFgB,MAAM,GAAG,IAAI,CAvF7C;IAED,IAAI,sBAAsB;;;QAsBzB;IAED,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAI9C,IAAI,MAAM;;;;;;;;;;;;;QA4BT;IAGD,IAAI,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,EAEpC;IAED,IAAI,qBAAqB,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,EAElE;IAED,IAAI,YAAY,CAAC,YAAY,EAAE,MAAM,EAgBpC;IAED,IAAI,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,EAE7C;IAGD,cAAc,GAAI,UAAU,YAAY,EAAE,UAExC;IAEF,cAAc,GAAI,UAAU,YAAY,EAAE,UAIxC;IAEF,gBAAgB,GAAI,qDAIjB;QACD,QAAQ,EAAE,YAAY,EAAE,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,UAEC;IAEF,mBAAmB,oBAYjB;IAEF,gCAAgC,oBAoB9B;IAEF,qBAAqB,mBASnB;IAEF,KAAK,aAIH;CACH"}
|
|
@@ -208,6 +208,7 @@ export declare class Streami18n {
|
|
|
208
208
|
"Loading threads...": string;
|
|
209
209
|
"Loading...": string;
|
|
210
210
|
Location: string;
|
|
211
|
+
"Long-press a message to pin it to the chat": string;
|
|
211
212
|
"Mark as Unread": string;
|
|
212
213
|
"Maximum number of files reached": string;
|
|
213
214
|
"Message Reactions": string;
|
|
@@ -232,7 +233,10 @@ export declare class Streami18n {
|
|
|
232
233
|
"Failed to remove members": string;
|
|
233
234
|
Muted: string;
|
|
234
235
|
"No chats here yet\u2026": string;
|
|
236
|
+
"No files": string;
|
|
235
237
|
"No items exist": string;
|
|
238
|
+
"No photos or videos": string;
|
|
239
|
+
"No pinned messages": string;
|
|
236
240
|
"No threads here yet": string;
|
|
237
241
|
"No user found": string;
|
|
238
242
|
"Not supported": string;
|
|
@@ -246,6 +250,7 @@ export declare class Streami18n {
|
|
|
246
250
|
Options: string;
|
|
247
251
|
Photo: string;
|
|
248
252
|
"Photos and Videos": string;
|
|
253
|
+
"Share a photo or video to see it here": string;
|
|
249
254
|
"Pin to Conversation": string;
|
|
250
255
|
"Pinned by": string;
|
|
251
256
|
"Please allow Audio permissions in settings.": string;
|
|
@@ -306,6 +311,7 @@ export declare class Streami18n {
|
|
|
306
311
|
"duration/Remind Me": string;
|
|
307
312
|
"replied to": string;
|
|
308
313
|
"timestamp/ChannelPreviewStatus": string;
|
|
314
|
+
"timestamp/FileAttachmentListSection": string;
|
|
309
315
|
"timestamp/ImageGalleryHeader": string;
|
|
310
316
|
"timestamp/InlineDateSeparator": string;
|
|
311
317
|
"timestamp/MessageEditedTimestamp": string;
|
|
@@ -480,6 +486,7 @@ export declare class Streami18n {
|
|
|
480
486
|
"a11y/Select image": string;
|
|
481
487
|
"a11y/Select video": string;
|
|
482
488
|
"a11y/Send voice recording": string;
|
|
489
|
+
"a11y/Search pinned messages": string;
|
|
483
490
|
"a11y/Search users to add": string;
|
|
484
491
|
"a11y/Select {{name}}": string;
|
|
485
492
|
"a11y/{{name}} is already a member": string;
|
|
@@ -491,6 +498,7 @@ export declare class Streami18n {
|
|
|
491
498
|
"Contact Info": string;
|
|
492
499
|
Edit: string;
|
|
493
500
|
Files: string;
|
|
501
|
+
"Share a file to see it here": string;
|
|
494
502
|
"Group Info": string;
|
|
495
503
|
"timestamp/UserActivityStatus": string;
|
|
496
504
|
"Photos & Videos": string;
|
|
@@ -541,7 +549,10 @@ export declare class Streami18n {
|
|
|
541
549
|
"Failed to block user": string;
|
|
542
550
|
"Failed to delete channel": string;
|
|
543
551
|
"Failed to leave channel": string;
|
|
552
|
+
"Failed to load files": string;
|
|
553
|
+
"Failed to load media": string;
|
|
544
554
|
"Failed to load members": string;
|
|
555
|
+
"Failed to load pinned messages": string;
|
|
545
556
|
"Failed to load users": string;
|
|
546
557
|
"Failed to play the recording": string;
|
|
547
558
|
"Failed to update channel archive status": string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Streami18n.d.ts","sourceRoot":"","sources":["../../../../src/utils/i18n/Streami18n.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Streami18n.d.ts","sourceRoot":"","sources":["../../../../src/utils/i18n/Streami18n.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stream-chat-react-native-core",
|
|
3
3
|
"description": "The official React Native and Expo components for Stream Chat, a service for building chat applications",
|
|
4
|
-
"version": "9.4.0-beta.
|
|
4
|
+
"version": "9.4.0-beta.13",
|
|
5
5
|
"author": {
|
|
6
6
|
"company": "Stream.io Inc",
|
|
7
7
|
"name": "Stream.io Inc"
|
|
@@ -3,6 +3,8 @@ import { ScrollView, StyleSheet, View } from 'react-native';
|
|
|
3
3
|
|
|
4
4
|
import type { Channel, ChannelMemberResponse } from 'stream-chat';
|
|
5
5
|
|
|
6
|
+
import type { GetChannelDetailsNavigationItems } from './hooks/useChannelDetailsNavigationItems';
|
|
7
|
+
|
|
6
8
|
import {
|
|
7
9
|
ChannelDetailsContextProvider,
|
|
8
10
|
type ChannelDetailsContextValue,
|
|
@@ -59,6 +61,15 @@ export type ChannelDetailsProps = {
|
|
|
59
61
|
* or add items — for example, to inject a "Send Direct Message" action in your app.
|
|
60
62
|
*/
|
|
61
63
|
getChannelMemberActionItems?: GetChannelMemberActionItems;
|
|
64
|
+
/**
|
|
65
|
+
* Customize the navigation rows rendered in the channel details navigation section.
|
|
66
|
+
*
|
|
67
|
+
* Receives the built-in `defaultItems` (and a `context`) and returns the rows to render.
|
|
68
|
+
* Map over `defaultItems` to override a row's `onPress` (e.g. to push your own screen) or
|
|
69
|
+
* to add/remove rows. Any row whose `onPress` you leave untouched keeps its built-in
|
|
70
|
+
* behavior (opening the built-in modal), including sections added in future SDK versions.
|
|
71
|
+
*/
|
|
72
|
+
getNavigationItems?: GetChannelDetailsNavigationItems;
|
|
62
73
|
/**
|
|
63
74
|
* Override the role label shown next to each member in the channel details screen.
|
|
64
75
|
*
|
|
@@ -112,6 +123,7 @@ export const ChannelDetailsContent = () => {
|
|
|
112
123
|
} = useTheme();
|
|
113
124
|
const {
|
|
114
125
|
ChannelDetailsActionsSection,
|
|
126
|
+
ChannelDetailsEditButton,
|
|
115
127
|
ChannelDetailsMemberSection,
|
|
116
128
|
ChannelDetailsNavigationSection,
|
|
117
129
|
ChannelDetailsProfile,
|
|
@@ -128,10 +140,10 @@ export const ChannelDetailsContent = () => {
|
|
|
128
140
|
containerOverride,
|
|
129
141
|
]}
|
|
130
142
|
>
|
|
131
|
-
<ChannelDetailsNavHeader />
|
|
143
|
+
<ChannelDetailsNavHeader action={<ChannelDetailsEditButton />} />
|
|
132
144
|
<ScrollView contentContainerStyle={[styles.scrollContent, scrollContentOverride]}>
|
|
133
145
|
<ChannelDetailsProfile />
|
|
134
|
-
|
|
146
|
+
<ChannelDetailsNavigationSection />
|
|
135
147
|
{isDirect ? null : <ChannelDetailsMemberSection />}
|
|
136
148
|
<ChannelDetailsActionsSection />
|
|
137
149
|
</ScrollView>
|
|
@@ -149,6 +161,7 @@ export const ChannelDetails = ({
|
|
|
149
161
|
getChannelActionItems,
|
|
150
162
|
getChannelMemberActionItems,
|
|
151
163
|
getMemberRoleLabel,
|
|
164
|
+
getNavigationItems,
|
|
152
165
|
onAddMembersPress,
|
|
153
166
|
onBack,
|
|
154
167
|
onChannelDismiss,
|
|
@@ -165,6 +178,7 @@ export const ChannelDetails = ({
|
|
|
165
178
|
getChannelActionItems,
|
|
166
179
|
getChannelMemberActionItems,
|
|
167
180
|
getMemberRoleLabel,
|
|
181
|
+
getNavigationItems,
|
|
168
182
|
onAddMembersPress,
|
|
169
183
|
onBack,
|
|
170
184
|
onChannelDismiss,
|
|
@@ -179,6 +193,7 @@ export const ChannelDetails = ({
|
|
|
179
193
|
getChannelActionItems,
|
|
180
194
|
getChannelMemberActionItems,
|
|
181
195
|
getMemberRoleLabel,
|
|
196
|
+
getNavigationItems,
|
|
182
197
|
onAddMembersPress,
|
|
183
198
|
onBack,
|
|
184
199
|
onChannelDismiss,
|
|
@@ -52,6 +52,15 @@ const channel = {
|
|
|
52
52
|
on: jest.fn(() => ({ unsubscribe: jest.fn() })),
|
|
53
53
|
} as unknown as Channel;
|
|
54
54
|
|
|
55
|
+
const buildChannel = (capabilities: string[] = []) =>
|
|
56
|
+
({
|
|
57
|
+
cid: 'messaging:test',
|
|
58
|
+
data: { own_capabilities: capabilities },
|
|
59
|
+
id: 'test',
|
|
60
|
+
on: jest.fn(() => ({ unsubscribe: jest.fn() })),
|
|
61
|
+
state: { members: {} },
|
|
62
|
+
}) as unknown as Channel;
|
|
63
|
+
|
|
55
64
|
const renderContent = () =>
|
|
56
65
|
render(
|
|
57
66
|
<Providers>
|
|
@@ -94,6 +103,26 @@ describe('ChannelDetailsContent', () => {
|
|
|
94
103
|
renderContent();
|
|
95
104
|
expect(screen.queryByTestId('probe-member')).toBeNull();
|
|
96
105
|
});
|
|
106
|
+
|
|
107
|
+
it('displays the edit button in the header for a group channel with the update-channel capability', () => {
|
|
108
|
+
useIsDirectChatSpy.mockReturnValue(false);
|
|
109
|
+
render(
|
|
110
|
+
<Providers>
|
|
111
|
+
<WithComponents
|
|
112
|
+
overrides={{
|
|
113
|
+
ChannelDetailsActionsSection: ActionsProbe,
|
|
114
|
+
ChannelDetailsMemberSection: MemberProbe,
|
|
115
|
+
ChannelDetailsNavigationSection: NavigationProbe,
|
|
116
|
+
ChannelDetailsProfile: ProfileProbe,
|
|
117
|
+
}}
|
|
118
|
+
>
|
|
119
|
+
<ChannelDetails channel={buildChannel(['update-channel'])} />
|
|
120
|
+
</WithComponents>
|
|
121
|
+
</Providers>,
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
expect(screen.getByTestId('channel-details-edit-button')).toBeTruthy();
|
|
125
|
+
});
|
|
97
126
|
});
|
|
98
127
|
});
|
|
99
128
|
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import React, { PropsWithChildren } from 'react';
|
|
2
|
+
import { Text, View } from 'react-native';
|
|
3
|
+
|
|
4
|
+
import { fireEvent, render, screen } from '@testing-library/react-native';
|
|
5
|
+
import { NotificationManager } from 'stream-chat';
|
|
6
|
+
import type { Channel } from 'stream-chat';
|
|
7
|
+
|
|
8
|
+
import { AccessibilityProvider } from '../../../contexts/accessibilityContext/AccessibilityContext';
|
|
9
|
+
import { ChannelDetailsContextProvider } from '../../../contexts/channelDetailsContext/channelDetailsContext';
|
|
10
|
+
import { ChatContext } from '../../../contexts/chatContext/ChatContext';
|
|
11
|
+
import { WithComponents } from '../../../contexts/componentsContext/ComponentsContext';
|
|
12
|
+
import { ThemeProvider } from '../../../contexts/themeContext/ThemeContext';
|
|
13
|
+
import { defaultTheme } from '../../../contexts/themeContext/utils/theme';
|
|
14
|
+
import { TranslationProvider } from '../../../contexts/translationContext/TranslationContext';
|
|
15
|
+
import { useChannelActions } from '../../../hooks/actions/useChannelActions';
|
|
16
|
+
import * as useIsDirectChatModule from '../../../hooks/useIsDirectChat';
|
|
17
|
+
import { ChannelDetailsEditButton } from '../components/ChannelDetailsEditButton';
|
|
18
|
+
|
|
19
|
+
jest.mock('../../../hooks/actions/useChannelActions');
|
|
20
|
+
const mockedUseChannelActions = jest.mocked(useChannelActions);
|
|
21
|
+
|
|
22
|
+
const EditDetailsProbe = () => (
|
|
23
|
+
<View testID='channel-edit-details-probe'>
|
|
24
|
+
<Text>edit-details</Text>
|
|
25
|
+
</View>
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
const buildChannel = (capabilities: string[] = []): Channel =>
|
|
29
|
+
({
|
|
30
|
+
cid: 'messaging:test',
|
|
31
|
+
data: { own_capabilities: capabilities },
|
|
32
|
+
on: () => ({ unsubscribe: () => undefined }),
|
|
33
|
+
state: { members: {} },
|
|
34
|
+
}) as unknown as Channel;
|
|
35
|
+
|
|
36
|
+
const Providers = ({ children }: PropsWithChildren) => (
|
|
37
|
+
<ThemeProvider theme={defaultTheme}>
|
|
38
|
+
<AccessibilityProvider value={{ enabled: true }}>
|
|
39
|
+
<TranslationProvider
|
|
40
|
+
value={{
|
|
41
|
+
t: ((key: string) => key) as never,
|
|
42
|
+
tDateTimeParser: ((input: unknown) => input) as never,
|
|
43
|
+
userLanguage: 'en',
|
|
44
|
+
}}
|
|
45
|
+
>
|
|
46
|
+
<ChatContext.Provider
|
|
47
|
+
value={{ client: { notifications: new NotificationManager(), userID: 'me' } } as never}
|
|
48
|
+
>
|
|
49
|
+
{children}
|
|
50
|
+
</ChatContext.Provider>
|
|
51
|
+
</TranslationProvider>
|
|
52
|
+
</AccessibilityProvider>
|
|
53
|
+
</ThemeProvider>
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
const renderEditButton = ({
|
|
57
|
+
channel,
|
|
58
|
+
onEditChannelPress,
|
|
59
|
+
}: {
|
|
60
|
+
channel: Channel;
|
|
61
|
+
onEditChannelPress?: () => void;
|
|
62
|
+
}) =>
|
|
63
|
+
render(
|
|
64
|
+
<Providers>
|
|
65
|
+
<WithComponents overrides={{ ChannelEditDetails: EditDetailsProbe }}>
|
|
66
|
+
<ChannelDetailsContextProvider value={{ channel, onEditChannelPress }}>
|
|
67
|
+
<ChannelDetailsEditButton />
|
|
68
|
+
</ChannelDetailsContextProvider>
|
|
69
|
+
</WithComponents>
|
|
70
|
+
</Providers>,
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
describe('ChannelDetailsEditButton', () => {
|
|
74
|
+
beforeEach(() => {
|
|
75
|
+
jest.spyOn(useIsDirectChatModule, 'useIsDirectChat').mockReturnValue(false);
|
|
76
|
+
mockedUseChannelActions.mockReturnValue({
|
|
77
|
+
updateImage: jest.fn(),
|
|
78
|
+
updateName: jest.fn(),
|
|
79
|
+
} as unknown as ReturnType<typeof useChannelActions>);
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
afterEach(() => {
|
|
83
|
+
jest.restoreAllMocks();
|
|
84
|
+
mockedUseChannelActions.mockReset();
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
it('does not render the Edit button when the user lacks the update-channel capability', () => {
|
|
88
|
+
renderEditButton({ channel: buildChannel([]) });
|
|
89
|
+
|
|
90
|
+
expect(screen.queryByTestId('channel-details-edit-button')).toBeNull();
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
it('renders the Edit button when the user has the update-channel capability', () => {
|
|
94
|
+
renderEditButton({ channel: buildChannel(['update-channel']) });
|
|
95
|
+
|
|
96
|
+
const button = screen.getByTestId('channel-details-edit-button');
|
|
97
|
+
expect(button).toBeTruthy();
|
|
98
|
+
expect(screen.getByText('Edit')).toBeTruthy();
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
it('does not render the Edit button in a direct (1:1) channel even with the update-channel capability', () => {
|
|
102
|
+
jest.spyOn(useIsDirectChatModule, 'useIsDirectChat').mockReturnValue(true);
|
|
103
|
+
|
|
104
|
+
renderEditButton({ channel: buildChannel(['update-channel']) });
|
|
105
|
+
|
|
106
|
+
expect(screen.queryByTestId('channel-details-edit-button')).toBeNull();
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
it('invokes onEditChannelPress when the Edit button is pressed', () => {
|
|
110
|
+
const onEditChannelPress = jest.fn();
|
|
111
|
+
renderEditButton({ channel: buildChannel(['update-channel']), onEditChannelPress });
|
|
112
|
+
|
|
113
|
+
fireEvent.press(screen.getByTestId('channel-details-edit-button'));
|
|
114
|
+
|
|
115
|
+
expect(onEditChannelPress).toHaveBeenCalledTimes(1);
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
it('opens the edit modal when the Edit button is pressed and onEditChannelPress is not provided', () => {
|
|
119
|
+
renderEditButton({ channel: buildChannel(['update-channel']) });
|
|
120
|
+
|
|
121
|
+
expect(screen.queryByTestId('channel-edit-details-probe')).toBeNull();
|
|
122
|
+
|
|
123
|
+
fireEvent.press(screen.getByTestId('channel-details-edit-button'));
|
|
124
|
+
|
|
125
|
+
expect(screen.getByTestId('channel-edit-details-probe')).toBeTruthy();
|
|
126
|
+
});
|
|
127
|
+
});
|
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
import React, { PropsWithChildren } from 'react';
|
|
2
2
|
import { Text, View } from 'react-native';
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { render, screen } from '@testing-library/react-native';
|
|
5
5
|
import { NotificationManager } from 'stream-chat';
|
|
6
6
|
import type { Channel } from 'stream-chat';
|
|
7
7
|
|
|
8
8
|
import { AccessibilityProvider } from '../../../contexts/accessibilityContext/AccessibilityContext';
|
|
9
9
|
import { ChannelDetailsContextProvider } from '../../../contexts/channelDetailsContext/channelDetailsContext';
|
|
10
10
|
import { ChatContext } from '../../../contexts/chatContext/ChatContext';
|
|
11
|
-
import { WithComponents } from '../../../contexts/componentsContext/ComponentsContext';
|
|
12
11
|
import { ThemeProvider } from '../../../contexts/themeContext/ThemeContext';
|
|
13
12
|
import { defaultTheme } from '../../../contexts/themeContext/utils/theme';
|
|
14
13
|
import { TranslationProvider } from '../../../contexts/translationContext/TranslationContext';
|
|
15
|
-
import { useChannelActions } from '../../../hooks/actions/useChannelActions';
|
|
16
14
|
import * as useIsDirectChatModule from '../../../hooks/useIsDirectChat';
|
|
17
15
|
import { ChannelDetailsNavHeader } from '../components/ChannelDetailsNavHeader';
|
|
18
16
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const EditDetailsProbe = () => (
|
|
23
|
-
<View testID='channel-edit-details-probe'>
|
|
24
|
-
<Text>edit-details</Text>
|
|
17
|
+
const ActionProbe = () => (
|
|
18
|
+
<View testID='channel-details-action-probe'>
|
|
19
|
+
<Text>action</Text>
|
|
25
20
|
</View>
|
|
26
21
|
);
|
|
27
22
|
|
|
@@ -54,77 +49,49 @@ const Providers = ({ children }: PropsWithChildren) => (
|
|
|
54
49
|
);
|
|
55
50
|
|
|
56
51
|
const renderHeader = ({
|
|
52
|
+
action,
|
|
57
53
|
channel,
|
|
58
54
|
onBack,
|
|
59
|
-
onEditChannelPress,
|
|
60
55
|
}: {
|
|
56
|
+
action?: React.ReactNode;
|
|
61
57
|
channel: Channel;
|
|
62
58
|
onBack?: () => void;
|
|
63
|
-
onEditChannelPress?: () => void;
|
|
64
59
|
}) =>
|
|
65
60
|
render(
|
|
66
61
|
<Providers>
|
|
67
|
-
<
|
|
68
|
-
<
|
|
69
|
-
|
|
70
|
-
</ChannelDetailsContextProvider>
|
|
71
|
-
</WithComponents>
|
|
62
|
+
<ChannelDetailsContextProvider value={{ channel, onBack }}>
|
|
63
|
+
<ChannelDetailsNavHeader action={action} />
|
|
64
|
+
</ChannelDetailsContextProvider>
|
|
72
65
|
</Providers>,
|
|
73
66
|
);
|
|
74
67
|
|
|
75
68
|
describe('ChannelDetailsNavHeader', () => {
|
|
76
69
|
beforeEach(() => {
|
|
77
70
|
jest.spyOn(useIsDirectChatModule, 'useIsDirectChat').mockReturnValue(false);
|
|
78
|
-
mockedUseChannelActions.mockReturnValue({
|
|
79
|
-
updateImage: jest.fn(),
|
|
80
|
-
updateName: jest.fn(),
|
|
81
|
-
} as unknown as ReturnType<typeof useChannelActions>);
|
|
82
71
|
});
|
|
83
72
|
|
|
84
73
|
afterEach(() => {
|
|
85
74
|
jest.restoreAllMocks();
|
|
86
|
-
mockedUseChannelActions.mockReset();
|
|
87
75
|
});
|
|
88
76
|
|
|
89
|
-
it('
|
|
90
|
-
renderHeader({ channel: buildChannel([]) });
|
|
77
|
+
it('renders the action node passed via the action slot', () => {
|
|
78
|
+
renderHeader({ action: <ActionProbe />, channel: buildChannel([]) });
|
|
91
79
|
|
|
92
|
-
expect(screen.
|
|
80
|
+
expect(screen.getByTestId('channel-details-action-probe')).toBeTruthy();
|
|
93
81
|
});
|
|
94
82
|
|
|
95
|
-
it('
|
|
96
|
-
renderHeader({ channel: buildChannel([
|
|
83
|
+
it('resolves the group info title for a non-direct channel', () => {
|
|
84
|
+
renderHeader({ channel: buildChannel([]) });
|
|
97
85
|
|
|
98
|
-
|
|
99
|
-
expect(button).toBeTruthy();
|
|
100
|
-
expect(screen.getByText('Edit')).toBeTruthy();
|
|
86
|
+
expect(screen.getByText('Group Info')).toBeTruthy();
|
|
101
87
|
});
|
|
102
88
|
|
|
103
|
-
it('
|
|
89
|
+
it('resolves the contact info title for a direct (1:1) channel', () => {
|
|
104
90
|
jest.spyOn(useIsDirectChatModule, 'useIsDirectChat').mockReturnValue(true);
|
|
105
91
|
|
|
106
|
-
renderHeader({ channel: buildChannel([
|
|
107
|
-
|
|
108
|
-
expect(screen.queryByTestId('channel-details-edit-button')).toBeNull();
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
it('invokes onEditChannelPress when the Edit button is pressed', () => {
|
|
112
|
-
const onEditChannelPress = jest.fn();
|
|
113
|
-
renderHeader({ channel: buildChannel(['update-channel']), onEditChannelPress });
|
|
114
|
-
|
|
115
|
-
fireEvent.press(screen.getByTestId('channel-details-edit-button'));
|
|
116
|
-
|
|
117
|
-
expect(onEditChannelPress).toHaveBeenCalledTimes(1);
|
|
118
|
-
});
|
|
119
|
-
|
|
120
|
-
it('opens the edit modal when the Edit button is pressed and onEditChannelPress is not provided', () => {
|
|
121
|
-
renderHeader({ channel: buildChannel(['update-channel']) });
|
|
122
|
-
|
|
123
|
-
expect(screen.queryByTestId('channel-edit-details-probe')).toBeNull();
|
|
124
|
-
|
|
125
|
-
fireEvent.press(screen.getByTestId('channel-details-edit-button'));
|
|
92
|
+
renderHeader({ channel: buildChannel([]) });
|
|
126
93
|
|
|
127
|
-
expect(screen.
|
|
94
|
+
expect(screen.getByText('Contact Info')).toBeTruthy();
|
|
128
95
|
});
|
|
129
96
|
|
|
130
97
|
it('renders the back button only when onBack is provided', () => {
|
|
@@ -133,11 +100,9 @@ describe('ChannelDetailsNavHeader', () => {
|
|
|
133
100
|
|
|
134
101
|
rerender(
|
|
135
102
|
<Providers>
|
|
136
|
-
<
|
|
137
|
-
<
|
|
138
|
-
|
|
139
|
-
</ChannelDetailsContextProvider>
|
|
140
|
-
</WithComponents>
|
|
103
|
+
<ChannelDetailsContextProvider value={{ channel: buildChannel([]), onBack: jest.fn() }}>
|
|
104
|
+
<ChannelDetailsNavHeader />
|
|
105
|
+
</ChannelDetailsContextProvider>
|
|
141
106
|
</Providers>,
|
|
142
107
|
);
|
|
143
108
|
|