FrontendServiceProvider   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 6

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 6
dl 0
loc 20
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A boot() 0 10 1
A register() 0 6 1
1
<?php
2
3
namespace Oscer\Cms\Frontend;
4
5
use Illuminate\Support\ServiceProvider;
6
use Illuminate\View\Compilers\BladeCompiler;
7
use Illuminate\View\Factory;
8
use Oscer\Cms\Frontend\Contracts\Theme;
9
use Oscer\Cms\Frontend\View\Components\MenuBladeComponent;
10
use Oscer\Cms\Frontend\View\Composers\ThemeViewComposer;
11
12
class FrontendServiceProvider extends ServiceProvider
13
{
14
    public function boot(BladeCompiler $blade, Factory $view, Theme $theme)
15
    {
16
        $view->composer([
17
            $theme->getPostShowTemplate(),
18
            $theme->getPageTemplate(),
19
            $theme->getPostIndexTemplate(),
20
        ], ThemeViewComposer::class);
21
22
        $blade->component(MenuBladeComponent::class, 'menu');
23
    }
24
25
    public function register()
26
    {
27
        $this->app->singleton(Theme::class, function () {
28
            return new DefaultTheme();
29
        });
30
    }
31
}
32