aliasMiddleware('admin', BouncerMiddleware::class); $this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations'); $this->createACL(); } /** * This method fires an event for acl creation, any package can add their acl item by listening to the admin.acl.build event * * @return void */ public function createACL() { Event::listen('admin.acl.create', function () { return Tree::create(function ($acl) { Event::fire('admin.acl.build', $acl); }); }); } /** * Register services. * * @return void */ public function register() { $this->registerBouncer(); } /** * Register Bouncer as a singleton. * * @return void */ protected function registerBouncer() { $loader = AliasLoader::getInstance(); $loader->alias('Bouncer', BouncerFacade::class); $this->app->singleton('bouncer', function () { return new Bouncer(); }); } }