public function register()
{
$this->app->singleton('defender', function ($app) {
return new Defender($app, $app['defender.role'], $app['defender.permission']);
});
$this->app->singleton('defender.auth', function ($app) {
return $app['auth'];
});
$this->app->bind('defender.javascript', function ($app) {
return $app['defender']->javascript();
});
$this->app->alias('defender', 'Artesaos\\Defender\\Contracts\\Defender');
$this->app->alias('defender.javascript', 'Artesaos\\Defender\\Contracts\\Javascript');
$this->registerRepositoryInterfaces();
$this->registerBladeExtensions();
$this->loadHelpers();
$this->registerCommands();
}