summaryrefslogtreecommitdiff
path: root/src/Controllers/LoginController.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Controllers/LoginController.php')
-rw-r--r--src/Controllers/LoginController.php44
1 files changed, 22 insertions, 22 deletions
diff --git a/src/Controllers/LoginController.php b/src/Controllers/LoginController.php
index 15f1583..c520e25 100644
--- a/src/Controllers/LoginController.php
+++ b/src/Controllers/LoginController.php
@@ -10,9 +10,12 @@ use App\Models\Device;
use App\Models\Tokens;
use App\Models\User;
use App\Support\RequestValidator;
-use App\Types\LoginFlow;
-use App\Types\LoginType;
use App\Types\UserRegistrationKind;
+use Matrix\Data\LoginFlow;
+use Matrix\Enums\LoginType;
+use Matrix\Responses\ClientLoginGetResponse;
+use Matrix\Responses\ClientLoginPostResponse;
+use Matrix\Responses\ClientRegisterPostResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\JsonResponse;
@@ -24,11 +27,9 @@ class LoginController
*/
public function supportedLoginTypes(Request $request): Response
{
- return new JsonResponse([
- "flows" => [
- (new LoginFlow(LoginType::PASSWORD))->toArray(),
- ],
- ]);
+ return new JsonResponse(new ClientLoginGetResponse([
+ (new LoginFlow(LoginType::PASSWORD)),
+ ]));
}
/**
@@ -87,14 +88,13 @@ class LoginController
}
}
- return new JsonResponse([
- "access_token" => $tokens->getAccessToken(),
- "device_id" => $device->getId(),
- "expires_in_ms" => $tokens->getExpiresIn(),
- "refresh_token" => $tokens->getRefreshToken(),
- "user_id" => $user->getId(),
- #"well_known" => [],
- ]);
+ return new JsonResponse(new ClientLoginPostResponse(
+ accessToken: $tokens->getAccessToken(),
+ deviceId:$device->getId(),
+ userId: $user->getId(),
+ expiresInMilliseconds: $tokens->getExpiresIn(),
+ refreshToken: $tokens->getRefreshToken(),
+ ));
}
/**
@@ -130,12 +130,12 @@ class LoginController
$tokens = Tokens::new($userId, $device->getId());
$tokens->insert();
- return new JsonResponse([
- "access_token" => $tokens->getAccessToken(),
- "device_id" => $device->getId(),
- "expires_in_ms" => $tokens->getExpiresIn(),
- "refresh_token" => $tokens->getRefreshToken(),
- "user_id" => $userId,
- ]);
+ return new JsonResponse(new ClientRegisterPostResponse(
+ accessToken: $tokens->getAccessToken(),
+ deviceId: $device->getId(),
+ expiresInMilliseconds: $tokens->getExpiresIn(),
+ refreshToken: $tokens->getRefreshToken(),
+ userId: $userId,
+ ));
}
}