class Lutaml::Hal::Client

def debug_api_log(response, url)

def debug_api_log(response, url)
  if defined?(Rainbow)
    puts Rainbow("\n===== Lutaml::Hal DEBUG: HAL API REQUEST =====").blue
  else
    puts "\n===== Lutaml::Hal DEBUG: HAL API REQUEST ====="
  end
  puts "URL: #{url}"
  puts "Status: #{response.status}"
  # Format headers as JSON
  puts "\nHeaders:"
  headers_hash = response.headers.to_h
  puts JSON.pretty_generate(headers_hash)
  puts "\nResponse body:"
  if response.body.is_a?(Hash) || response.body.is_a?(Array)
    puts JSON.pretty_generate(response.body)
  else
    puts response.body.inspect
  end
  if defined?(Rainbow)
    puts Rainbow("===== END DEBUG OUTPUT =====\n").blue
  else
    puts "===== END DEBUG OUTPUT =====\n"
  end
end