@@ -436,54 +436,52 @@ internal class DomainMapping(
436436 ).let (userTransformer::transform)
437437
438438 /* * Transforms the user shape most user events carry: common fields only, no own-user state. */
439- internal fun UserResponseCommonFields.toDomain (): User =
440- User (
441- id = id,
442- name = name.orEmpty(),
443- image = image.orEmpty(),
444- role = role,
445- language = language,
446- banned = banned,
447- online = online,
448- createdAt = createdAt,
449- deactivatedAt = deactivatedAt,
450- updatedAt = updatedAt,
451- lastActive = lastActive,
452- devices = custom.eventUserDevices(),
453- teams = teams,
454- teamsRole = teamsRole.orEmpty(),
455- blockedUserIds = blockedUserIds,
456- avgResponseTime = avgResponseTime?.toLong(),
457- extraData = custom.mapNotNull { (key, value) -> value?.let { key to it } }.toMap()
458- .minus(EVENT_USER_DEVICES_KEY )
459- .toMutableMap(),
460- ).let (userTransformer::transform)
439+ internal fun UserResponseCommonFields.toDomain (): User = toUser().let (userTransformer::transform)
461440
462441 /* * Transforms the user shape `user.updated` carries: the common fields plus privacy state. */
463442 internal fun UserResponsePrivacyFields.toDomain (): User =
464- User (
443+ UserResponseCommonFields (
444+ banned = banned,
445+ createdAt = createdAt,
465446 id = id,
466- name = name.orEmpty(),
467- image = image.orEmpty(),
468- role = role,
469- invisible = invisible,
470- privacySettings = privacySettings?.toDomain(),
471447 language = language,
472- banned = banned,
473448 online = online,
474- createdAt = createdAt,
475- deactivatedAt = deactivatedAt,
449+ role = role,
476450 updatedAt = updatedAt,
477- lastActive = lastActive,
478- devices = custom.eventUserDevices(),
479- teams = teams,
480- teamsRole = teamsRole.orEmpty(),
481451 blockedUserIds = blockedUserIds,
482- avgResponseTime = avgResponseTime?.toLong(),
483- extraData = custom.mapNotNull { (key, value) -> value?.let { key to it } }.toMap()
484- .minus(EVENT_USER_DEVICES_KEY )
485- .toMutableMap(),
486- ).let (userTransformer::transform)
452+ teams = teams,
453+ custom = custom,
454+ avgResponseTime = avgResponseTime,
455+ deactivatedAt = deactivatedAt,
456+ image = image,
457+ lastActive = lastActive,
458+ name = name,
459+ teamsRole = teamsRole,
460+ ).toUser()
461+ .copy(invisible = invisible, privacySettings = privacySettings?.toDomain())
462+ .let (userTransformer::transform)
463+
464+ private fun UserResponseCommonFields.toUser (): User = User (
465+ id = id,
466+ name = name.orEmpty(),
467+ image = image.orEmpty(),
468+ role = role,
469+ language = language,
470+ banned = banned,
471+ online = online,
472+ createdAt = createdAt,
473+ deactivatedAt = deactivatedAt,
474+ updatedAt = updatedAt,
475+ lastActive = lastActive,
476+ devices = custom.eventUserDevices(),
477+ teams = teams,
478+ teamsRole = teamsRole.orEmpty(),
479+ blockedUserIds = blockedUserIds,
480+ avgResponseTime = avgResponseTime?.toLong(),
481+ extraData = custom.mapNotNull { (key, value) -> value?.let { key to it } }.toMap()
482+ .minus(EVENT_USER_DEVICES_KEY )
483+ .toMutableMap(),
484+ )
487485
488486 /* *
489487 * Transforms [DownstreamUserDto] to [User].
0 commit comments