Итак, у меня есть эта getLocalizedTitle()
функция для этих 3-х типов классов. Должен ли я иметь в качестве утилит и передавать заголовки этой функции или может быть более хорошее решение с расширениями?
data class Carousel(val id: String, val titles: List<Title>) : ContentItem()
data class HeroBanner(val titles: List<Title>,
val descriptions: List<Description>,
val images: List<Image>, val id: String) : ContentItem()
}
data class MenuItem(val type: String, val titles: List<Title>, val actionType: String, val pageComponents: List<PageComponent>) :
fun getLocalizedTitle(locale: String): Title? {
val titles = titles.filter { it.locale == locale }
return if (titles.isNotEmpty()) {
titles[0]
} else {
null
}
}