allow vendord
All checks were successful
Build, Push and Deploy / build-and-push (push) Successful in 3m3s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 16s
Build, Push and Deploy / deploy-staging (push) Successful in 32s
Build, Push and Deploy / deploy-production (push) Has been skipped
Build, Push and Deploy / cleanup (push) Successful in 1s

This commit is contained in:
2026-03-30 14:54:57 +07:00
parent 66aed7c4e8
commit b5e3a778ce
21316 changed files with 2777892 additions and 13 deletions

View File

@@ -0,0 +1,64 @@
<?php
declare(strict_types=1);
namespace Kreait\Firebase\Auth;
use Beste\Json;
use Psr\Http\Message\ResponseInterface;
use function count;
use function is_countable;
final class DeleteUsersResult
{
/**
* @param list<array{
* index: int,
* localId: string,
* message: string
* }> $rawErrors
*/
private function __construct(
private readonly int $successCount,
private readonly int $failureCount,
private readonly array $rawErrors,
) {
}
/**
* @internal
*/
public static function fromRequestAndResponse(DeleteUsersRequest $request, ResponseInterface $response): self
{
$data = Json::decode((string) $response->getBody(), true);
$errors = $data['errors'] ?? [];
$failureCount = is_countable($errors) ? count($errors) : 0;
$successCount = count($request->uids()) - $failureCount;
return new self($successCount, $failureCount, $errors);
}
public function failureCount(): int
{
return $this->failureCount;
}
public function successCount(): int
{
return $this->successCount;
}
/**
* @return list<array{
* index: int,
* localId: string,
* message: string
* }>
*/
public function rawErrors(): array
{
return $this->rawErrors;
}
}