16 lines
367 B
Python
16 lines
367 B
Python
import json
|
|
from typing import Any
|
|
|
|
from src.formatters.base import BaseFormatter
|
|
|
|
|
|
class JSONFormatter(BaseFormatter):
|
|
"""JSON output formatter."""
|
|
|
|
@staticmethod
|
|
def format(data: Any) -> str:
|
|
"""Format data as JSON."""
|
|
if hasattr(data, "to_dict"):
|
|
data = data.to_dict()
|
|
return json.dumps(data, indent=2, default=str)
|