capture.py python
18 lines 528 B
Raw
sha256:33412f8ca4d4d6c3b72e9f6a6097ef8395b863f35f7451bf475a3cc0fb98ce9c docs: restore exact original site presentation Human 9 days ago
1 """Capture JSON emitted by CLI commands for HTTP handlers."""
2
3 from __future__ import annotations
4
5 from typing import Any
6
7 from cli.output import OutputContext
8
9
10 class CapturingOutputContext(OutputContext):
11 """Output context that records the last JSON payload instead of printing it."""
12
13 def __init__(self) -> None:
14 super().__init__(json_mode=True, quiet=True)
15 self.json_payload: dict[str, Any] | None = None
16
17 def emit_json(self, payload: dict[str, Any]) -> None:
18 self.json_payload = payload
File History 1 commit
sha256:33412f8ca4d4d6c3b72e9f6a6097ef8395b863f35f7451bf475a3cc0fb98ce9c docs: restore exact original site presentation Human 9 days ago