@php /** @var \Illuminate\Support\Collection $permissions */ /** @var \Illuminate\Support\Collection|array $selectedIds */ $selected = collect(old('permission_ids', $selectedIds ?? []))->map(fn ($id) => (int) $id); $allIds = $permissions->flatten(1)->pluck('id')->map(fn ($id) => (int) $id)->values(); $presetPayload = collect($presets ?? [])->mapWithKeys(function ($preset, $key) use ($permissions) { $ids = $permissions->flatten(1) ->whereIn('slug', $preset['slugs'] ?? []) ->pluck('id') ->values() ->all(); return [$key => $ids]; }); @endphp

Permissions

Grant access by capability. Nav items and routes check these slugs.

@if(!empty($presets))
@foreach($presets as $key => $preset) @endforeach
@endif
@foreach($permissions as $group => $items)

{{ str_replace(['_', '-'], ' ', $group) }}

{{ $items->count() }} capabilities

@foreach($items as $permission) @endforeach
@endforeach
@push('scripts') @endpush