json([ 'success' => true, 'data' => $data, 'meta' => self::withRequestId($meta), ], $status); } public static function error(string $code, string $message, array $details = [], int $status = 400): JsonResponse { return response()->json([ 'success' => false, 'error' => [ 'code' => $code, 'message' => $message, 'details' => $details, ], 'meta' => self::withRequestId(), ], $status); } private static function withRequestId(array $meta = []): array { $request = app()->bound('request') ? app(Request::class) : null; $requestId = $request?->attributes->get('request_id'); if ($requestId !== null && ! array_key_exists('request_id', $meta)) { $meta['request_id'] = $requestId; } return $meta; } }