ConfigProvider::__invoke()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 47

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 47
rs 9.1563
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Menu;
4
5
class ConfigProvider
6
{
7
    public function __invoke()
8
    {
9
        return [
10
            'templates' => [
11
                'map'   => [
12
                    'partial/menu-level' => __DIR__.'/../templates/partial/menu-level.phtml',
13
                ],
14
                'paths' => [
15
                    'menu' => [__DIR__.'/../templates/menu'],
16
                ],
17
            ],
18
19
            'dependencies' => [
20
                'factories' => [
21
                    // services
22
                    Service\MenuService::class        => Factory\Service\MenuServiceFactory::class,
23
                    Mapper\MenuMapper::class          => Factory\MapperFactory::class,
24
                    Filter\MenuFilter::class          => Factory\FilterFactory::class,
25
26
                    // controllers
27
                    Controller\IndexController::class => Factory\Controller\IndexControllerFactory::class,
28
                ],
29
            ],
30
31
            'routes' => [
32
                [
33
                    'name'            => 'admin.menu',
34
                    'path'            => '/admin/menu',
35
                    'middleware'      => Controller\IndexController::class,
36
                    'allowed_methods' => ['GET'],
37
                ],
38
                [
39
                    'name'            => 'admin.menu.action',
40
                    'path'            => '/admin/menu/{action}/{id}',
41
                    'middleware'      => Controller\IndexController::class,
42
                    'allowed_methods' => ['GET', 'POST'],
43
                ],
44
            ],
45
46
            'view_helpers' => [
47
                'factories' => [
48
                    'menu'    => View\Helper\MenuItemsFactory::class,
49
                    'menuUrl' => View\Helper\MenuUrlHelperFactory::class,
50
                ],
51
            ],
52
        ];
53
    }
54
}
55