<?php namespace App\Providers; use Illuminate\Support\ServiceProvider; use App\Repositories\PageRepository; use App\Interfaces\PageRepositoryInterface; use App\Services\SettingsService; use App\Services\AuthService; use App\Services\ContentService; use App\Services\PaginateService; use App\Services\ThemeService; class FipamoServiceProvider extends ServiceProvider { /** * Register services. */ public function register(): void { //services $this->app->bind(SettingsService::class, function ($app) { return new SettingsService(); }); $this->app->bind(AuthService::class, function ($app) { return new AuthService(new SettingsService()); }); $this->app->bind(ContentService::class, function ($app) { return new ContentService(); }); $this->app->bind(ThemeService::class, function ($app) { return new ThemeService(new SettingsService()); }); $this->app->bind(PaginateService::class, function ($app) { return new PaginateService(new ContentService()); }); } /** * Bootstrap services. */ public function boot(): void { $this->app->bind(PageRepositoryInterface::class, PageRepository::class); } }