From 960ee06bde11f63355c44d8ad524e0c84ee31804 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cl=C3=A9ment=20Pit-Claudel?= <clement.pit-claudel@epfl.ch>
Date: Sun, 22 Dec 2024 01:15:05 +0100
Subject: [PATCH] client: Align URL parameter order with case class argument
 order

---
 .../scala/cs214/webapp/client/Pages.scala     | 36 +++++++++----------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/js/src/main/scala/cs214/webapp/client/Pages.scala b/js/src/main/scala/cs214/webapp/client/Pages.scala
index 797deed..0b54847 100644
--- a/js/src/main/scala/cs214/webapp/client/Pages.scala
+++ b/js/src/main/scala/cs214/webapp/client/Pages.scala
@@ -29,10 +29,10 @@ abstract class Page:
         List("app", appId)
       case UIPage(appId, instanceId) =>
         List("app", appId, instanceId)
-      case JoinPageLoader(appId, uiId, instanceId) =>
-        List("app", appId, uiId, instanceId)
-      case AppPage(appId, uiId, instanceId, userId) =>
-        List("app", appId, uiId, instanceId, userId)
+      case JoinPageLoader(appId, instanceId, uiId) =>
+        List("app", appId, instanceId, uiId)
+      case AppPage(appId, instanceId, uiId, userId) =>
+        List("app", appId, instanceId, uiId, userId)
       case _ =>
         throw IllegalArgumentException(f"No path for $this!")
 
@@ -52,12 +52,12 @@ object Page:
         HomePage
       case List("app", appId) =>
         InstanceCreationPage(appId)
-      case List("app", appId, uiId) =>
-        UIPage(appId, uiId)
-      case List("app", appId, uiId, instanceId) =>
-        JoinPageLoader(appId, uiId, instanceId)
-      case List("app", appId, uiId, instanceId, userId) =>
-        AppPage(appId, uiId, instanceId, userId)
+      case List("app", appId, instanceId) =>
+        UIPage(appId, instanceId)
+      case List("app", appId, instanceId, uiId) =>
+        JoinPageLoader(appId, instanceId, uiId)
+      case List("app", appId, instanceId, uiId, userId) =>
+        AppPage(appId, instanceId, uiId, userId)
       case _ =>
         throw IllegalArgumentException(f"Unknown url $url!")
 
@@ -151,12 +151,12 @@ case class UIPage(appId: AppId, instanceId: InstanceId) extends Page:
 
   private def joinPageLoader(): Unit =
     getSelected.map: ui =>
-      WebClient.navigateTo(JoinPageLoader(appId, ui.uiId, instanceId))
+      WebClient.navigateTo(JoinPageLoader(appId, instanceId, ui.uiId))
 
   def renderInto(target: Element) =
     require(appUIs.nonEmpty, f"No UI found for app with id $appId.")
     if appUIs.size == 1 then
-      WebClient.navigateTo(JoinPageLoader(appId, appUIs(0).uiId, instanceId), overwriteHistory = true)
+      WebClient.navigateTo(JoinPageLoader(appId, instanceId, appUIs(0).uiId), overwriteHistory = true)
     else replaceChildren(target):
       dom.window.addEventListener("keydown", handleKeyboardEvent)
       frag(
@@ -183,14 +183,14 @@ case class UIPage(appId: AppId, instanceId: InstanceId) extends Page:
       )
 
 /** The pre-connection menu, which fetches the user list. */
-case class JoinPageLoader(appId: AppId, uiId: UIId, instanceId: InstanceId) extends Page:
+case class JoinPageLoader(appId: AppId, instanceId: InstanceId, uiId: UIId) extends Page:
   val classList = "JoinPageLoader"
   def renderInto(target: Element) =
     Requests.instanceInfo(instanceId).map: resp =>
-      JoinPage(appId, uiId, instanceId, resp.userIds).renderInto(target)
+      JoinPage(appId, instanceId, uiId, resp.userIds).renderInto(target)
 
 /** The connection menu, where a user joins an existing app. */
-case class JoinPage(appId: AppId, uiId: UIId, instanceId: InstanceId, userIds: Seq[UserId])
+case class JoinPage(appId: AppId, instanceId: InstanceId, uiId: UIId, userIds: Seq[UserId])
     extends Page:
   require(userIds.size > 0)
   val classList = "JoinPage"
@@ -213,11 +213,11 @@ case class JoinPage(appId: AppId, uiId: UIId, instanceId: InstanceId, userIds: S
 
   private def joinAppInstance(): Unit =
     getSelected.map: userId =>
-      WebClient.navigateTo(AppPage(appId, uiId, instanceId, userId))
+      WebClient.navigateTo(AppPage(appId, instanceId, uiId, userId))
 
   def renderInto(target: Element): Unit =
     if userIds.size == 1 then
-      WebClient.navigateTo(AppPage(appId, uiId, instanceId, userIds(0)), overwriteHistory = true)
+      WebClient.navigateTo(AppPage(appId, instanceId, uiId, userIds(0)), overwriteHistory = true)
     else replaceChildren(target):
       dom.window.addEventListener("keydown", handleKeyboardEvent)
       frag(
@@ -244,7 +244,7 @@ case class JoinPage(appId: AppId, uiId: UIId, instanceId: InstanceId, userIds: S
       )
 
 /** The actual app content page */
-case class AppPage(appId: AppId, uiId: UIId, instanceId: InstanceId, userId: UserId) extends Page:
+case class AppPage(appId: AppId, instanceId: InstanceId, uiId: UIId, userId: UserId) extends Page:
   val classList = f"app $appId"
 
   private val app: ClientApp =
-- 
GitLab