From c135fcf9041c604b32827a1cb027010bca5915ab Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Thu, 14 Aug 2025 14:37:56 +0200 Subject: POST login possible --- src/Errors/ErrorCode.php | 47 +++++++++++++++++++++++++++++++++++++++++++ src/Errors/ErrorResponse.php | 30 +++++++++++++++++++++++++++ src/Errors/Exception.php | 21 +++++++++++++++++++ src/Errors/RateLimitError.php | 20 ++++++++++++++++++ src/Errors/UnknownError.php | 16 +++++++++++++++ 5 files changed, 134 insertions(+) create mode 100644 src/Errors/ErrorCode.php create mode 100644 src/Errors/ErrorResponse.php create mode 100644 src/Errors/Exception.php create mode 100644 src/Errors/RateLimitError.php create mode 100644 src/Errors/UnknownError.php (limited to 'src/Errors') diff --git a/src/Errors/ErrorCode.php b/src/Errors/ErrorCode.php new file mode 100644 index 0000000..b59f0a1 --- /dev/null +++ b/src/Errors/ErrorCode.php @@ -0,0 +1,47 @@ + $code, + "error" => $message, + ], + $httpCode + ); + } + + public static function fromException(Exception $exception): self + { + $self = new self($exception->getErrorCode(), $exception->getMessage(), $exception->getCode()); + + $self->setData( + json_decode($self->data, true) + $exception->getAdditionalData() + ); + + return $self; + } +} diff --git a/src/Errors/Exception.php b/src/Errors/Exception.php new file mode 100644 index 0000000..ccb124e --- /dev/null +++ b/src/Errors/Exception.php @@ -0,0 +1,21 @@ +errorCode; + } + + /** + * @return void + */ + abstract public function getAdditionalData(): array; +} diff --git a/src/Errors/RateLimitError.php b/src/Errors/RateLimitError.php new file mode 100644 index 0000000..d84f66a --- /dev/null +++ b/src/Errors/RateLimitError.php @@ -0,0 +1,20 @@ + $this->retryAfter, + ]; + } +} diff --git a/src/Errors/UnknownError.php b/src/Errors/UnknownError.php new file mode 100644 index 0000000..f861597 --- /dev/null +++ b/src/Errors/UnknownError.php @@ -0,0 +1,16 @@ +