Spaces:
Sleeping
Sleeping
| """gr.Api() component.""" | |
| from __future__ import annotations | |
| from typing import Any | |
| from gradio.components.base import Component | |
| class Api(Component): | |
| """ | |
| A generic component that holds any value. Used for generating APIs with no actual frontend component. | |
| """ | |
| EVENTS = [] | |
| def __init__( | |
| self, | |
| value: Any, | |
| _api_info: dict[str, str], | |
| label: str = "API", | |
| ): | |
| """ | |
| Parameters: | |
| value: default value. | |
| """ | |
| self._api_info = _api_info | |
| super().__init__(value=value, label=label) | |
| def preprocess(self, payload: Any) -> Any: | |
| return payload | |
| def postprocess(self, value: Any) -> Any: | |
| return value | |
| def api_info(self) -> dict[str, str]: | |
| return self._api_info | |
| def example_payload(self) -> Any: | |
| return self.value if self.value is not None else "..." | |
| def example_value(self) -> Any: | |
| return self.value if self.value is not None else "..." | |
| # def get_block_name(self) -> str: | |
| # return "state" # so that it does not render in the frontend, just like state | |