|string> */ public function rules(): array { return [ 'first_name' => [ 'required', 'min:2', 'max:100', 'persian_alpha' ], 'last_name' => [ 'required', 'min:3', 'max:100', 'persian_alpha' ], 'username' => [ 'required', 'alpha_num', 'min:3', 'max:20', 'unique:App\Models\User,username', ], 'national_code' => [ 'required', 'ir_national_id', 'unique:App\Models\User,national_code' ], 'gender' => [ 'required', new Enum(UserGenderStatus::class) ], 'marital_status' => [ 'required', new Enum(UserMaritalStatus::class) ], 'spouse_name' => [ 'nullable', 'string', 'max:256', 'persian_alpha' ], 'email' => [ 'required', 'max:150', 'email', 'unique:App\Models\User' ], 'mobile' => [ 'required', 'unique:App\Models\User', 'ir_mobile:zero' ], 'current_password' => [ 'required', 'current_password', ], 'new_password' => [ 'required', 'min:6', 'confirmed', ], 'province_id' => [ 'nullable', 'exists:provinces, id' ], 'city_id'=>[ 'nullable', 'exists:cities, id' ], 'image' => [ 'nullable', 'image', 'mimes:jpg,png,webp', 'max:800' ] ]; } }