Improve fun VerificationUserProfileContent
This commit is contained in:
parent
873a43f589
commit
2dc078c431
2 changed files with 23 additions and 15 deletions
|
|
@ -215,9 +215,7 @@ private fun ContentInitial(
|
||||||
.padding(top = 24.dp),
|
.padding(top = 24.dp),
|
||||||
) {
|
) {
|
||||||
VerificationUserProfileContent(
|
VerificationUserProfileContent(
|
||||||
userId = request.details.senderProfile.userId,
|
user = request.details.senderProfile,
|
||||||
displayName = request.details.senderProfile.displayName,
|
|
||||||
avatarUrl = request.details.senderProfile.avatarUrl,
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,6 @@ import androidx.compose.ui.draw.clip
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import io.element.android.compound.theme.ElementTheme
|
import io.element.android.compound.theme.ElementTheme
|
||||||
import io.element.android.libraries.designsystem.components.avatar.Avatar
|
import io.element.android.libraries.designsystem.components.avatar.Avatar
|
||||||
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
|
||||||
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
||||||
import io.element.android.libraries.designsystem.components.avatar.AvatarType
|
import io.element.android.libraries.designsystem.components.avatar.AvatarType
|
||||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||||
|
|
@ -32,19 +31,20 @@ import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||||
import io.element.android.libraries.designsystem.theme.components.Text
|
import io.element.android.libraries.designsystem.theme.components.Text
|
||||||
import io.element.android.libraries.designsystem.utils.CommonDrawables
|
import io.element.android.libraries.designsystem.utils.CommonDrawables
|
||||||
import io.element.android.libraries.matrix.api.core.UserId
|
import io.element.android.libraries.matrix.api.core.UserId
|
||||||
|
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||||
|
import io.element.android.libraries.matrix.ui.model.getAvatarData
|
||||||
|
import io.element.android.libraries.matrix.ui.model.getBestName
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ref: https://www.figma.com/design/lMrKOhS8BEb75GXVq7FnNI/ER-96--User-Verification-by-Emoji?node-id=116-52049
|
* Ref: https://www.figma.com/design/lMrKOhS8BEb75GXVq7FnNI/ER-96--User-Verification-by-Emoji?node-id=116-52049
|
||||||
*/
|
*/
|
||||||
@Composable
|
@Composable
|
||||||
fun VerificationUserProfileContent(
|
fun VerificationUserProfileContent(
|
||||||
userId: UserId,
|
user: MatrixUser,
|
||||||
displayName: String?,
|
|
||||||
avatarUrl: String?,
|
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
) {
|
) {
|
||||||
val avatarData = remember(userId, displayName, avatarUrl) {
|
val avatarData = remember(user) {
|
||||||
AvatarData(id = userId.value, name = displayName, url = avatarUrl, size = AvatarSize.UserVerification)
|
user.getAvatarData(AvatarSize.UserVerification)
|
||||||
}
|
}
|
||||||
Row(
|
Row(
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
|
|
@ -60,10 +60,18 @@ fun VerificationUserProfileContent(
|
||||||
)
|
)
|
||||||
Spacer(modifier = Modifier.width(12.dp))
|
Spacer(modifier = Modifier.width(12.dp))
|
||||||
Column(verticalArrangement = Arrangement.spacedBy(2.dp)) {
|
Column(verticalArrangement = Arrangement.spacedBy(2.dp)) {
|
||||||
Text(text = displayName ?: userId.value, style = ElementTheme.typography.fontBodyLgMedium, color = ElementTheme.colors.textPrimary)
|
Text(
|
||||||
|
text = user.getBestName(),
|
||||||
|
style = ElementTheme.typography.fontBodyLgMedium,
|
||||||
|
color = ElementTheme.colors.textPrimary,
|
||||||
|
)
|
||||||
|
|
||||||
if (displayName != null) {
|
if (user.displayName.isNullOrEmpty().not()) {
|
||||||
Text(text = userId.value, style = ElementTheme.typography.fontBodyMdRegular, color = ElementTheme.colors.textSecondary)
|
Text(
|
||||||
|
text = user.userId.value,
|
||||||
|
style = ElementTheme.typography.fontBodyMdRegular,
|
||||||
|
color = ElementTheme.colors.textSecondary,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -75,8 +83,10 @@ internal fun VerificationUserProfileContentPreview() = ElementPreview(
|
||||||
drawableFallbackForImages = CommonDrawables.sample_avatar
|
drawableFallbackForImages = CommonDrawables.sample_avatar
|
||||||
) {
|
) {
|
||||||
VerificationUserProfileContent(
|
VerificationUserProfileContent(
|
||||||
userId = UserId("@alice:example.com"),
|
user = MatrixUser(
|
||||||
displayName = "Alice",
|
userId = UserId("@alice:example.com"),
|
||||||
avatarUrl = "https://example.com/avatar.png",
|
displayName = "Alice",
|
||||||
|
avatarUrl = "https://example.com/avatar.png",
|
||||||
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue