chore: update staging branch with current changes

This commit is contained in:
2025-11-02 00:05:26 +01:00
parent 1f2ab358f9
commit 2defdf2baf
25 changed files with 1205 additions and 88 deletions

View File

@@ -8,6 +8,7 @@ use App\Framework\Auth\RouteAuthorizationService;
use App\Framework\Config\TypedConfiguration;
use App\Framework\DI\Container;
use App\Framework\Http\HttpMiddleware;
use App\Framework\Http\HttpRequest;
use App\Framework\Http\MiddlewareContext;
use App\Framework\Http\MiddlewarePriority;
use App\Framework\Http\MiddlewarePriorityAttribute;
@@ -27,6 +28,7 @@ use App\Framework\Router\Result\ViewResult;
use App\Framework\Router\RouteContext;
use App\Framework\Router\RouteDispatcher;
use App\Framework\Router\Router;
use App\Framework\Router\ValueObjects\RouteParameters;
#[MiddlewarePriorityAttribute(MiddlewarePriority::ROUTING)]
final readonly class RoutingMiddleware implements HttpMiddleware
@@ -54,7 +56,7 @@ final readonly class RoutingMiddleware implements HttpMiddleware
*/
public function __invoke(MiddlewareContext $context, Next $next, RequestStateManager $stateManager): MiddlewareContext
{
error_log("DEBUG RoutingMiddleware: __invoke() called - Path: " . $context->request->path);
#error_log("DEBUG RoutingMiddleware: __invoke() called - Path: " . $context->request->path);
$request = $context->request;
@@ -98,7 +100,7 @@ final readonly class RoutingMiddleware implements HttpMiddleware
$route = $routeContext->match->route;
if ($route instanceof \App\Framework\Core\DynamicRoute && ! empty($route->paramValues)) {
error_log("DEBUG: Route param values extracted: " . json_encode($route->paramValues));
$request = new \App\Framework\Http\HttpRequest(
$request = new HttpRequest(
method: $request->method,
headers: $request->headers,
body: $request->body,
@@ -109,13 +111,13 @@ final readonly class RoutingMiddleware implements HttpMiddleware
server: $request->server,
id: $request->id,
parsedBody: $request->parsedBody,
routeParameters: \App\Framework\Router\ValueObjects\RouteParameters::fromArray($route->paramValues)
routeParameters: RouteParameters::fromArray($route->paramValues)
);
$context = new MiddlewareContext($request, $context->response);
// Update request in container so dispatcher gets the updated request
$this->container->instance(Request::class, $request);
$this->container->instance(\App\Framework\Http\HttpRequest::class, $request);
$this->container->instance(HttpRequest::class, $request);
}
// Perform route authorization checks