mirror of
https://github.com/yiisoft/app.git
synced 2026-02-20 01:21:20 +01:00
Refactor configuration (#371)
This commit is contained in:
committed by
GitHub
parent
84826fb466
commit
920227e636
@@ -7,7 +7,6 @@
|
||||
!/public
|
||||
!/src
|
||||
!autoload.php
|
||||
!configuration.php
|
||||
!yii
|
||||
!composer.json
|
||||
!composer.lock
|
||||
|
||||
@@ -58,7 +58,6 @@
|
||||
"yiisoft/error-handler": "^4.1",
|
||||
"yiisoft/html": "^3.11",
|
||||
"yiisoft/http": "^1.2",
|
||||
"yiisoft/injector": "^1.2",
|
||||
"yiisoft/log": "^2.1.1",
|
||||
"yiisoft/log-target-file": "^3.0",
|
||||
"yiisoft/middleware-dispatcher": "^5.2",
|
||||
@@ -99,7 +98,7 @@
|
||||
}
|
||||
},
|
||||
"extra": {
|
||||
"config-plugin-file": "configuration.php"
|
||||
"config-plugin-file": "config/configuration.php"
|
||||
},
|
||||
"config": {
|
||||
"sort-packages": true,
|
||||
|
||||
@@ -3,21 +3,20 @@
|
||||
declare(strict_types=1);
|
||||
|
||||
use Yiisoft\Config\Config;
|
||||
use Yiisoft\Csrf\CsrfTokenMiddleware;
|
||||
use Yiisoft\DataResponse\Middleware\FormatDataResponse;
|
||||
use Yiisoft\Definitions\DynamicReference;
|
||||
use Yiisoft\Router\RouteCollection;
|
||||
use Yiisoft\Router\RouteCollectionInterface;
|
||||
use Yiisoft\Router\RouteCollectorInterface;
|
||||
use Yiisoft\Router\RouteCollector;
|
||||
|
||||
/** @var Config $config */
|
||||
|
||||
return [
|
||||
RouteCollectionInterface::class => static function (RouteCollectorInterface $collector) use ($config) {
|
||||
$collector
|
||||
->middleware(CsrfTokenMiddleware::class)
|
||||
->middleware(FormatDataResponse::class)
|
||||
->addRoute(...$config->get('routes'));
|
||||
|
||||
return new RouteCollection($collector);
|
||||
},
|
||||
RouteCollectionInterface::class => [
|
||||
'class' => RouteCollection::class,
|
||||
'__construct()' => [
|
||||
'collector' => DynamicReference::to(
|
||||
static fn() => (new RouteCollector())->addRoute(...$config->get('routes')),
|
||||
),
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
@@ -3,10 +3,14 @@
|
||||
declare(strict_types=1);
|
||||
|
||||
use App\Handler\NotFound\NotFoundHandler;
|
||||
use Yiisoft\Csrf\CsrfTokenMiddleware;
|
||||
use Yiisoft\DataResponse\Middleware\FormatDataResponse;
|
||||
use Yiisoft\Definitions\DynamicReference;
|
||||
use Yiisoft\Definitions\Reference;
|
||||
use Yiisoft\Injector\Injector;
|
||||
use Yiisoft\ErrorHandler\Middleware\ErrorCatcher;
|
||||
use Yiisoft\Middleware\Dispatcher\MiddlewareDispatcher;
|
||||
use Yiisoft\Router\Middleware\Router;
|
||||
use Yiisoft\Session\SessionMiddleware;
|
||||
use Yiisoft\Yii\Http\Application;
|
||||
|
||||
/** @var array $params */
|
||||
@@ -14,10 +18,18 @@ use Yiisoft\Yii\Http\Application;
|
||||
return [
|
||||
Application::class => [
|
||||
'__construct()' => [
|
||||
'dispatcher' => DynamicReference::to(static function (Injector $injector) use ($params) {
|
||||
return $injector->make(MiddlewareDispatcher::class)
|
||||
->withMiddlewares($params['middlewares']);
|
||||
}),
|
||||
'dispatcher' => DynamicReference::to([
|
||||
'class' => MiddlewareDispatcher::class,
|
||||
'withMiddlewares()' => [
|
||||
[
|
||||
ErrorCatcher::class,
|
||||
SessionMiddleware::class,
|
||||
CsrfTokenMiddleware::class,
|
||||
FormatDataResponse::class,
|
||||
Router::class,
|
||||
],
|
||||
],
|
||||
]),
|
||||
'fallbackHandler' => Reference::to(NotFoundHandler::class),
|
||||
],
|
||||
],
|
||||
|
||||
@@ -2,14 +2,4 @@
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Yiisoft\ErrorHandler\Middleware\ErrorCatcher;
|
||||
use Yiisoft\Router\Middleware\Router;
|
||||
use Yiisoft\Session\SessionMiddleware;
|
||||
|
||||
return [
|
||||
'middlewares' => [
|
||||
ErrorCatcher::class,
|
||||
SessionMiddleware::class,
|
||||
Router::class,
|
||||
],
|
||||
];
|
||||
return [];
|
||||
|
||||
Reference in New Issue
Block a user