src/Templates/CRUD/Provider.txt
<?php
namespace Cms\Modules\_camel_casePlural_;
use Illuminate\Routing\Router;
use Illuminate\Contracts\Events\Dispatcher as DispatcherContract;
use Illuminate\Support\Facades\Config;
use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;
class _camel_casePlural_ModuleProvider extends ServiceProvider
{
public function register()
{
// Publishes
$this->publishes([
__DIR__.'/Publishes/app' => base_path('app'),
__DIR__.'/Publishes/routes' => base_path('routes'),
__DIR__.'/Publishes/resources' => base_path('resources'),
]);
// Load events
$this->app->events->listen('eloquent.saved: Cms\Modules\_camel_casePlural_\Models\_camel_case_', 'Cms\Modules\_camel_casePlural_\Models\_camel_case_@afterSaved');
// Load Routes
$this->app->router->group(['middleware' => ['web']], function ($router) {
require __DIR__.'/Routes/web.php';
});
// View namespace
$this->app->view->addNamespace('_lower_casePlural_', __DIR__.'/Views');
// Migrations
$this->loadMigrationsFrom(__DIR__.'/Migrations');
// Configs
$this->app->config->set('cms.modules._lower_casePlural_', include(__DIR__.'/config.php'));
}
}