Skip to content

Commit a0064d6

Browse files
Added role value in the user display info (#460)
1 parent 43b74e0 commit a0064d6

File tree

3 files changed

+20
-4
lines changed

3 files changed

+20
-4
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
33

44
# Upcoming
55

6+
### ✅ Added
7+
- Role value in the user display info
8+
69
### 🐞 Fixed
710
- Reactions picker for large messages sometimes goes in the safe area
811

Sources/StreamChatSwiftUI/Utils/MessageCachingUtils.swift

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,8 @@ class MessageCachingUtils {
118118
let userDisplayInfo = UserDisplayInfo(
119119
id: user.id,
120120
name: user.name ?? user.id,
121-
imageURL: user.imageURL
121+
imageURL: user.imageURL,
122+
role: user.userRole
122123
)
123124
messageAuthorMapping[message.id] = user.id
124125
messageAuthors[user.id] = userDisplayInfo
@@ -138,11 +139,13 @@ public struct UserDisplayInfo {
138139
public let id: String
139140
public let name: String
140141
public let imageURL: URL?
142+
public let role: UserRole?
141143

142-
public init(id: String, name: String, imageURL: URL?) {
144+
public init(id: String, name: String, imageURL: URL?, role: UserRole? = nil) {
143145
self.id = id
144146
self.name = name
145147
self.imageURL = imageURL
148+
self.role = role
146149
}
147150
}
148151

StreamChatSwiftUITests/Tests/Utils/ViewFactory_Tests.swift

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,12 @@ class ViewFactory_Tests: StreamChatTestCase {
123123
func test_viewFactory_makeMessageAvatarView() {
124124
// Given
125125
let viewFactory = DefaultViewFactory.shared
126-
let userInfo = UserDisplayInfo(id: .unique, name: .unique, imageURL: URL(string: "https://example.com"))
126+
let userInfo = UserDisplayInfo(
127+
id: .unique,
128+
name: .unique,
129+
imageURL: URL(string: "https://example.com"),
130+
role: .user
131+
)
127132

128133
// When
129134
let view = viewFactory.makeMessageAvatarView(for: userInfo)
@@ -135,7 +140,12 @@ class ViewFactory_Tests: StreamChatTestCase {
135140
func test_viewFactory_makeQuotedMessageAvatarView() {
136141
// Given
137142
let viewFactory = DefaultViewFactory.shared
138-
let userInfo = UserDisplayInfo(id: .unique, name: .unique, imageURL: URL(string: "https://example.com"))
143+
let userInfo = UserDisplayInfo(
144+
id: .unique,
145+
name: .unique,
146+
imageURL: URL(string: "https://example.com"),
147+
role: .user
148+
)
139149

140150
// When
141151
let view = viewFactory.makeQuotedMessageAvatarView(

0 commit comments

Comments
 (0)