latest()->get())->response(); } public function store(StoreProductRequest $request): JsonResponse { $validated = $request->validated(); $props = $validated['props'] ?? []; unset($validated['props']); $product = Product::create($validated); $product->syncPropValues($props); return ProductResource::make($product)->response()->setStatusCode(201); } public function show(Product $producto): ProductResource { return ProductResource::make($producto); } public function update(UpdateProductRequest $request, Product $producto): ProductResource { $validated = $request->validated(); $props = $validated['props'] ?? []; unset($validated['props']); $producto->update($validated); $producto->syncPropValues($props); return ProductResource::make($producto); } public function destroy(Product $producto): Response { $producto->delete(); return response()->noContent(); } }