captchaService->generate(); return response()->json([ 'ok' => true, 'captcha' => $captcha, ]); } public function store(Request $request): JsonResponse { if (app()->runningUnitTests() && $request->header('X-Debug-Request') === '1') { return response()->json([ 'ok' => true, 'debug' => [ 'content_type' => $request->header('Content-Type'), 'content_length' => strlen((string) $request->getContent()), 'request_all' => $request->all(), 'json_all' => $request->json()->all(), 'payload_data' => $this->payloadData(), ], ]); } $validator = Validator::make($request->all(), \App\Http\Requests\Auth\RegisterRequest::ruleset()); if ($validator->fails()) { return response()->json([ 'message' => 'Validation failed.', 'errors' => $validator->errors(), ], 422); } $result = $this->service->register($validator->validated()); if (empty($result['ok'])) { $code = $result['code'] ?? 'registration_failed'; $status = $code === 'pending_activation' || $code === 'email_exists' ? 409 : 422; return response()->json([ 'ok' => false, 'message' => $result['message'] ?? 'Registration failed.', 'code' => $code, ], $status); } return response()->json([ 'ok' => true, 'registration' => new RegisterResource($result), ], 201); } }