group(function () { Route::get('/', function () { return Inertia::render('Dashboard'); })->name('dashboard'); Route::prefix('/superuser')->name('superuser.')->group(function () { Route::resource('permission', App\Http\Controllers\Superuser\PermissionController::class)->only([ 'index', 'store', 'update', 'destroy', ])->middleware(['permission:read permission']); Route::resource('role', App\Http\Controllers\Superuser\RoleController::class)->only([ 'index', 'store', 'update', 'destroy', ])->middleware(['permission:read role']); Route::patch('/role/{role}/detach/{permission}', [App\Http\Controllers\Superuser\RoleController::class, 'detach'])->name('role.detach')->middleware(['permission:update role']); Route::resource('user', App\Http\Controllers\Superuser\UserController::class)->only([ 'index', 'store', 'update', 'destroy', ])->middleware(['permission:read user']); Route::prefix('/user/{user}')->name('user.')->controller(App\Http\Controllers\Superuser\UserController::class)->middleware(['permission:update user'])->group(function () { Route::patch('/role/{role}/detach', 'detachRole')->name('role.detach'); Route::patch('/permission/{permission}/detach', 'detachPermission')->name('permission.detach'); }); Route::patch('/menu/save', [App\Http\Controllers\Superuser\MenuController::class, 'save'])->name('menu.save')->middleware(['permission:update menu']); Route::resource('menu', App\Http\Controllers\Superuser\MenuController::class)->only([ 'index', 'store', 'update', 'destroy', ])->middleware(['permission:read menu']); Route::get('/activity/login', [App\Http\Controllers\ActivityController::class, 'login'])->name('activity.login'); }); });