public function rules(): array 	{ 		return MediaStorage::mergeValidationRules([ 			'name' => ['required', 'string', 'max:50'], 			'name_en' => ['required', 'string', 'max:50'], 			'name_it' => ['required', 'string', 'max:50'], 			'name_de' => ['required', 'string', 'max:50'], 			'products' => ['array'], 			'products.*' => ['required', 'uuid', 'distinct', 'exists:products,id'], 			'product_id' => ['required', 'uuid', 'exists:products,id'], 			'ordering' => ['required', 'integer', 'min:0'], 			'ingredients' => ['required', 'string'], 			'ingredients_en' => ['nullable', 'string'], 			'ingredients_de' => ['nullable', 'string'], 			'ingredients_it' => ['nullable', 'string'], 			'preparation_description' => ['required', 'string', 'max:500'], 			'preparation_description_en' => ['nullable', 'string', 'max:500'], 			'preparation_description_it' => ['nullable', 'string', 'max:500'], 			'preparation_description_de' => ['nullable', 'string', 'max:500'], 			'image' => ['image', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 			'pdf_hr' => ['file', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 			'pdf_en' => ['file', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 			'pdf_de' => ['file', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 			'pdf_it' => ['file', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 		]); 	}