'sometimes|string|max:255', 'message' => 'sometimes|string', 'recipient' => ['sometimes', Rule::enum(NotificationRecipientEnum::class)], 'recipient_position_id' => 'sometimes|nullable|integer|exists:positions,id', 'recipient_sector_id' => 'sometimes|nullable|integer|exists:sectors,id', 'image' => 'sometimes|nullable|file|mimes:jpg,jpeg,png,webp|max:5120', ]; if ($this->isMethod('post')) { $rules['title'] = 'required|string|max:255'; $rules['message'] = 'required|string'; $rules['recipient'] = ['required', Rule::enum(NotificationRecipientEnum::class)]; } return $rules; } }