-
Notifications
You must be signed in to change notification settings - Fork 114
4.94.0 Release #1061
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
4.94.0 Release #1061
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Allow changing the attachment size and author avatar size of quoted message view * Add new `QuotedMessageContentView` * Allow customizing the `QuotedMessageContentView` * Add test coverage to custom quoted avatar sizes * Remove unnecessary option * Add test coverage to custom quoted content view * Update CHANGELOG.md * Fix linter * [CI] Snapshots (#1057) * Move quotedMessage inside the `QuotedMessageContentViewOptions` --------- Co-authored-by: Stream SDK Bot <[email protected]>
Generated by 🚫 Danger |
Public Interface+ public struct QuotedMessageViewContainer: View
+
+ public var factory: Factory
+ public var quotedMessage: ChatMessage
+ public var fillAvailableSpace: Bool
+ public var forceLeftToRight: Bool
+ @Binding public var scrolledId: String?
+ public let attachmentSize: CGSize
+ public let quotedAuthorAvatarSize: CGSize
+ public var body: some View
+
+
+ public init(factory: Factory,quotedMessage: ChatMessage,fillAvailableSpace: Bool,forceLeftToRight: Bool = false,scrolledId: Binding<String?>,attachmentSize: CGSize = CGSize(width: 36, height: 36),quotedAuthorAvatarSize: CGSize = CGSize(width: 24, height: 24))
+ public struct QuotedMessageContentViewOptions
+
+ public let quotedMessage: ChatMessage
+ public let fillAvailableSpace: Bool
+ public let attachmentSize: CGSize
+
+
+ public init(quotedMessage: ChatMessage,fillAvailableSpace: Bool,attachmentSize: CGSize = CGSize(width: 36, height: 36))
+ public struct QuotedMessageContentView: View
+
+ public var factory: Factory
+ public var options: QuotedMessageContentViewOptions
+ public var body: some View
+
+
+ public init(factory: Factory,options: QuotedMessageContentViewOptions)
public struct ComposerConfig
- public var inputPaddingsConfig: PaddingsConfig
+ public var maxGalleryAssetsCount: Int?
- public var adjustMessageOnSend: (String) -> (String)
+ public var inputPaddingsConfig: PaddingsConfig
- public var adjustMessageOnRead: (String) -> (String)
+ public var adjustMessageOnSend: (String) -> (String)
- @available(
+ public var adjustMessageOnRead: (String) -> (String)
- *,
+ @available(
- deprecated,
+ *,
- message: """
+ deprecated,
- Override the MessageComposerViewModel.inputAttachmentsAsPayloads() in order to convert the message attachments to payloads.
+ message: """
- """
+ Override the MessageComposerViewModel.inputAttachmentsAsPayloads() in order to convert the message attachments to payloads.
- ) public var attachmentPayloadConverter: (ChatMessage) -> [AnyAttachmentPayload]
+ """
- public static var defaultAttachmentPayloadConverter: (ChatMessage) -> [AnyAttachmentPayload]
+ ) public var attachmentPayloadConverter: (ChatMessage) -> [AnyAttachmentPayload]
-
+ public static var defaultAttachmentPayloadConverter: (ChatMessage) -> [AnyAttachmentPayload]
-
+
- public init(isVoiceRecordingEnabled: Bool = false,inputViewMinHeight: CGFloat = 38,inputViewMaxHeight: CGFloat = 76,inputViewCornerRadius: CGFloat = 20,inputFont: UIFont = UIFont.preferredFont(forTextStyle: .body),gallerySupportedTypes: GallerySupportedTypes = .imagesAndVideo,inputPaddingsConfig: PaddingsConfig = .composerInput,adjustMessageOnSend: @escaping (String) -> (String) = { $0 },adjustMessageOnRead: @escaping (String) -> (String) = { $0 },attachmentPayloadConverter: @escaping (ChatMessage) -> [AnyAttachmentPayload]
+
- = ComposerConfig.defaultAttachmentPayloadConverter)
+ public init(isVoiceRecordingEnabled: Bool = false,inputViewMinHeight: CGFloat = 38,inputViewMaxHeight: CGFloat = 76,inputViewCornerRadius: CGFloat = 20,inputFont: UIFont = UIFont.preferredFont(forTextStyle: .body),gallerySupportedTypes: GallerySupportedTypes = .imagesAndVideo,maxGalleryAssetsCount: Int? = nil,inputPaddingsConfig: PaddingsConfig = .composerInput,adjustMessageOnSend: @escaping (String) -> (String) = { $0 },adjustMessageOnRead: @escaping (String) -> (String) = { $0 },attachmentPayloadConverter: @escaping (ChatMessage) -> [AnyAttachmentPayload]
+ = ComposerConfig.defaultAttachmentPayloadConverter)
extension ViewFactory
- public func makeCustomAttachmentQuotedView(for message: ChatMessage)-> some View
+ public func makeQuotedMessageContentView(options: QuotedMessageContentViewOptions)-> some View
- public func makeEditedMessageHeaderView(editedMessage: Binding<ChatMessage?>)-> some View
+ public func makeCustomAttachmentQuotedView(for message: ChatMessage)-> some View
- public func makeCommandsContainerView(suggestions: [String: Any],handleCommand: @escaping ([String: Any]) -> Void)-> some View
+ public func makeEditedMessageHeaderView(editedMessage: Binding<ChatMessage?>)-> some View
- public func makeMessageReadIndicatorView(channel: ChatChannel,message: ChatMessage)-> some View
+ public func makeCommandsContainerView(suggestions: [String: Any],handleCommand: @escaping ([String: Any]) -> Void)-> some View
- public func makeNewMessagesIndicatorView(newMessagesStartId: Binding<String?>,count: Int)-> some View
+ public func makeMessageReadIndicatorView(channel: ChatChannel,message: ChatMessage)-> some View
- public func makeJumpToUnreadButton(channel: ChatChannel,onJumpToMessage: @escaping () -> Void,onClose: @escaping () -> Void)-> some View
+ public func makeNewMessagesIndicatorView(newMessagesStartId: Binding<String?>,count: Int)-> some View
- public func makeComposerPollView(channelController: ChatChannelController,messageController: ChatMessageController?)-> some View
+ public func makeJumpToUnreadButton(channel: ChatChannel,onJumpToMessage: @escaping () -> Void,onClose: @escaping () -> Void)-> some View
- public func makePollView(message: ChatMessage,poll: Poll,isFirst: Bool)-> some View
+ public func makeComposerPollView(channelController: ChatChannelController,messageController: ChatMessageController?)-> some View
- public func makeThreadDestination()-> (ChatThread) -> ChatChannelView<Self>
+ public func makePollView(message: ChatMessage,poll: Poll,isFirst: Bool)-> some View
- public func makeThreadListItem(thread: ChatThread,threadDestination: @escaping (ChatThread) -> ThreadDestination,selectedThread: Binding<ThreadSelectionInfo?>)-> some View
+ public func makeThreadDestination()-> (ChatThread) -> ChatChannelView<Self>
- public func makeNoThreadsView()-> some View
+ public func makeThreadListItem(thread: ChatThread,threadDestination: @escaping (ChatThread) -> ThreadDestination,selectedThread: Binding<ThreadSelectionInfo?>)-> some View
- public func makeThreadsListErrorBannerView(onRefreshAction: @escaping () -> Void)-> some View
+ public func makeNoThreadsView()-> some View
- public func makeThreadListLoadingView()-> some View
+ public func makeThreadsListErrorBannerView(onRefreshAction: @escaping () -> Void)-> some View
- public func makeThreadListContainerViewModifier(viewModel: ChatThreadListViewModel)-> some ViewModifier
+ public func makeThreadListLoadingView()-> some View
- public func makeThreadListHeaderViewModifier(title: String)-> some ViewModifier
+ public func makeThreadListContainerViewModifier(viewModel: ChatThreadListViewModel)-> some ViewModifier
- public func makeThreadListHeaderView(viewModel: ChatThreadListViewModel)-> some View
+ public func makeThreadListHeaderViewModifier(title: String)-> some ViewModifier
- public func makeThreadListFooterView(viewModel: ChatThreadListViewModel)-> some View
+ public func makeThreadListHeaderView(viewModel: ChatThreadListViewModel)-> some View
- public func makeThreadListBackground(colors: ColorPalette)-> some View
+ public func makeThreadListFooterView(viewModel: ChatThreadListViewModel)-> some View
- public func makeThreadListItemBackground(thread: ChatThread,isSelected: Bool)-> some View
+ public func makeThreadListBackground(colors: ColorPalette)-> some View
- public func makeThreadListDividerItem()-> some View
+ public func makeThreadListItemBackground(thread: ChatThread,isSelected: Bool)-> some View
- public func makeAddUsersView(options: AddUsersOptions,onUserTap: @escaping (ChatUser) -> Void)-> some View
+ public func makeThreadListDividerItem()-> some View
- public func makeAttachmentTextView(options: AttachmentTextViewOptions)-> some View
+ public func makeAddUsersView(options: AddUsersOptions,onUserTap: @escaping (ChatUser) -> Void)-> some View
+ public func makeAttachmentTextView(options: AttachmentTextViewOptions)-> some View
public struct QuotedMessageView: View
- public var body: some View
+ public let attachmentSize: CGSize
-
+ public var body: some View
-
+
- public init(factory: Factory,quotedMessage: ChatMessage,fillAvailableSpace: Bool,forceLeftToRight: Bool)
+
+ public init(factory: Factory,quotedMessage: ChatMessage,fillAvailableSpace: Bool,forceLeftToRight: Bool,attachmentSize: CGSize = CGSize(width: 36, height: 36)) |
|
Build for regression testing №135 has been uploaded to TestFlight 🎁 |
Collaborator
Author
SDK Size
|
testableapple
approved these changes
Dec 2, 2025
|
Collaborator
Author
StreamChatSwiftUI XCSize
Show 22 more objects
|
Contributor
|
/merge release |
Contributor
|
Publication of the release has been launched 👍 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.



✅ Added
maxGalleryAssetsCountto the composer config #1053QuotedMessageViewContainer#1056QuotedMessageContentViewandViewFactory.makeQuotedMessageContentView()#1056🐞 Fixed