json(['exists' => false]); } return response()->json(['exists' => true, 'tracker' => $tracker]); } public function store(Request $request): JsonResponse { $validated = $request->validate([ 'label' => 'sometimes|string|max:255', 'unit' => 'sometimes|string|max:50', ]); if (Tracker::current()) { return response()->json(['error' => 'Tracker already exists.'], 409); } $tracker = Tracker::create([ 'label' => $validated['label'] ?? 'Counter', 'unit' => $validated['unit'] ?? 'units', ]); return response()->json($tracker, 201); } public function update(Request $request): JsonResponse { $validated = $request->validate([ 'label' => 'sometimes|string|max:255', 'unit' => 'sometimes|string|max:50', ]); $tracker = Tracker::current(); if (! $tracker) { return response()->json(['error' => 'No counter found.'], 404); } $tracker->update($validated); return response()->json($tracker); } }