/** * List out all the permissions of all users. * * @todo Refactor out mapping to a trait. * * @return \Illuminate\Contracts\View\View */ public function index() { $permissions = collect(['*', 'admin.*', 'api.*']); $users = $this->user->all()->map(function ($user) use($permissions) { $user->permissions = collect([]); $permissions->map(function ($permission) use($user) { $user->permissions->push($this->buildPermissibleLookup($user, $permission)); }); return $user; }); return view('gate-admin::permissions.index', compact('users')); }