'sometimes|string|max:255', 'description' => 'sometimes|nullable|string', 'category_id' => 'sometimes|nullable|integer|exists:categories,id', 'price' => 'sometimes|nullable|numeric|min:0', 'associate_price' => 'sometimes|nullable|numeric|min:0', 'supplier_price' => 'sometimes|nullable|numeric|min:0', 'size_s' => 'sometimes|boolean', 'stock_s' => 'sometimes|integer|min:0', 'size_m' => 'sometimes|boolean', 'stock_m' => 'sometimes|integer|min:0', 'size_l' => 'sometimes|boolean', 'stock_l' => 'sometimes|integer|min:0', 'size_xl' => 'sometimes|boolean', 'stock_xl' => 'sometimes|integer|min:0', 'status' => ['sometimes', Rule::enum(StoreItemStatusEnum::class)], ]; if ($this->isMethod('post')) { $rules['name'] = 'required|string|max:255'; } return $rules; } }