*/ public function rules(): array { $event = $this->route('event'); return [ 'assignment_ids' => ['required', 'array', 'min:1', 'max:100'], 'assignment_ids.*' => [ 'required', 'ulid', Rule::exists('shift_assignments', 'id')->where(function ($query) use ($event) { $query->whereIn('shift_id', function ($q) use ($event) { $q->select('id')->from('shifts') ->whereIn('festival_section_id', function ($q2) use ($event) { $q2->select('id')->from('festival_sections') ->where('event_id', $event->id); }); }); }), ], ]; } }