You can expand case class members to method arguments gracefully.
Available from maven central.
If you use SBT you can include case-class-expand-and-apply in your project with
libraryDependencies ++= Seq(
"com.github.bigwheel" %% "case-class-expand-and-apply" % "1.0.2",
)