Jul 19, 2024
To add to my first response, If you feel the need to have an additional Model, (the UiModel), I would do that mapping in the View-Model where it should provide the View with an easier Model to display
DataSource -> Repo -> Model -> Use-Case -> View-Model -> (UiModel) -> View
I like to keep domain classes clean and simple and implementation classes like parcelable classes, isolated to the data layer.
Please feel free to experiment until you find a structure that allows you to maintain the project code comfortably. What I've suggested here is simply my opinion and reflects what has worked for me.