|string> */ public function rules(): array { return [ 'application_ids' => 'required|array|min:1|max:100', 'application_ids.*' => 'required|uuid|distinct|exists:membership_applications,id', 'board_meeting_reference' => 'required|string|max:255', 'board_meeting_date' => 'required|date', ]; } /** * @return array */ public function messages(): array { return [ 'application_ids.required' => 'Senarai permohonan diperlukan.', 'application_ids.min' => 'Sekurang-kurangnya satu permohonan diperlukan.', 'application_ids.max' => 'Maksimum 100 permohonan setiap batch.', 'application_ids.*.exists' => 'Salah satu permohonan tidak dijumpai.', 'application_ids.*.distinct' => 'Permohonan duplikat tidak dibenarkan.', 'board_meeting_reference.required' => 'Rujukan mesyuarat lembaga diperlukan.', 'board_meeting_reference.max' => 'Rujukan mesyuarat lembaga tidak boleh melebihi 255 aksara.', 'board_meeting_date.required' => 'Tarikh mesyuarat lembaga diperlukan.', 'board_meeting_date.date' => 'Tarikh mesyuarat lembaga tidak sah.', ]; } }