feat(ui): Implement countless feature using the SJWP #89

Merged
Janis merged 11 commits from feat/implement-events into main 2025-11-27 08:53:38 +01:00
17 changed files with 308 additions and 52 deletions
Showing only changes of commit 352cd75140 - Show all commits

View File

@@ -40,7 +40,7 @@ lazy val knockoutwhistweb = project.in(file("knockoutwhistweb"))
libraryDependencies += "de.mkammerer" % "argon2-jvm" % "2.12", libraryDependencies += "de.mkammerer" % "argon2-jvm" % "2.12",
libraryDependencies += "com.auth0" % "java-jwt" % "4.5.0", libraryDependencies += "com.auth0" % "java-jwt" % "4.5.0",
libraryDependencies += "com.github.ben-manes.caffeine" % "caffeine" % "3.2.3", libraryDependencies += "com.github.ben-manes.caffeine" % "caffeine" % "3.2.3",
libraryDependencies += "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.16.1", libraryDependencies += "tools.jackson.module" %% "jackson-module-scala" % "3.0.2",
JsEngineKeys.engineType := JsEngineKeys.EngineType.Node JsEngineKeys.engineType := JsEngineKeys.EngineType.Node
) )

View File

@@ -6,6 +6,7 @@ import model.sessions.UserSession
import play.api.libs.json.{JsValue, Json} import play.api.libs.json.{JsValue, Json}
import tools.jackson.databind.json.JsonMapper import tools.jackson.databind.json.JsonMapper
import tools.jackson.module.scala.ScalaModule import tools.jackson.module.scala.ScalaModule
import util.mapper.{CardPlayedEventMapper, GameStateEventMapper, KickEventMapper, LeftEventMapper, LobbyUpdateEventMapper, NewRoundEventMapper, NewTrickEventMapper, ReceivedHandEventMapper, RequestCardEventMapper, SessionClosedMapper, SimpleEventMapper, TrickEndEventMapper}
import util.mapper.{CardPlayedEventMapper, GameStateEventMapper, KickEventMapper, LeftEventMapper, LobbyUpdateEventMapper, ReceivedHandEventMapper, SessionClosedMapper, SimpleEventMapper, TurnEventMapper} import util.mapper.{CardPlayedEventMapper, GameStateEventMapper, KickEventMapper, LeftEventMapper, LobbyUpdateEventMapper, ReceivedHandEventMapper, SessionClosedMapper, SimpleEventMapper, TurnEventMapper}
import util.mapper.{GameStateEventMapper, NewRoundEventMapper, NewTrickEventMapper, ReceivedHandEventMapper, RequestCardEventMapper, SimpleEventMapper, TrickEndEventMapper, CardPlayedEventMapper} import util.mapper.{GameStateEventMapper, NewRoundEventMapper, NewTrickEventMapper, ReceivedHandEventMapper, RequestCardEventMapper, SimpleEventMapper, TrickEndEventMapper, CardPlayedEventMapper}

View File

@@ -1,18 +0,0 @@
package util.mapper
import de.knockoutwhist.events.global.GameStateChangeEvent
import logic.game.GameLobby
import play.api.libs.json.{JsObject, Json}
object GameStateChangeEventMapper extends SimpleEventMapper[GameStateChangeEvent]{
override def id: String = "GameStateChangeEvent"
override def toJson(event: GameStateChangeEvent, gameLobby: GameLobby): JsObject = {
println("CALLED toJSON FOR GAMESTATECHANGE")
Json.obj(
"oldState" -> event.oldState.toString,
"newState" -> event.newState.toString,
"gameLobby" -> gameLobby.id
)
}
}