]> BookStack Code Mirror - bookstack/blobdiff - app/Providers/CustomFacadeProvider.php
Extend /users API endpoint
[bookstack] / app / Providers / CustomFacadeProvider.php
index 9b290039ceb34abee8b551c0144824ae3a9c37e7..f203f0fda592f5e27e7099b851395207bf8de71b 100644 (file)
@@ -2,11 +2,12 @@
 
 namespace BookStack\Providers;
 
-use BookStack\Services\ImageService;
-use BookStack\Services\ViewService;
+use BookStack\Actions\ActivityService;
+use BookStack\Actions\ViewService;
+use BookStack\Auth\Permissions\PermissionService;
+use BookStack\Theming\ThemeService;
+use BookStack\Uploads\ImageService;
 use Illuminate\Support\ServiceProvider;
-use BookStack\Services\ActivityService;
-use BookStack\Services\SettingService;
 
 class CustomFacadeProvider extends ServiceProvider
 {
@@ -27,33 +28,24 @@ class CustomFacadeProvider extends ServiceProvider
      */
     public function register()
     {
-        $this->app->bind('activity', function() {
-            return new ActivityService(
-                $this->app->make('BookStack\Activity'),
-                $this->app->make('BookStack\Services\RestrictionService')
-            );
+        $this->app->singleton('activity', function () {
+            return $this->app->make(ActivityService::class);
         });
 
-        $this->app->bind('views', function() {
-            return new ViewService(
-                $this->app->make('BookStack\View'),
-                $this->app->make('BookStack\Services\RestrictionService')
-            );
+        $this->app->singleton('views', function () {
+            return $this->app->make(ViewService::class);
         });
 
-        $this->app->bind('setting', function() {
-            return new SettingService(
-                $this->app->make('BookStack\Setting'),
-                $this->app->make('Illuminate\Contracts\Cache\Repository')
-            );
+        $this->app->singleton('images', function () {
+            return $this->app->make(ImageService::class);
         });
 
-        $this->app->bind('images', function() {
-            return new ImageService(
-                $this->app->make('Intervention\Image\ImageManager'),
-                $this->app->make('Illuminate\Contracts\Filesystem\Factory'),
-                $this->app->make('Illuminate\Contracts\Cache\Repository')
-            );
+        $this->app->singleton('permissions', function () {
+            return $this->app->make(PermissionService::class);
+        });
+
+        $this->app->singleton('theme', function () {
+            return $this->app->make(ThemeService::class);
         });
     }
 }